自定义Walker_NAV_MENU以在项目为类别时显示帖子

时间:2014-03-31 作者:jppower175

我想定制导航菜单漫游器,这样当它遇到一个类别时,它会自动生成菜单项的5个最新帖子子项。有没有一种方法可以动态地将项目添加到菜单对象,或者在start\\el函数中设置一个条件更好?

1 个回复
SO网友:tfrommen

您可以扩展Walker_Nav_Menu walker类(即start_el 如前所述,功能已足够)
或者,您可以在创建原始输出(即类别)时挂接。那就是walker_nav_menu_start_el

例如:

function wpdev_139801_start_el( $item_output, $item ) {
    if ( isset( $item->object ) && $item->object === \'category\' ) {
        // Set up your query here,
        // then concatenate the output to $item_output
        // You could do this using wp_get_archives()
    }

    return $item_output;
} // function wpdev_139801_start_el

add_filter( \'walker_nav_menu_start_el\', \'wpdev_139801_start_el\', 10, 2 );

结束