此代码显示在页面 id 2 的每个页面内容上。如何编辑此代码,以仅在主页上显示内容?
<?php
$recent = new WP_Query("page_id=2");
while ($recent->have_posts()):
$recent->the_post();
?>
<h1><?php the_title();?></h1>
<?php endwhile; ?>
此代码显示在页面 id 2 的每个页面内容上。如何编辑此代码,以仅在主页上显示内容?
<?php
$recent = new WP_Query("page_id=2");
while ($recent->have_posts()):
$recent->the_post();
?>
<h1><?php the_title();?></h1>
<?php endwhile; ?>
由于主页也可以是静态首页,在这种情况下 is_home() 失败所以..
应该使用is_home()和is_front_page()的组合。
<?php
if(is_home() || is_front_page()){
$recent = new WP_Query("page_id=2");
while($recent->have_posts()) : $recent->the_post(); ?>
<h1><?php the_title(); ?></h1>
<?php endwhile; ?>
<?php } else{
while(have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<?php endwhile;
}?>
试试看
<?php
$home_page_post_id = 2;
$home_page_post = get_post( $home_page_post_id, ARRAY_A );
$content_home = $home_page_post['post_content'];
echo $content_home;
?>
查看 get_post 函数以了解有关其工作原理的更多详细信息:http: //codex.wordpress.org/Function_Reference/get_post
你可以这样使用:
<?php
if(is_home()){
$recent = new WP_Query("page_id=2");
while($recent->have_posts()) : $recent->the_post(); ?>
<h1><?php the_title(); ?></h1>
<?php endwhile; ?>
<?php } else{
while(have_posts()) : the_post(); ?>
<h1><?php the_title(); ?></h1>
<?php endwhile;
}?>