私は私の投稿に 'events'のタグを付けた一覧を表示するcategory-events.phpを持っていますが、 'events'の子カテゴリでは動作しません。
すなわち、私はいくつかの投稿 'イベント'とイベント '子供'展 'のタグがあります。自動的にcategory-events.phpを使用すると思いましたが、使用しません。私はいくつかの「イベント」の子カテゴリのためにcategory-events.phpを使用したいのでこれは可能ですか。
それが理にかなっていることを願っていて、どんなポインタでも歓迎します。
ダン。
最初にこのコードをあなたのテーマのfunctions.phpに貼り付けてください。
function post_is_in_descendant_category( $cats, $_post = null ){
foreach ( (array) $cats as $cat ) {
// get_term_children() accepts integer ID only
$descendants = get_term_children( (int) $cat, 'category');
if ( $descendants && in_category( $descendants, $_post ) )
return true;
}
return false;
}
それから一番上のcategory.phpかarchive.php(あなたのテーマによります)に追加してください
<?php if (post_is_in_descendant_category(33)){
include (TEMPLATEPATH . '/category-events.php');
exit;
} ?>
33を「イベント」カテゴリのIDに変更します。
それがしているのは、現在のカテゴリがイベントの子カテゴリであるかどうか、そして正しい場合は正しいテーマファイルを使用しているかどうかをチェックすることです。