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

説明

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


お勧め

get_the_date(2018年5月27日 更新)

mixed get_the_date ( [ string $d = '' [ , mixed $post = null ] ] )
パラメータ$dで指定したフォーマットで投稿日を取得する。

is_php_version_compatible(2019年5月10日 更新)

bool is_php_version_compatible( string $required )
PHPバージョンの互換性を調べる。

in_category(2018年5月27日 更新)

bool in_category( mixed $category [ , mixed $post = null ] )
投稿情報が指定したカテゴリーに属しているか調べる。

get_category(2018年5月27日 更新)

mixed get_category( mixed $category [ , string $output = OBJECT [ , string $filter = 'raw' ] ] )
IDを指定してカテゴリー情報を取得する。

add_action(2018年5月27日 更新)

bool add_action( string $tag, mixed $function_to_add [ , int $priority = 10 [ , int $accepted_args = 1 ] ] )
WordPressシステムの関数にアクション関数を追加する。