再帰関数を作成しました。必要なのは、その製品の親カテゴリの説明と term_id を取得することです。
function desc_pro($parent) {
$term = get_term_by('parent', $parent, 'product_cat');
$description = $term->description;
while($description == null) {
$desc = desc_pro($term->parent);
return $desc;
}
return $description;
}
このコードを実行すると、正しい説明が表示されます。しかし、リターンのいずれかを削除すると、機能しません。空白を示しています。(これでいい?コードが間違っていると思う?)
2 番目: term_id が必要です。配列を作成すると、すべてのサブカテゴリ ID も送信されます。これは間違っています。説明があるIDだけが必要です。
コードが間違っていると思いますか?それとも他に問題がありますか?
これは私の配列です: (私が送信するのは、私のphpページからの親カテゴリです。したがって、関数 get_desc(48); を呼び出します)
それは私に最初のオブジェクトを与えます、今私は説明が利用可能かどうかをテストしなければなりませんか? はいの場合は、停止して説明と term_id を返します。利用できない場合は、親 ID を取得して再度確認してください。したがって、これは説明が見つかるまで続きます。
stdClass Object
(
[term_id] => 48
[name] => Cereal
[slug] => cereal
[term_group] => 0
[term_taxonomy_id] => 49
[taxonomy] => product_cat
[description] =>
[parent] => 46
[count] => 0
)
stdClass Object
(
[term_id] => 46
[name] => Grocery Store A
[slug] => grocery-store-a
[term_group] => 0
[term_taxonomy_id] => 47
[taxonomy] => product_cat
[description] => FDIC, 17th Street Northwest, Washington, DC
[parent] => 45
[count] => 0
)