get_terms
で複数の用語を除外したいのですが、exclude
パラメータは用語IDしか受け付けません。そのため、スラッグからIDという用語を取得する必要があります。
これは私がこれまでに持っているものです:
$pres = get_term_by('slug', 'president', $cat_type);
$vice = get_term_by('slug', 'vice-president', $cat_type);
$admin = get_term_by('slug', 'admin', $cat_type);
$rnd = get_term_by('slug', 'rnd', $cat_type);
$ID_pres = $pres->term_id;
$ID_vice = $vice->term_id;
$ID_admin = $admin->term_id;
$ID_rnd = $rnd->term_id;
$terminologies = get_terms( $cat_type, array(
'orderby' => 'term_id',
'exclude' => '???' <<<<
) );
ここには本当に間違っていて冗長なものがあると感じましたが、それらをexclude
パラメーターで使用できる配列に入れる方法がわかりません。何か手助け?
slug
引数を使えば、複数のスラッグから項を得ることができます。
$exclude = get_terms (
[
'slug' => [ 'president', 'vice-president', 'admin', 'rnd' ],
'taxonomy' => $cat_type,
'fields' => 'ids',
]
);
ここでは、fields
引数を使用して用語IDのみを返します。