我正在尝试创建一个类,它允许我生成导航菜单。以下是我使用的简化版本:
class PJ_Menu {
function make_menu() {
$args = array(
\'theme_location\' => \'location\',
\'fallback_cb\' => array( $this, \'pj_page_menu\' ),
);
wp_nav_menu( $args );
}
function pj_page_menu() {
// a bunch of code here
}
}
new PJ_Menu();
我似乎不知道我需要什么
fallback_cb
参数
array( $this, \'pj_page_menu\' );
没用,也没用
\'self::pj_page_menu\'
. 我是否遗漏了一些明显的东西,或者是不可能做到这一点?
最合适的回答,由SO网友:s_ha_dum 整理而成
这个fallback_cb
参数在菜单不存在时使用,即没有正确名称的菜单时。否则我不会被利用。Check the Codex. 默认情况下,回退是wp_page_menu
.
在我看来,您的代码使用类方法作为回调是正确的,但我怀疑您真正想要的是walker
参数,而不是fallback_cb
一这个walker
参数将在创建菜单的任何时候使用,而不仅仅是在出现问题时作为回退。