get_post_class

(2.7.0以降)
get_post_class - 投稿記事のクラス名を取得する

説明

array get_post_class( [ mixed $class = '' [ , int $post_id = null ] ] )
投稿記事のクラス名を取得する。

パラメータ

  • $class
    追加するクラス名を文字列まはた配列で指定(省略時は'')。
  • $post_id
    対象となる投稿情報のIDを指定(省略時はnull)。

返り値

クラス名を含んだ配列を返す。

注意

クラス名はesc_attr関数で属性値として無効な文字は取り除かれる。

クラス名としては、'post-{ID}'、'type-{投稿タイプ名}'、'status-{投稿ステータス}'、'format-{投稿フォーマット名}'、'hentry'、'category-{カテゴリーのスラッグまたはID}'、'tag-{投稿タグのスラッグまたはID}'など。

[4.2.0]カスタムタクソノミーが'{カスタムタクソノミー名}-{そのスラッグまたはID}'の形式で追加されるようになった。

使用例

  • 現在の投稿情報のクラス名を取得する。
    <?php $classes = get_post_class(); ?>
  • 現在の投稿情報のクラス名に'topic'を追加して取得する。。
    <?php $classes = get_post_class( 'topic' ); ?>
  • IDが2014の投稿情報のクラス名を取得する。。
    <?php $classes = get_post_class( '', 2014 ); ?>

フィルター

クラス名を含んだ配列を返す直前に'post_class'フィルターを呼び出す。パラメータ$classesにはクラス名の配列が、$classには本関数が受け取った値、$post_IDは実際の投稿情報のID値となる。
return apply_filters( 'post_class', $classes, $class, $post_ID );

アクション

直接実行するアクションはありません。

ソースファイル

/wp-includes/post-template.php

関連

  • esc_attr - HTMLタグ属性をエスケープする
  • get_post - 投稿情報を取得する
  • post_class - 投稿情報のクラス属性を表示する

お勧めコンテンツ

query_posts(WP_Queryクラス)でカスタムフィールドを使う(2011年9月15日 登録)

先週3回にわたってtax_queryパラメータを使ったカテゴリーや投稿タグ、投稿フォーマットの絞り込みを整理したが、その途中で目に付いたのが'meta_query'パラメータ。この'meta_query'パラメータは、カスタムフィールドの絞り込み条件を指定するためのもので、3.2で登場した新しいパラメータのようだ。

4.4では投稿ページも専用テンプレートが適用できる(2015年11月7日 登録)

従来、特定の固定ページには専用テンプレートを適用できるのですが、投稿ページに適用させるためにはアクションやフィルターを利用する必要がありました。4.4では特定の投稿ページに標準で専用テンプレートを適用できるようになりそうです。

管理画面の'アイキャッチ画像'を'写真'に変える(2013年1月23日 登録)

クライアント向けに専用のテーマを提供する際、稀に管理画面内の用語の変更を依頼されることがある。今回は、'アイキャッチ画像'だとわかりにくいので'写真'に変えてほしいということだった。

親子の固定ページで同じテンプレートを使う(2013年3月20日 登録)

固定ページのテンプレートファイルは「page.php」か、ページ名(スラッグ)または投稿IDを指定したテンプレートファイルになる。固定ページでページデザインが数パターンある場合、通常は「page.php」で振り分けることになるが、もう少しスマートにできないか考えてみた。

canvasタグを投稿したい(2013年12月27日 登録)

以前「投稿内容のid属性などを保存するための対策」で取り上げたように、WordPressでは投稿に記述できるHTMLタグが制限されている。同コラムでこの制限を調整する対策を紹介しているが、3.5以降ではフィルター関数を登録して対応できるようだ。

最終更新日時 : 2015-04-27 09:48