web-dev-qa-db-ja.com

このリクエストでカスタム投稿タイプページテンプレートを代わりに使用するにはどうすればよいですか。

私はこの記事の答え を読みました

http://example.com?post_type=car&color=red

$ wp_queryを表示すると、すべてうまくいっているようです。つまり、 'red'という用語が割り当てられた 'car'投稿タイプになっています。ただし、要求は「カラー」カスタム分類テンプレートを使用します。 (私の場合、これはtaxonomy.phpです。)

代わりに 'archive-car.php'カスタム投稿タイプテンプレートを使用するというこのリクエストを取得するにはどうすればよいですか?

1
robertwbradford

特定のポストカスタムテンプレートをサポートするためにsingle.phpと同じようにtaxonomy.phpを切り替えます。これはテストされていないコードなので動作しないかもしれません - しかし最初に投稿タイプを取得します

 $ post_type = get_query_var( 'post_type'); 

したがって、$ post_typeにpost_type = 'car'が含まれる場合は、次のようにarchive-car.phpをインクルードしてください。

 if($ post_type = 'car')
 get_template_part( 'archive-car'); 
 elseif($ post_type = 'ボート')
 get_template_part( ' [ -  ____] elseif($ post_type = 'bike')
 get_template_part( 'archive-bike'); 
 else 
 get_template_part( 'regular-分類法 '); 

この答えのようにテンプレートのリダイレクトを設定できるのであれば、もっと良い方法がありますが、それでも可能かどうかはわかりません。可能であれば、$ post_typeの値に基づいて分類テンプレートをリダイレクトします。

カスタム投稿タイプの単数形テンプレートをすばやく切り替えるにはどうすればよいですか?

0
marfarma

それが可能かどうかはわかりません。私が理解しているのは、分類法ワードプレスでフィルタリングされた投稿を表示しているときは常に分類法テンプレートを探すということです。階層に基づいて、分類ページを削除し、アーカイブページをテンプレートとして使用できるだけにすることができますが、それは少し極端なようで、あまり役に立ちません。

このコードで何を達成したいと思っていますか?

特定の色の言葉で車に反応するようにarchive-car.phpページに関数を組み込むことができます。おそらくそれはあなたがあなたが探している機能を得るでしょう。

0
Aris Blevins