【问题标题】:Woocommerce show product brand in cart pageWoocommerce 在购物车页面中显示产品品牌
【发布时间】:2021-11-07 02:32:33
【问题描述】:

我试图做的是在购物车页面的产品标题下显示品牌名称,为了测试我没有在function.php中使用function,而是直接更改为cart.php但没有成功:

$product_id = apply_filters( 'woocommerce_cart_item_product_id', $cart_item['product_id'], $cart_item, $cart_item_key );
$brands = wp_get_post_terms( $product_id, 'pwb-brand' );
foreach( $brands as $brand ) echo '<p>'.$brand->name.'</p>';

但没有显示,我用var_dump($brands)作为回报:

object(WP_Error)#37768 (3) { ["errors"]=> array(1) { ["invalid_taxonomy"]=> array(1) { [0]=> string(22) "无效类别" } } ["error_data"]=> 数组(0) { } ["additional_data":protected]=> 数组(0) { } }

我也尝试了其他方法:

wp_get_post_terms($product_id, 'product_brand', ['fields' => 'names'])

什么也不返回,同样的错误。 我做错了什么?

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:

    invalid_taxonomy 表示没有这样的taxonomy 名称为pwb-brand 或product_brand,实际上这取决于您使用的是哪个插件或主题,要找到正确的taxonomy 名称,请转到插件页面,检查您的brand 插件或者如果它在您的主题检查功能上,但简单的方法是转到管理员检查url 中的品牌页面,例如:

    /wp-admin/edit-tags.php?taxonomy=ourbrandname&post_type=our
    //-------------------------------^
    

    这是你的目标taxonomy,现在试试:

    wp_get_post_terms($product_id, 'ourbrandname', ['fields' => 'names'])
    

    【讨论】:

    • 感谢wp_get_post_terms($product_id, 'store', ['fields' =&gt; 'names'])解决
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-12-13
    • 2018-06-03
    • 2015-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-27
    相关资源
    最近更新 更多