説明
get_post_class() は、投稿に付けるクラスを、配列で返す関数です。post_class() が出力する内容の元になります。
基本構文
get_post_class( string|string[] $class = '', int|WP_Post $post = null ): string[]
引数
$class:追加するクラス$post:投稿のIDまたはオブジェクト(省略すると、現在の投稿)
戻り値
クラス名の配列。
使い方(サンプル)
$classes = get_post_class( 'card' );
echo esc_attr( implode( ' ', $classes ) );
注意点
- 出力せず、配列を返します。
class="..."を出力するときは、post_class()。
実務での使いどころ
- 投稿のクラスを、PHPの中で、加工して使うとき。
- クラスに、特定の値が含まれるかを、確認するとき。
よくあるミスと対処
- 配列を、そのまま
echoしている。implode()で、文字列にしてから、出力する。 class="..."全体を出力するpost_class()と、取り違える。
NG例
echo get_post_class(); // 配列なので、「Array」になる
OK例
$classes = get_post_class( 'card' );
echo '<article class="' . esc_attr( implode( ' ', $classes ) ) . '">';
使い分け早見表
| 関数 | 役割 |
|---|---|
get_post_class() |
クラスの配列を、返す |
post_class() |
class="..." を、出力する |
get_body_class() |
<body> のクラスの配列を、返す |

コメント