この記事は最後に更新してから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


お勧め

wp_suspend_cache_addition(2023年6月8日 更新)

bool wp_suspend_cache_addition( [ bool $suspend = null ] )
キャッシュの追加を一時的に停止する。

wp_json_file_decode(2022年1月26日 更新)

mixed wp_json_file_decode( string $filename [ , array $options = array() ] )
JSONファイルをデコードする。

get_metadata_by_mid(2018年12月14日 更新)

object|bool get_metadata_by_mid( string $meta_type, int $meta_id )
IDを指定してメタデータを取得する。

human_time_diff(2019年11月18日 更新)

string human_time_diff( int $from [ , int $to = '' ] )
時間差を'5分'や'2日'のような感覚的な表現で取得する。

get_current_user_id(2013年9月18日 更新)

int get_current_user_id()
現在のログイン済みユーザーのIDを取得抽出する。