目前本站使用的WordPress主题有人发现导航输出不一样:
有丰富网页摘要标记 itemscope="itemscope" itemtype="https://www.schema.org/SiteNavigationElement"
的输出,还有 html5 语义化的导航标记 role="navigation"
输出。
怎么给自己的WordPress主题加上呢?
下载class-walker-nav-menu文件解压到主题的inc
目录,如果没有inc就新建一个inc目录。
在主题的 functions.php
中加入:
/** * WP nav menu add schema SiteNavigationElement. */ require get_template_directory() . '/inc/class-walker-nav-menu.php';
修改 wp_nav_menu()
函数标签,增加 'walker' => new Walker_Nav_Menu_SiteNavigationElement()
,如:
wp_nav_menu( array( 'theme_location' => 'menu-1', 'menu_id' => 'primary-menu', 'container_class' => 'menu-icon-nav-container', 'menu_class' => 'no-bullets reset-box-model', 'walker' => new Walker_Nav_Menu_SiteNavigationElement(), ) );
这种方法只限于有一定开发能力,可以开发WordPress主题的用户,这样可以不使用Yoast SEO这样比较臃肿的插件。