繁体   English   中英

如果满足条件,如何向菜单项添加ID

[英]How do I add an id to a menu item if a condition is met

如果满足条件,我需要向Li添加一个ID。 我以前做过这样的事情:

if ($school == $array[1])
{ 
echo " id=\"current\"";
}

如果$ school等于$ array [1],它基本上应该添加id“ current”,但是我不确定该怎么做,因为它是php里面的php里面的php,而且我对PHP没有太多的经验,所以我有点丢失。

这是我要添加的位置:

   <?php
    if($array[1] != "")  { echo '<li class="menu-item menu-item-type-post_type menu-item-10">' .
    '<a href="http://chusmix.com/?s=' . $city . '++++' . str_replace(" ", "+", $array[1]) . '">' .
    '' . $array[1] . '' .
    '</a>' .
    '</li>';
    }
    ?>

感谢您的帮助,信息等

您的代码采用一种不错的方式:

<?php if($array[1] != ""): ?>
    <li id="<?php echo ($school == $array[1] ? 'current' : '' ); ?>" class="menu-item menu-item-type-post_type menu-item-10">
        <a href="http://chusmix.com/?s=<?php echo $city . '++++' . str_replace(' ', '+', $array[1]); ?>">
            <?php echo $array[1]; ?>
        </a>
    </li>
<?php endif; ?>

但是我会减少类的数量(或者至少减少其长度,如果menu-item-type-post_type不是自动生成的, menu-item-type-post_type似乎是不切实际的),然后添加current类而不是ID。

此代码对控制结构三元运算符使用备用语法

ps:我不确定100%如何处理空ID,因为我认为它只是被忽略了。 如果导致问题,您也可以

<li <?php echo ($school == $array[1] ? 'id="current"' : '' ); ?> ...

替代语法是您的朋友。 它可以帮助您最小化回声。

<?php if($array[1] != ""): ?>
    <li class="menu-item menu-item-type-post_type menu-item-10"<?php if ($school == $array[1]): ?>id="current"<?php endif; ?>>
    <a href="http://chusmix.com/?s=<?php echo $city . '++++' . str_replace(" ", "+", $array[1]); ?>"><?php echo $array[1]; ?></a>
    </li>
<?php endif; ?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM