カスタム投稿タイプテンプレート

2020.04.03 2020.04.03

TOPICS

翻訳元記事はこちらです。

WordPressのテーマシステムでは、カスタム投稿タイプのカスタムテンプレートに対応しています。カスタム投稿タイプに属する個別投稿表示用のカスタムテンプレートはWordPressバージョン3.0からサポートされており、アーカイブ表示用のカスタムテンプレートのサポートはバージョン3.1で追加されました。

カスタム投稿タイプ – テンプレート階層

WordPress はテンプレート階層を通して、最初に条件に当てはまったテンプレートファイルを使用します。そのため、acme_productカスタム投稿タイプのカスタムテンプレートを作成したい場合は、single.phpファイルをコピーしてsingle-acme_product.phpとして保存し、それを編集することから始めるのが良いでしょう。

しかし、カスタムテンプレートファイルを作成したくない場合、WordPressはテーマにすでに存在するファイル、つまりarchive.phpsingle.phpindex.phpファイルを使用します。

個別投稿とそのアーカイブは、それぞれsingle.phparchive.phpのテンプレートファイルを使用して表示することができます。

{post_type}register_post_type() 関数の $post_type 引数のことです。

そのため、上記の例では、単一の商品の投稿とそのアーカイブ用にsingle-acme_product.phparchive-acme_product.phpのテンプレートファイルを作成することができます。

あるいは、任意のテンプレートファイル内の is_post_type_archive() 関数を使用して、クエリが与えられた投稿タイプ(複数可)のアーカイブページを表示しているかどうかをチェックし、post_type_archive_title() を使用して投稿タイプのタイトルを表示することもできます。

関数リファレンス