選択した分類法に応じて異なるコンテンツを表示しようとしています。たとえば、Typeという分類法があります。その分類法の中に私は何人かの異なる子供がいます、そのうちの1人は「写真」です。私はそれがサイドバーを持っているのではなく全幅を持っていることを "写真"のシングルにしたいのです。 "if in_category( 'photography')"を使ってこれを通常の投稿で行うことができますが、私は過去数時間を費やしてthe_termsなどを正しく機能させようとしました。
助けてくれてありがとう。
- ピート
やってみる
function has_type( $type, $_post = null ) {
if ( empty( $type) )
return false;
if ( $_post )
$_post = get_post( $_post );
else
$_post =& $GLOBALS['post'];
if ( !$_post )
return false;
$r = is_object_in_term( $_post->ID, 'type', $type);
if ( is_wp_error( $r ) )
return false;
return $r;
}
使用法:
<?php if ( has_type( 'Photography' ) ) /* do your thing*/ ?>
お役に立てれば。
WP 3.1には、wp-includes/category-template.phpにある便利なhas_term()関数があります。