if / else在php和echo html代码中

时间:2016-02-11 09:47:31

标签: php html wordpress if-statement echo

在下面的代码中,我会检查如果我在网站的主页上,那么我会将列向右移动偏移2,对于所有其他页面我不应该&# 39; t有任何偏移。我试图实现这一点,但我收到了错误。如果你能给我一个提示,那就太好了。谢谢!

    <?php if (is_front_page() ) {
        echo '<div class="col-md-8 la-content-inside col-md-offset-2">';
        while ( have_posts() ) { the_post(); }
    } else {
        echo '<div class="col-md-8 la-content-inside">';
        while ( have_posts() ) { the_post(); }
    }
    ?>

                <?php get_template_part( 'content', 'page' ); ?>

            <?php endwhile; // end of the loop. ?>
        </div>

3 个答案:

答案 0 :(得分:0)

让我们开始清理您的代码。我在几行上编写代码,因此对于提出问题的人来说,这是可以理解的。 (是的,你可以写得更有效率)

<?php
echo '<div class="col-md-8 la-content-inside';
// frontpage exception
if(is_front_page()) {
     echo ' col-md-offset-2';
}
echo '>';

while(have_posts()) {
    the_post();
    get_template_part( 'content', 'page' );
}
echo '</div>';
?>

如果这会产生错误。请在此答案中复制粘贴错误作为评论。

答案 1 :(得分:0)

在您的代码中,您正在while&amp;中打开if块。 else阻止&amp;在条件阻止后关闭endwhile

尝试使用

<?php  
if (is_front_page() ) {
    echo '<div class="col-md-8 la-content-inside col-md-offset-2">';
    while (have_posts()) : the_post(); 
        get_template_part( 'content', 'page' );
    endwhile; // end of the loop.
}else {
    echo '<div class="col-md-8 la-content-inside">';
    while (have_posts()) : the_post();
        get_template_part( 'content', 'page' );
    endwhile; // end of the loop. 
}
?>

答案 2 :(得分:0)

尝试下面的短代码..会为你..

<div class="col-md-8 la-content-inside <?php echo (is_home() ? 'col-md-offset-2' : '' );?> ">
 <?php while (have_posts()) : the_post(); 
      get_template_part( 'content', 'page' );
   endwhile; // end of the loop.
 ?>
 </div>

您需要使用is_home()功能..作为首页。