如何向导航栏添加schema.org SiteNavigationElement和属性URL?

时间:2015-04-05 作者:Pikk

我想添加架构。组织机构SiteNavigationElement 以及导航栏链接的相对url属性。

我有以下几点:

<nav class="navbar navbar-default navbar-fixed-top" id="menu-nav" role="navigation">
  <!-- Brand and toggle get grouped for better mobile display -->
  <div class="navbar-header">
    <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse">
      <span class="sr-only">Toggle navigation</span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
      <span class="icon-bar"></span>
    </button>
  </div>
  <!-- Collect the nav links, forms, and other content for toggling -->
    <?php wp_nav_menu( array(
      \'sort_column\'     => \'menu_order\',
      \'theme_location\'  => \'header-menu\',
      \'items_wrap\'      => \'<ul class="menu-nav navbar-nav scroll-menu">%3$s</ul>\',
      \'container_class\' => \'collapse navbar-collapse menu-header \'
    ) ); ?>
  </nav>
我明白这一点itemscope itemtype="http://schema.org/SiteNavigationElement" 应该转到<nav>. 那很好,我能做到。

但是,我如何添加itemprop="url" 指向导航栏的链接??

谢谢

1 个回复
最合适的回答,由SO网友:Tom J Nowell 整理而成

搜索一下我就知道了nav_menu_link_attributes 过滤器:

function wpse183311_filter( $atts, $item, $args ) {
    $atts[\'itemtype\'] = \'http://schema.org/SiteNavigationElement\';
    return $atts;
}
add_filter(\'nav_menu_link_attributes\', \'wpse183311_filter\', 3, 10);
将所需的属性添加到$atts 根据需要排列

结束

相关推荐

Use menus with anchors

我有一个CPT归档页面,我想创建一个导航菜单,该菜单将跳转到表单中的锚定<a name=\"post-slug\" http=\"{the permalink goes here}>The CPT Title</a>我已经能够在模板文件中创建锚定,所以这不是问题对于页面顶部的链接本身,我可以手动创建它们,也可以使用WordPress菜单系统中的自定义链接。。。。但是有很多,所以我宁愿尝试在WordPress菜单系统中创建一个常规菜单。问题是,我需要以某种方式调整它的输出,以更改常规