it-swarm-ja.com

特定のIDへのリンクで用語名を取得する方法

アーカイブページにカスタムカテゴリを表示しようとしています。

$term_id_array= array(1,2,4,50);

これらのterm_idsへのリンクで用語名を取得する方法

私のカスタム投稿タイプ名=商品分類= product_cat

注:私はウーコマースを使用しています。

このコードを試して、すべての商品カテゴリ名をリストとして表示するようにしてください。

<?php 
$taxonomy = 'product_cat'; //Choose the taxonomy
$terms = get_terms( $taxonomy ); //Get all the terms
foreach ($terms as $term) { //Cycle through terms, one at a time
$term_id = $term->term_id; //Define the term ID
$term_link = get_term_link( $term, $taxonomy ); 
$term_name = $term->name;
echo '<p class="list-cat"><span>' . $term_id . '</span> -<span>' . $term_name . '</span></p>';  
}
?>

出力:

1 - 服2 - シャツ3 - パンツ4 - レディースパンツ5 - Tシャツ6 ........ ....... 5-太陽ガラス

しかし、どのように私はこの1,2,4,50 IDのためのリンクで名前を得ることができますか。

1
Exclutips

get_terms() は2番目のパラメータとして引数の配列を受け取ります。これらのパラメータの1つはincludeです。

include

(整数)含めるidの配列。空はすべてを返します。

選択した用語IDはすでに配列に含まれているので、それらをget_terms()の引数の配列内のincludeパラメータに渡すだけです。

$terms =  get_terms( $taxonomy, array( 'include' => $term_id_array ) );

または短いaraay構文で(PHP 5.4以降に使用可能)

$terms = get_terms( $taxonomy, ['include' => $term_id_array] );
1
Pieter Goosen