查看其中一个子页面时突出显示顶级链接

时间:2011-08-02 19:54:16

标签: php html wordpress

我的自定义菜单中有一个链接的页面。此页面有一个父页面, 链接在自定义菜单中。

如果我转到“未链接”页面,我想在菜单中突出显示它的父页面链接。

有办法做我想做的事吗?

1 个答案:

答案 0 :(得分:0)

您应该使用wp_get_nav_menu_items来更改父页面项的类。例如:

function my_menu_items_hook($items, $menu, $args) {

  if ( 'my-menu-slug' == $menu->slug ) {
    if ( '/my-child/' == $_SERVER['REQUEST_URI'] ) { // check if current page is child page
      foreach ( $items as $key => $value ) {
        if ( YOUR_PARENT_PAGE_ID == $value->ID ) {
          $items[$key]->classes[] = 'current-menu-item';
        }
      }
    }
  }

  return $items;
}

add_action('wp_get_nav_menu_items', 'my_menu_items_hook', 10, 3);

如果您的子页面可以包含参数,那么最好使用常规expresion或substr函数,而不是检查$ _SERVER ['REQUEST_URI']值。