我是一个调整主题的wordpress noob,所以我想了解它是如何工作的。我已经在SE上读了大约10篇相关帖子,但还没有读到。我的问题如下:
标题。php似乎生成菜单,
<?php wp_nav_menu(array(\'theme_location\' => \'nav-menu\',\'container\' => \'div\', \'container_class\' => \'menu\' )); ?>
在wp admin中,我创建了一个菜单
“博客|关于|联系人”
它指向根和两页:“/”|“关于”|“联系”(非常标准)。现在,我想根据“活动”页面设置菜单样式。对于“关于”和“联系”来说,这似乎很容易。为每个菜单项生成的类包括current-menu-item. 然而,在主页上,我的“博客”菜单“li”只会显示课程
menu-item menu-item-type-custom menu-item-object-custom menu-item-47
因此不能相应地设置样式。我读过一些关于过滤、使用函数等的东西。。。但我不太明白。如果我在函数中定义函数。php,之后我将在哪里使用它。
非常感谢您的任何见解和帮助,
SO网友:Sufiyan Ghori
使用此代码可以轻松生成菜单,
<ul>
<li <?php if(is_home()) { ?> class="active" <?php } ?>><a href="<?php echo get_option(\'home\'); ?>/">Home</a></li>
<?php wp_list_pages(\'depth=1&sort_column=menu_order&title_li=\' ); ?>
</ul>
用于创建已发布页面列表的函数wp\\u list\\u pages(),会自动将类current\\u page\\u项添加到与正在查看的页面对应的列表项中。
您只需添加。当前的\\u page\\u项目类与您的样式匹配。css文件:
/* Style the list element */
li.current_page_item{
background:#eee;
color:#777;
}
/* Style the link element */
li.current_page_item a{
text-decoration:underline;
}
SO网友:markratledge
它不是很漂亮(可以通过使用php动态拾取菜单项ID来改进),但您可以这样做:
<?php if (is_front_page()) echo
\'<style type="text/css" title="text/css">.menu-item-14 a
{your current_page_item style here}</style>\'
;?>
更改。menu\\u item-14设置为当前主页的类,并将当前的\\u menu\\u项也更改为CSS。
将该声明放在
<link rel="stylesheet" type="text/css" media="all" href="<?php bloginfo( \'stylesheet_url\' ); ?>" />
在标题中。php,以便在主样式表之后加载CSS。