我创建了一个递归函数,我需要的是获取该产品的父类别描述和 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;
}
现在,当我运行此代码时,我得到了正确的描述。但是,如果我删除任何退货,那么它将无法正常工作。它显示空白。(这样可以吗?我觉得代码错了?)
第二:我需要 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
)