WordPress:如何将属性添加到body



我想向nav-menu添加scrollspy支持,因为我必须将额外的属性 data-spy="scroll" data-target=".navbar"添加到 body tag。

我可以务实地做到这一点而不触摸主题文件吗?

一种方法是: - 编辑header.php并将这些属性添加到身体。

替代方案(没有编辑主题文件)将是创建一个插件,该插件添加了将这些属性添加到身体的JS。这样的东西: -

$("body").attr( { data-spy:"scroll", data-target:".navbar" } );

编辑查看了Sevi的答案之后。最合适的方法是

function wp_body_classes( $classes )
{
    $classes[] = '" spy="scroll" data-target=".navbar';
    return $classes;
}
add_filter( 'body_class','wp_body_classes', 999 );

好吧,我找到了解决问题的方法:

function wp_body_classes( $classes )
{
    $classes[] = '" spy="scroll" data-target=".navbar';
    return $classes;
}
add_filter( 'body_class','wp_body_classes', 999 );

可以确保不编辑主题文件就无法完成。您可以尝试Tousif上面提到的jQuery方法,但我怀疑它会起作用,因为加载了ScrollSpy后它很可能会发射。

做到这一点的最佳方法是编辑您的" header.php"文件,然后将属性添加到<body>标签中。但是,您不应该编辑主题本身,请使用子主题-https://codex.wordpress.org/child_themes

最新更新