WordPress功能函数body_class()
WordPress功能函数body_class(),显示body元素的类名。
用法
body_class( string|string[] $class = ” )
参数
$class
(string|string[])(可选)要添加到类列表中的以空格分隔的字符串或类名数组。
默认值:“
更多信息
这个函数为body元素提供了不同的类,通常可以添加到头文件中。php的HTML主体标签。
基本用法
下面的示例展示了如何将body_class模板标记实现到主题中。
<body <?php body_class(); ?>>
实际的HTML输出可能类似于以下内容(主题单元测试中的About The Tests页面):
<body class=”page page-id-2 page-parent page-template-default logged-in”>
在WordPress主题样式表中,添加适当的样式,例如:
.page {
/* styles for all posts within the page class */
}
.page-id-2 {
/* styles for only page ID number 2 */
}
.logged-in {
/* styles for all pageviews when the user is logged in */
}
来源
文件: wp-includes/post-template.php
function body_class( $class = ” ) {
// Separates class names with a single space, collates class names for body element.
echo ‘class=”‘ . esc_attr( implode( ‘ ‘, get_body_class( $class ) ) ) . ‘”‘;
}
更新日志:
用户贡献的笔记
(德鲁·杰恩斯5年前贡献)
添加更多的类
默认情况下,只有上面描述的类。
要添加更多的类,可以添加模板标记的参数。例如,向上面使用的同一个模板中添加一个唯一的类:
<body <?php body_class( ‘class-name’ ); ?>>
结果将是:
<body class=”page page-id-2 page-parent page-template-default logged-in class-name”>
(德鲁·杰恩斯5年前贡献)
通过过滤器添加新类
你可以通过过滤{@see ‘ body_class ‘}钩子来添加额外的body类。
要在WordPress主题functions.php文件中添加以下内容,修改my_class_names和class-name来满足你的需要:
// Add specific CSS class by filter.
add_filter( ‘body_class’, function( $classes ) {
return array_merge( $classes, array( ‘class-name’ ) );
} );