使用特定页面模板时在Body中注入类

时间:2018-09-02 作者:The WP Intermediate

<body <?php body_class(); ?> >
在标题中。php我已经编写了上述代码。

但我想在使用此页面模板时:

page-customer.php
那么

body_customer
课程应该在上面。这可能是通过某种钩子实现的吗?

1 个回复
最合适的回答,由SO网友:Levi Dulstein 整理而成

有一个过滤器,它叫做。。。body_class ;) 这应该适用于您的情况:

function add_my_custom_body_class( $classes ) {
    if ( is_page_template( \'page-customer.php\' ) ) {
        $classes[] = \'body_customer\';
    }

    return $classes;
}
add_filter( \'body_class\', \'add_my_custom_body_class\', 10, 1 );
如果您想根据页面ID添加类(如您在注释中所述),您可以更改函数内部的逻辑并仅在查询特定页面时添加类,假设您的页面ID为3:

if ( 3 === get_the_ID() ){
     $classes[] = \'your_additional_class\';
}

结束