functions.php に以下を追加:
function my_query($query){
global $wpdb;
$query = preg_replace(
'@WHERE@',
"INNER JOIN $wpdb->term_relationships ON ($wpdb->posts.ID = $wpdb->term_relationships.object_id)
INNER JOIN $wpdb->term_taxonomy ON ($wpdb->term_relationships.term_taxonomy_id = $wpdb->term_taxonomy.term_taxonomy_id)
WHERE ",
$query
);
return $query . " AND $wpdb->term_taxonomy.taxonomy = 'category' AND $wpdb->term_taxonomy.term_id = 123";
}
※123はお好みのカテゴリIDに変更してください。
カレンダーを表示するところで
add_filter('query', 'my_query');
get_calendar();
remove_filter('query', 'my_query');
seijo31さまの投稿に失礼します。
kzさま
wordpress初心者のものです。
こちらの投稿に辿りつき、
上記のとおりコードを書き込み、特定のカテゴリのみの複数のカレンダーを
表示させることができました。
ただ、カレンダーの翌月「next」前月「prev」が表示されなくなってしまいました。
ソースでは下記の様にスペースとなってしまいます。
<td class=”pad” id=”prev” colspan=”3″> </td>
<td class=”pad”> </td>
<td class=”pad” id=”next” colspan=”3″> </td>
表示する方法をご存知の方いらっしゃいましたら
どうかお力をお貸し下さい。
よろしくお願いします。
kzさま
アドバイスありがとうございます!
ぜひ参考にさせていただきます。