父项的侧栏当前菜单项

时间:2014-12-08 作者:user3615681

我在网站的侧边栏中有一个菜单。单击菜单的子元素时,li标记会将当前的\\u page\\u项目类添加到li标记中。

当您在页面上着陆时,它是父页面,我希望下面的“Overview”li添加一个当前的\\u page\\u项目类,就像它的子页面一样。有人知道如何做到这一点吗?

<?php
 if($post->post_parent)
 $children = wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0");
 else
 $children = wp_list_pages("title_li=&child_of=".$post->ID."&echo=0");
 if ($children) {
 $parent_title = get_the_title($post->post_parent);
?>

<h3>
Related Pages
</h3>

<ul>
<!-- <li class="current_page_item"> -->
<li>
  <a href="<?php echo get_permalink($post->post_parent) ?>">Overview</a>
 </li>
 <?php echo $children; ?>
 <?php } ?> 
 </ul> 

<div class="sidebar-widget">
 <?php if(!function_exists(\'dynamic_sidebar\') || !dynamic_sidebar(\'page-sidebar\')) ?>
 </div>
谢谢你的帮助

1 个回复
最合适的回答,由SO网友:gdaniel 整理而成

我相信,如果没有一些javascript,您将很难做到这一点,因为您正在手动添加链接。但是,您可以通过另一种方式实现同样的目标:

大多数wordpress主题都带有body_class() 中的函数<body> 标签该函数在body标签中添加了几个类,使您可以使用css更好地定位内容。添加的类之一是page id-*(其中*是page id)。您可以阅读有关body\\u类的更多信息here.

因此,在您的情况下,概览页面还将具有页面id-*类,您可以使用该类来确定菜单的目标。

在css中,您可以编写如下内容:

.page-id-20 ul.sidebar-menu li:first-child{

  color:green;

}
这需要考虑以下几点:

概述页面ID为20。它可以是任何数字,只需查看源代码即可找到。或者在后端查找页面id。

你上了一节课.sidebar-menu 转到UL侧菜单。(现在,您的代码没有类)

概述链接始终是列表中的第一个链接

结束

相关推荐

WordPress插件-多个php文件

我需要帮助我的第一个WP插件。我将php/mysql应用程序拆分为10个php文件(主要是一些表单),但在formscript中,两者之间的关联存在问题。php和该服务脚本(service.php)。我当然需要服务的结果。php在WP(插件)接口中。简化的脚本:myfirst.php <?php /* Plugin Name: myfirst ...*/ function myfirst_admin() { include(\'formcript.p