在WordPress中的if else语句中嵌套一个while循环
我有一个while循环获取index.php
这是我的帖子页面上某个类别的所有页面。在WordPress中的if else语句中嵌套一个while循环
不过,我想改变下面的代码,所以如果它是主页,它不运行这个循环,但显示一些文本。
此代码回路工程:
<?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; ?>
你需要用你的查询和环在你的is_home()
条件下
if (!is_home()) { // This is not the home page
// Add your query and loop here
$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;
} else { // This is the homepage
echo 'Some text here';
}
此代码工作,谢谢! – And
我的荣幸,很高兴帮助。请享用;-) –
<?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'
));
if ($loop->have_posts()) : while ($loop->have_posts()) : $the_query->the_post();
if (is_home()) {
echo 'Welcome!';
}
else{?>
<h2><a href="<?php echo get_permalink(); ?>"><?php the_title();
}
<?php endwhile; endif; ?>
嗨WisdmLabs,谢谢你的回复。不幸的是,这没有奏效。主页或内部页面上都没有显示。 – And
if(!homepage){//} else {text you want?} – izk
我试过这样做,但是当我这样做时,它只能在主页上工作,而不是在实际页面上。请参阅我尝试的其他代码。 – And
你在哪里初始化$ the_query? – WisdmLabs