WPデフォルトのテンプレート階層を変更する簡単な方法はありますか?
例えば;
テーマのディレクトリ構造を、条件に基づいてここで提案したテンプレート階層から完全に変更されるように変更したいとします。
http://codex.wordpress.org/Template_Hierarchy
すべての種類のページ(is_single()
is_home()
など)に対して常に1つのテンプレートファイルを開くようにしたいのであれば、出力を提供するために自分のパターンを作成します。
どうもありがとう!
このフィルタを試す
function wpse_63614_restructure_template_hierarchy( $template ){
return get_template_directory().'/filename.php';
}
add_filter( 'template_include', 'wpse_63614_restructure_template_hierarchy' );
ファイル名は、テーマフォルダで呼び出したいファイルになります。子テーマには代わりにget_stylesheet_directory
を使用します。
編集:
あるいはChip Bennettが示唆しているように、私も感じた方が良いだろう。以下の方法でtemplate_redirect
フックを使用できます。必要に応じて優先順位を設定できます。
function wpse_63614_restructure_template_hierarchy(){
include( get_template_directory().'/filename.php' );
exit;
}
add_action( 'template_redirect', 'wpse_63614_restructure_template_hierarchy' );