在何处使用post_class()
你几乎可以在任何地方使用它(在WordPress中),例如单篇文章页面(single.php, single-my_cpt.php, 等),搜索结果页(search.php), 索引模板(index.php), 模板部件(例如。content.php), 和一个短代码函数。
可以使用post_class() 用于添加自定义类?
是的,是的。post_class() 不限于WordPress默认类。
例如,post_class( \'my-class\' ) 除非有代码filters the classes 然后删除my-class 从列表中。
它适用于所有其他文件,如关于页面、联系人页面
限制它(您的自定义CSS类)仅应用于某些页面是您的任务,WordPress不会自动为您应用该限制。
但是WordPress提供了各种conditional tags 喜欢is_page() 只能在某些页面上添加CSS类,因此只需使用相关的条件标记post_class().
例如,要添加my-class 仅在页面上(发布page 类型)带缓动阀about:
<div <?php post_class( is_page( \'about\' ) ? \'my-class\' : \'\' ); ?>>
your code
</div>
<!-- or maybe like so: -->
<?php
// foo-bar would always be in the list
$classes = [ \'foo-bar\' ];
if ( is_page( \'about\' ) ) {
$classes[] = \'my-class\';
}
?>
<div <?php post_class( $classes ); ?>>
your code
</div>
请注意
post_class() 默认情况下,在当前WordPress查询中使用当前帖子,即全局
$post 变量,因此如果要输出特定帖子的类,请将帖子ID(或对象)传递给
post_class():
// 123 (2nd parameter for post_class()) is the post ID
<div <?php post_class( \'my-custom-class\', 123 ); ?>>
your code
</div>