投稿タイプやタクソノミーごとに投稿一覧のレイアウト(一覧タイプ)を変更するカスタマイズ方法

投稿タイプやタクソノミーごとに投稿一覧のレイアウト(一覧タイプ)を変更するカスタマイズ方法

投稿一覧のレイアウトを投稿タイプやタクソノミーごとに変更するカスタマイズ方法について紹介します。

このページは上級者向けマニュアルです。

自作のプラグインや子テーマを使ってPHPでカスタマイズする内容が含まれます。

WordPress勉強中の方は知らない単語や関数などを調べながらカスタマイズにチャレンジしてみてください。

投稿タイプごとに一覧ページのレイアウトを変更する方法

投稿一覧ページのレイアウトはys_get_archive_typeフィルターフックでカスタマイズできます。

フックの中で一覧ページの投稿タイプを判定してカスタマイズします。

add_filter( 'ys_get_archive_type', function ( $type ) {

	// is_post_type_archive で投稿タイプのアーカイブか判定.
	// 'manual'の部分は適宜サイトに合わせて投稿タイプ名に変更.
	if ( is_post_type_archive( 'manual' ) ) {
		$type = 'simple';// card,list,simple のいずれかを設定する
	}

	return $type;
} );

カスタムタクソノミーごとに一覧ページのレイアウトを変更する方法

カスタムタクソノミーでもys_get_archive_typeフィルターフックでカスタマイズします。

※「カスタムタクソノミー」と記載していますが、下記コードはカスタムタクソノミーのターム一覧でのレイアウト変更サンプルとなります。

add_filter( 'ys_get_archive_type', function ( $type ) {

	// is_tax でタクソノミーのアーカイブか判定.
	// 'manual_category'の部分は適宜サイトに合わせて投稿タイプ名に変更.
	if ( is_tax( 'manual_category' ) ) {
		$type = 'simple';// card,list,simple のいずれかを設定する
	}

	return $type;
} );

条件式は適宜ご自身の環境に合わせて調整をしてください。