我正在尝试获取特定类别的父类别。 使用,
$slug = $_REQUEST['product_cat'];
$category = get_term_by( 'slug', $slug, 'product_cat' );
$catid = $category->term_id;
$categories = get_category_parents( $catid );
print_r($categories);
我可以得到猫咪。但无法使用此获取父类别。 我在woo-commerce模板的loop-start.php中使用此代码。
我正在追踪错误。
注意:尝试在第53行的/var/www/html/printvenue_new/wp-includes/category-template.php中获取非对象的属性
注意:尝试在第55行的/var/www/html/printvenue_new/wp-includes/category-template.php中获取非对象的属性
我想要父类别如何。
答案 0 :(得分:1)
我希望我能正确理解你。 AFAIK,woocommerce使用自定义分类法,而不是分类法category
。因此,您的代码将无法正常工作。
现在有类似get_category_parents()
的功能用于自定义分类。您需要创建自己的自定义函数,例如@ialocin描述here
在分类法页面上,您可以使用get_queried_object()
获取当前查询的对象(正在查看的术语)。从这里您可以获得父ID
$parent_id = get_queried_object()->parent;
如果$parent_id
为0
,则表示它是最高级别的最高级别字词。任何其他值意味着它有父。然后,您可以使用父ID使用get_term_by()
简单地获取父级,依此类推。
希望有所帮助
答案 1 :(得分:0)
尝试使用此类获取父类别:
private DateTime dateTimeUpdated = default(DateTime);
public DateTime DateTimeUpdated
{
get
{
return (this.dateTimeUpdated== default(DateTime))
? this.dateTimeUpdated= DateTime.Now
: this.dateTimeUpdated;
}
set { this.dateTimeUpdated= value; }
}
您想在此添加两个或更多参数。