web-dev-qa-db-ja.com

カスタム投稿タイプでカスタムテンプレートをサポートする方法

私は私のテーマを開発するある時点で立ち往生しています。

イメージギャラリーをサポートするカスタム投稿タイプを作成しました。これまでのところ、それは素晴らしく働いています(psaikali.comの 'galeria'を見てください)。このカスタム投稿タイプ(register_post_type( 'artwork'、$ args))を登録し、 'page attributes'機能を有効にして、私の投稿用に異なるテンプレートを定義しました( 'supports' => array( 'title'、 'editor'、 'thumbnail'、 'page-attributes'、 'custom-fields'))。

しかし、それは単に「テンプレート選択」部分ではなく、ページの「順序」を示しているだけです。誰が何が悪いのか知っていますか?私はsingle-artwork.phpと呼ばれるテンプレートファイルを作成しました...

表示されるページ属性ページのスクリーンショット: http://img213.imageshack.us/img213/5348/notemplate.jpg

助けてくれてありがとう !

1
Pierre

あなたはsingle-your-post-type-name.phpファイルを作成してそれを動作させることができるはずです。私は現在それが3つか4つの場所でうまく働いているのでそれがあなたのために働いていないならあなたは何か悪いことをしている。

あなたのコードサンプルに基づいてsingle-artwork.phpは単一ページの投稿テンプレートとして動作するはずです。次のようにsingle.phpにリダイレクトすることもできます。

<?php
if( get_post_type() == 'artwork' ) {
include_once ( TEMPLATEPATH.'/path/to/template.php' );
} else {
include_once( TEMPLATEPATH.'/normal/template.php' );
}
?>

WordPressはより深いレベルでルーティングを行っているのでsingle-posttype.phpルートを見た方がいいですし、WordPressに組み込まれているものを使うほうがずっといいです。

2
curtismchale

well single-POSTTYPE.phpはその投稿タイプの単一ビュー用です。このようなファイルmy-custom-template.phpがありますか。

/ *
テンプレート名:私のカスタムテンプレート
* /

0
Horttcore