手动使用Walker_Category类

时间:2019-07-11 作者:aitor

我在WP文档“手动使用Walker”中读到,试图创建一个包含类别术语的菜单:https://codex.wordpress.org/Class_Reference/Walker

$menu_items = get_categories();
$walk = new \\Walker_Category();
print_r( $walk->walk( $menu_items, -1 ) );
我收到以下警告:

Notice: Undefined index: use_desc_for_title in /srv/www/my-site.com/current/web/wp/wp-includes/class-walker-category.php on line 114
使用Walker\\u category类的正确方法是什么?

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

您正在使用的Walker\\u Category类需要walk()方法中的3个参数,第三个参数将是use\\u desc\\u for\\u title value(这是由于Walker\\u Category::start\\u el()方法的编写方式)。

换句话说,要使用walk()方法而不生成通知,应将最后一行更改为

print_r( $walk->walk( $menu_items, -1, -1 ) );

第三个参数是布尔值:

“-1”(或false)-将从生成的菜单链接中删除“title”属性。“1”(或true)-将使菜单使用title属性的类别描述