「投稿フォーマット」は記事のフォーマット(種類)を付加して選択できるようにする機能。
functions.php に以下を記述し、「投稿フォーマット」機能を有効化する。
//投稿フォーマット'gallery'を有効にする。 add_theme_support('post-formats', array('gallery'));
この記述により、「投稿」の「新規追加」の際、「フォーマット」の欄が追加され、記事のフォーマットを選択できるようになる。上記の場合は「ギャラリー記事」のフォーマットが追加される。
投稿フォーマットには以下のようなものがある。
投稿フォーマット | 意味 |
---|---|
aside(アサイド) | タイトルがない短い記事 |
gallery(ギャラリー) | 画像ギャラリー |
image(画像) | 単独の画像 |
chat(チャット) | チャットの履歴 |
link(リンク) | 他サイトへのリンク |
quote(引用) | 引用文と引用元のテキストエリア |
status(ステータス) | 通常140程度の短い記事(ツイートのようなもの) |
audio(音声) | 単独のオーディオファイル |
video(動画) | 単独の動画 |
投稿フォーマットを複数指定する場合は、カンマで区切って指定する。
add_theme_support('post-formats', array('gallery', 'image', 'status'));
カスタム投稿タイプにで投稿フォーマットを有効化するには、’supports’パラメータに指定する。
register_post_type( 'news', array( 'label' => __('News', 'domain'), 'labels' => array( 'add_new_item' => __('Add New News', 'domain'), ), 'public' => true, 'hierarchicla' => false, 'has_archive' => true, 'supports' => array( 'title', 'editor', 'thumbnail', 'custom-fields', 'excerpt', 'post-formats' //投稿フォーマットを有効化 ), 'menu_position' => 5 ) );
「has_post_format()」を使って、投稿に設定されている投稿フォーマットを判定する。
書式は以下のようになる。
if( has_post_format('フォーマット名')) { //投稿フォーマットが「フォーマット名」だったときの処理 }