PHP IF声明与三&&在Wordpress中无效的条件

时间:2010-12-09 18:44:44

标签: php wordpress conditional-statements multiple-conditions

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

它实际上是一个更大的ifif,但我试图单独尝试增加使其工作的机会。更重要的是这一个,除了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>";
?>

5 个答案:

答案 0 :(得分:3)

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

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

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

答案 1 :(得分:2)

你错过了一组外围的括号:

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

您可以省略围绕功能名称的每个对,但要使其看起来更干净:

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

答案 2 :(得分:1)

它应该是这样的:

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

每个表达式周围不需要一对括号,但是你需要包装你的条件。

答案 3 :(得分:0)

我认为你需要围绕所有三个条件的括号括号:

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

答案 4 :(得分:0)

<?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>";
}
?>

缺少括号来对条件进行分组......