この記事は最後に更新してから1年以上経過しています。

投稿一覧に「投稿フォーマット」フィルターが追加される

説明

WordPress 5.2 Beta2(以降5.2Beta2)のソースコードを眺めていると、投稿一覧ページのフィルター機能に「投稿フォーマット」(select要素)が追加されていた。

「投稿フォーマット」フィルターの表示条件

どんなものが表示されるのか、5.2 Beta2をインストールしたテスト環境で投稿一覧ページ(Posts→All Posts)を表示してみたが、フィルターの表示内容は従来通りの「日付」と「カテゴリー」のみだった。

インストール直後、投稿一覧のフィルターには「投稿フォーマット」がない

あらためてソースコード(/wp-admin/includes/class-wp-posts-list-table.php)を見てみると、使用されている「投稿フォーマット」を取得してそれを表示していることがわかった。

$used_post_formats = get_terms(
	array(
		'taxonomy'   => 'post_format',
		'hide_empty' => true,
	)
);

標準テーマの「Twenty Nineteen」はそのままでは「投稿フォーマット」に対応していない。以下の内容を'after_setup_theme'アクションで呼び出せばよいのだが、ここではテーマを「Twenty Seventeen」に切り替えることにした。

add_theme_support(
	'post-formats',
	array(
		'aside',
		'image',
		'video',
		'quote',
		'link',
		'gallery',
		'audio',
	)
);

初期投稿の「Hello world!」を編集して「ステータスと公開状態(Status & Visibility)」ウィジェットで「投稿フォーマット(Post Format)」を「アサイド(Aside)」にして更新。投稿一覧に戻ってみる。

インストール直後の投稿一覧のフィルターに「投稿フォーマット」が追加されている

このフィルターの「投稿フォーマット」の表示は、テーマのfunctions.phpやプラグインに以下のコードを追加することで強制的に非表示にできる。従来通りの表示の方がよいという方はお試しあれ。

add_filter( 'disable_formats_dropdown', '__return_true' );

最終更新 : 2019年04月12日 10:54


お勧め

delete_post_meta(2018年5月27日 更新)

bool delete_post_meta( int $post_id, string $meta_key [ , mixed $meta_value = '' ] )
投稿情報のカスタムフィールド情報を削除する。

wp_is_numeric_array(2018年5月27日 更新)

bool wp_is_numeric_array( mixed $data )
数値キーのみの配列か調べる。

get_tag_regex(2013年8月3日 更新)

string get_tag_regex( string $tag )
HTMLタグの正規表現パターンを取得する。

get_all_page_ids(2012年5月30日 更新)

array get_all_page_ids( )
全ページ(post_typeが'page')の投稿IDを取得する。

the_post_thumbnail_caption(2018年5月27日 更新)

void the_post_thumbnail_caption( mixed $post = null )
投稿ページのサムネイル(アイキャッチ画像)キャプションを表示する。