Wordpress:如何向正文添加属性

Wordpress: How to add Attribute to body

我想为导航菜单添加 Scrollspy 支持,为此我必须向 body 标签添加额外的属性 data-spy="scroll" data-target=".navbar"

我可以在不触及主题文件的情况下务实地做到这一点吗?

一种方法是:- 编辑 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 );

很确定如果不编辑主题文件就无法完成此操作。您可以尝试 tousif 上面提到的 jQuery 方法,但我怀疑它是否会起作用,因为它很可能会在加载 ScrollSpy 后触发。

执行此操作的最佳方法是编辑“header.php”文件并将属性添加到 <body> 标记。你不应该编辑主题本身,使用子主题 - https://codex.wordpress.org/Child_Themes

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

function wp_body_classes( $classes )
{
    $classes[] = '" spy="scroll" data-target=".navbar';

    return $classes;
}
add_filter( 'body_class','wp_body_classes', 999 );