我正在尝试替换walker
参数来自new My_Walker_Nav_Menu()
到字符串\'My_Walker_Nav_Menu\'
在此wp\\U nav\\U菜单调用中(按原样工作)
wp_nav_menu(
array(
\'theme_location\' => \'header_nav\',
\'menu_class\' => \'main-menu\',
\'container\' => \'\',
\'fallback_cb\' => false,
\'walker\' => new My_Walker_Nav_Menu()
)
);
当我将其更改为字符串时,会出现以下错误Fatal error: Using $this when not in object context
课程是基本的:
class My_Walker_Nav_Menu extends Walker_Nav_Menu {
function start_lvl(&$output, $depth = 0, $args = Array()) {
$indent = str_repeat("\\t", $depth);
if(\'header_nav\' == $args->theme_location ){
$output .=\'<span class="toggle-submenu fa fa-angle-down"></span>\';
}
$output .= "\\n$indent<ul class=\\"sub-menu\\">\\n";
}
}
我需要这样做是因为apparently 自定义程序的部分刷新不适用于自定义漫游器。当自定义程序确定无法执行部分刷新时,它会返回到执行整页刷新。菜单更改将获得整页刷新的条件包括:
。。。
或者使用walker对象实例调用wp\\u nav\\u menu(),而不是使用类名字符串Somebody else 有这个问题(在评论中提到),但没有得到答案。我翻遍了文件,但似乎什么也没找到。
非常感谢您的帮助。