2012-04-17 39 views
-1
<ul class="main-nav"> 
       <li class="menu-item <?php if(is_category('one') || in_category('one')) echo 'current_cat'; ?>"> 
        <a href="/category/one/">one</a> 
       </li> 
       <li class="menu-item <?php if(is_category('two') || in_category('two')) echo 'current_cat'; ?>"> 
        <a href="/category/two/">two</a> 
       </li> 
       <li class="menu-item <?php if(is_category('three') || in_category('three')) echo 'current_cat'; ?>"> 
        <a href="/category/three/">three</a> 
       </li> 
       <li class="menu-item <?php if(is_category('four') || in_category('four')) echo 'current_cat'; ?>"> 
        <a href="/category/four/">four</a> 
       </li> 
       <li class="menu-item <?php if(is_category('five') || in_category('five')) echo 'current_cat'; ?>"> 
        <a href="/category/five/">five</a> 
       </li> 
      </ul> 

的底线是,在主网页(的index.php)上(理论上这不应该发生在事实上)分配的类别,一点点接近检查我意识到主页中的第一篇文章所确定的类别 - 他属于哪个类别。假设在主页面上显示来自“2”类别的最新消息 - 那么索引页面就是“2”类别......问题的症结所在以及如何解决这个问题对我来说并不是很清楚。哪些功能没有考虑到?感谢您的未来答案。选择WordPress的当前类别,意外的行为

我要求原谅英文破碎。

+0

我不明白你问究竟。 – Jack 2012-04-17 07:14:47

回答

1

首先,确保代码不在循环内运行,这可能是关键问题。如果这是连外循环发生的事情,你能避免它在主页上通过修改你的条件是这样被触发:

if(is_category('one') || (in_category('one') and is_single())) 
+0

** alesub **,非常感谢您的帮助 – user1103744 2012-05-13 19:56:04

0

如果我明白你在问什么,你不希望这个代码在主页上触发?

,以确保这只是个人网页后运行把这一切之间:

<?php if(is_single(): ?> 
     <!-- your code--> 
<?php endif; ?> 

is_single
stll我不知道你在问什么。