&exclude=13,14
タームID でも効きます。
&exclude=13,14
を入れると「カテゴリーなし」と表示されてしまいます。
IDがまちがっていないかは何度も確認したのですが…合っています。
&exclude=13,14を外すと一覧が正常に表示されます。
記述の仕方がまちがっているのでしょうか…
いろいろ試したところ
excludeのID指定は、カテゴリーIDのみで、タームID指定はできないってことみたいです。
私の認識不足でした…
タームIDの除外指定をしたい場合は、wp_list_categoriesでは無理ということでしょうか。
別のタグを使うとしたら、現在表示しているタクソノミーを強調しつつ一覧取得したい場合、どう書いたらいいんでしょう。
そうですか。実際、私はできています。
<?php
wp_list_categories('taxonomy=genre&title_li=');
wp_list_categories('taxonomy=genre&exclude=6&title_li=');
?>
どう見比べても、下の方は タームID=6 が表示されていません。
include 指定は効きますか?
include指定はできました。
どうしてなんでしょう…excludeだけ効きません…カテゴリーなし、と表示されます。
記載しているのはtaxonomy.php内です。
カスタム分類(タクソノミー)のアーカイブにおいて、
今表示しているカスタム分類(タクソノミー)の除外したタクソノミー一覧をwp_list_categoriesを使って表示したいって事ですか?
今表示しているカスタム分類の一覧を表示したいです。
今表示しているカスタム分類も含まれたものを一覧で表示、
ただしその中で特定のもの(今回はタームID13,14のふたつ)は表示したくありません。
gatespaceさんのおっしゃった内容で合っていると思います。
wp_list_categories( array(
'taxonomy' => 'genre',
'orderby' => 'name',
'order' => 'DESC',
'exclude' => '13,14',
'title_li' => ''
));
上記のコードで、excludeの指示を抜けば一覧が表示されます。
excludeを入れると、「カテゴリーなし」となります。
表示したいのは
カスタム分類genreのなかのタクソノミー1、2、3 … 15まであり、
13と14を抜いた一覧を出したい。
そのうえで、現在表示しているページのタクソノミーは強調表示したいです。
どうして除外だけできないんでしょう…
plute1234さんのおっしゃったとおり
excludeをincludeにしたときは、しっかり13.14のみ表示されました。
pluto1234さんの環境ではできているのでどこか違うんでしょうね。
お使いになっているテーマをデフォルトにして、プラグインも全てオフにして確認してみましたか?
(ただし、カスタム分類をプラグインで実装しているのであればそれは有効化しておいてください)
‘exclude’ は、カンマ区切りの文字列でなく配列でも指定可能なようです。
wp_list_categories( array(
'taxonomy' => 'genre',
'orderby' => 'name',
'order' => 'DESC',
'exclude' => array(13,14),
'title_li' => ''
));
ではどうですか?
‘include’ が効くなら
$terms = get_terms('genre');
foreach($terms as $term) {
if (!($term->term_id==13 || $term->term_id==14)) $term_ids[] = $term->term_id;
}
wp_list_categories( array(
'taxonomy' => 'genre',
'orderby' => 'name',
'order' => 'DESC',
'include' => $term_ids,
'title_li' => ''
));
ではどうですか?本質的な解決方法ではありませんが・・。
plute1234さんありがとうございます!
なるほどリストにして渡す…勉強になりました。
includeの方法で思った通りのものを実装できました、本当にありがとうございました。
gatespaceさんも助言ありがとうございました。
結局原因わからずなのですが、プラグインをオフにして確認する時間が惜しく…
そのうち試して進展がありましたら追記します。
本当にありがとうございました。