SO网友:Dan.
使用body_class
过滤器以更改<body>
CSS类。
您可以将相同的逻辑复制到挂钩函数中(如下所示),或者通过将逻辑复制到另一个新函数中并使该函数返回布尔值(然后将该新函数与body\\u类过滤器和template\\u重定向过滤器一起使用),使其更整洁。
add_filter( \'body_class\', function($body_classes){
global $post;
$meta = get_post_meta( $post->ID, \'designblocks-product-template\', true );
if ( ! $meta ) {
return $body_classes;
}
$get_template = get_post_meta( $meta, \'_wp_page_template\', true );
if ( $get_template ) {
$body_classes[] = \'your-custom-classes\';
}
return $body_classes;
});
尽管如此,如果我正确理解了您要做的事情,那么尝试复制WP的本机页面模板功能和相关内容将使您的生活变得不必要的困难。相反,只需在主题中创建一个名为
single-{post-type-name}.php
并使用它来代替指定页面模板。这个
<body>
将被授予
single-{post-type-name}
.