【问题标题】:PHP IF Statement with three && conditions not working in Wordpress具有三个 && 条件的 PHP IF 语句在 Wordpress 中不起作用
【发布时间】:2011-05-23 01:26:46
【问题描述】:
<?php
if (!is_front_page()) && (!is_single()) && (!is_page())
   echo "<a href='http://chusmix.com/'>Cambiar Imagen</a>";
?>

这实际上是一个更大的 if 的 elseif,但我试图单独做,以增加我让它工作的机会。更大的声明是这个,除了 elseif 之外的所有工作:

<?php
$res= get_search_query();
$image_path = 'Imagenes/grupos/' . substr(get_search_query(), 1) . '.jpg';

if (file_exists($image_path)) {    
    echo "<img src='http://chusmix.com/Imagenes/grupos/".substr(get_search_query(), 1). ".jpg'>";
    echo "<a style='padding-left:180px;' href='http://chusmix.com/'>Cambiar Imagen</a>";
    echo "<hr style='border: 0;'>";
}
elseif (!is_front_page()) && (!is_single()) && (!is_page())
   echo "<a href='http://chusmix.com/'>Cambiar Imagen</a>";
?>

【问题讨论】:

  • 我喜欢有人发布一个“简单”的问题,然后每个人都跳进去立即回答,而你最终得到了 15 个相同的答案。

标签: php wordpress conditional-statements multiple-conditions


【解决方案1】:

您缺少一组外部括号:

elseif ((!is_front_page()) && (!is_single()) && (!is_page()))

您可以省略围绕函数名称的每一对,但使其看起来更清晰:

elseif (!is_front_page() && !is_single() && !is_page())

【讨论】:

    【解决方案2】:

    你需要在整个 if 语句周围有一对匹配的括号。

    所以要么在开头和结尾添加一个额外的括号,要么像这样删除一些不需要的括号:

    <?php
    if (!is_front_page() && !is_single() && !is_page())
       echo "<a href='http://chusmix.com/'>Cambiar Imagen</a>";
    ?>
    

    【讨论】:

      【解决方案3】:

      应该是这样的:

      if (!is_front_page() && !is_single() && !is_page())
         echo "<a href='http://chusmix.com/'>Cambiar Imagen</a>";
      

      您不需要在每个表达式周围加上括号,但您需要将条件包装起来。

      【讨论】:

        【解决方案4】:

        我认为您需要围绕所有三个条件使用一组括号:

        if ((!is_front_page()) && (!is_single()) && (!is_page()))
        

        【讨论】:

          【解决方案5】:
          <?php
          $res= get_search_query();
          $image_path = 'Imagenes/grupos/' . substr(get_search_query(), 1) . '.jpg';
          
          if (file_exists($image_path)) {    
              echo "<img src='http://chusmix.com/Imagenes/grupos/".substr(get_search_query(), 1). ".jpg'>";
              echo "<a style='padding-left:180px;' href='http://chusmix.com/'>Cambiar Imagen</a>";
              echo "<hr style='border: 0;'>";
          }
          elseif ((!is_front_page()) && (!is_single()) && (!is_page())) {
             echo "<a href='http://chusmix.com/'>Cambiar Imagen</a>";
          }
          ?>
          

          缺少括号来组合条件连词...

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-05-27
            • 1970-01-01
            相关资源
            最近更新 更多