For some reason the following code is displaying both types of posts instead of just the specified post using query_posts
. I am not quite sure what is going on, but it appears that the loop is ignoring my condition of is_page('news')
or is_page('othernews').
Does anyone have an idea why this might be the case?
<?php
if (is_page('news')) :
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts('news');
endif;
if (is_page('othernews')) :
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts('my-other-news'); ?>
endif;
while (have_posts()) : the_post();
get_template_part( 'part-post');
endwhile;
?>
Try this whether this works for you,
The last else condition is to handle if none of the first 2 condition satisfies. So you can remove it if you no need that.
Hope this helps you.
Your conditional statement is incorrect. If you need one or the other, you need to do something like this
And PLEASE PLEASE PLEASE, don’t use
query_posts
, it is evil. Rather useWP_Query
If you simplify the code like above, does that help? Seems to be a lot of unnecessary php tags there.
If You need to query a particular page post alone means you need to specify post id in the query and the post type name
Or if You need to query all post under a post type use this