У меня есть цикл while, который получает все страницы определенной категории на index.php
, которая является моей страницей сообщений.Нест цикл while в выражении if else в WordPress
Однако, я хочу, чтобы изменить код, приведенный ниже, так что если это домашнюю, он не работает этот цикл, но отображает некоторые текстовые.
Этот код цикл работ:
<?php
$category = get_category(get_query_var('cat'));
$cat_id = $category->cat_ID;
$loop = new WP_Query(array(
'post_type' => 'story',
'cat' => $cat_id,
'posts_per_page' => 10,
'orderby' => 'date',
'order' => 'DESC'
));
while ($loop->have_posts()) : $loop->the_post();
?> <a href="<?php echo the_permalink(); ?>"><?php the_title();?></a>
endwhile;
?>
В этом коде ничего не нагрузки на любой странице, кроме главной страницы:
<?php
$category = get_category(get_query_var('cat'));
$cat_id = $category->cat_ID;
$loop = array(
'post_type' => 'story',
'cat' => $cat_id,
'posts_per_page' => 10,
'orderby' => 'date',
'order' => 'DESC' ,
'paged'=>$paged
);
if (is_home()) {
echo 'Welcome!';
} else if ($the_query->have_posts()) : while ($the_query->have_posts()) : $the_query->the_post(); ?>
<h2><a href="<?php echo get_permalink(); ?>"><?php the_title(); ?></a></h2>
<?php endwhile; endif; ?>
if (! Homepage) {//} else {текст, который вы хотите?} – izk
Я пытался это сделать, но когда я это делаю, он работает только на главной странице, а не на реальных страницах. См. Другой код, который я пробовал. – And
где вы инициализируете $ the_query ???? – WisdmLabs