谁能告诉我一个方法让我的class="被选中;在Wordpress中进行导航


Can anyone suggest a way I can get my class="selected" to work on my navigation in Wordpress?

谁能建议一种方法,我可以让我的class="选定"工作在我的Wordpress导航?

我有一个wordpress导航设置:

如果我在主页上,我的主页类被选中。

如果我想转到第一页,我希望这个类在导航栏中改变,只加载这个类而不加载主页。

我使用:class="selected"来激活翻转效果。

我可以得到这个工作在一个固定的网站,只是不是在wordpress,这里有什么建议吗?

<div class="nav">
  <ul>
  <li class="selected"><a href="#" title="Home">Home</a></li>
  <li><a href="#">One</a></li>
  <li><a href="#">Two</a></li>
  <li><a href="#">Three</a></li>
  <li><a href="#">Four</a></li>
  <li><a href="#">Five</a></li>
  <li><a href="#">Six</a></li>
  </ul>
</div>

我可以在这里使用if语句吗?

   <?php if(is_home() ) {
    //for example load class="selected"
    } else {
    //for example if other page don't load class="selected"
   } ?>

据我所知,您使用的是硬编码导航,而不是WordPress中的wp_nav_menu()

因此,您可以有条件地检查您正在使用的每个页面:

<div class="nav">
  <ul>
  <li<?php echo is_home()? '  class="selected"'; '';?>>
    <a href="#" title="Home">Home</a>
  </li>
  <li<?php echo is_page('Contact')? '  class="selected"'; '';?>>
    <a href="#">Contact page</a>
  </li>
  <li<?php echo is_single('My first Post')? ' class="selected"'; '';?>>
    <a href="#">Myfirst post</a>
  </li>
  </ul>
</div>

你应该充分利用WordPress中的条件标签。

如果你看第一个<li>你会看到<?php echo is_home()? ' class="selected"'; '';?>这个代码被表示为一个三元运算符相当于

if( is_home() ){
  echo ' class="selected"'; #echo class. white space in front so that it does not stick to the "<li"
else{
  echo ''; #do nothing
}
在上面的例子中,我使用了三个函数:

is_home() -如果您在主页

返回true

is_page($arg) -如果您在$arg指定的页面上,则返回true。

is_single($arg) -如果您在$arg指定的post上,则返回true。

您可以选择使用其他条件标记