我正在尝试为帖子添加一个新类,以便我可以通过css以不同的方式设置该类。对于所有帖子类型box-layout
,div的当前类为event_listing
。我希望如果任何帖子的meta_key _featured
的meta_value为1
,那么它应该在当前类之前或之后添加一个新类。它应该像box-layout featured-class
。
下面是我试图在我的主题functions.php文件中使用它但尚未成功的代码。
add_filter('body_class','add_featured_class');
function add_featured_class ( $classes ) {
global $post;
if ( "1" == get_post_meta( get_the_ID(), '_featured', true ) ) {
$classes[] = 'featured-class';
}
// return the $classes array
return $classes;
}
答案 0 :(得分:1)
你不能在循环外使用get_the_ID()。请尝试$ post-> ID。这适用于我,假设你的帖子有" _featured" post meta设置为1。
add_filter('body_class','add_featured_class');
function add_featured_class ( $classes ) {
global $post;
if ( "1" == get_post_meta( $post->ID, '_featured', true ) ) {
$classes[] = 'featured-class';
}
// return the $classes array
return $classes;
}
还要确保您的身体标签看起来像这样:
<body <?php body_class(); ?>>