在WordPress中构造条件语句

时间:2013-03-22 10:23:18

标签: php wordpress code-snippets conditional-statements

我有一段PHP代码,我只希望在我指定的WordPress主页上显示。

我在WordPress网站的其他部分已成功使用条件语句,但是这个问题让我感到困惑。

这是片段:

    <div id="home-post">
    <h1 id="homePost">Latest News</h1>  

    <?php

    $args = array( 'numberposts' => 1 );
    $lastposts = get_posts( $args );
    foreach($lastposts as $post) : setup_postdata($post); ?>

    <h2><a class="homeLink" href="<?php the_permalink(); ?>"><?php the_title(); ?>:</a></h2>

    <?php the_content(); ?>

    <?php endforeach; ?>

    </div>

此代码完美无缺,但出现在所有页面上,而我希望它仅在ID为102的页面上激活。

我猜测条件语句必须是:

    <?php
    if (is_page ( '102' )) {

    ... snippet here ...

    } ?>

然而,当我在整个代码片段中应用这个额外的PHP包装时,它只是破坏了代码片段的语法。

有人可以提出建议吗?我不是最流利的PHP,所以如果这个问题有点令人困惑,很抱歉,但是会有很多帮助。

非常感谢, 马特

2 个答案:

答案 0 :(得分:1)

使用

<?php if(is_home()) : ?>
<?php
  $args = array( 'numberposts' => 1 );
  $lastposts = get_posts( $args );
  foreach($lastposts as $post) : setup_postdata($post); 
?>

<h2><a class="homeLink" href="<?php the_permalink(); ?>"><?php the_title(); ?>:</a></h2>

<?php the_content(); ?>

<?php endforeach; ?>

</div>
<?php endif; ?>

答案 1 :(得分:0)

<?php if(is_page('homepage'): ?>
content here
<?php endif; ?>