首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于变化更改WooCommerce变量产品标题

基于变化更改WooCommerce变量产品标题
EN

Stack Overflow用户
提问于 2017-07-17 20:28:46
回答 1查看 3K关注 0票数 0

我在一个定制的选择框中对我的一组产品进行了编码,这些产品根据用户的选择更改价格。这是很好的工作,但现在我需要改变产品的标题也根据他们的选择。

基本上,如果选择1,则产品名称保持不变。但是选项2是被选中的,我需要在产品标题的末尾加上"-RZ“。

我不确定我是否能在“woocommerce_before_calculate_totals”钩子中做到这一点,因为我改变了价格,但是如果有人知道我应该使用的钩子和通过PHP访问当前产品标题的代码,那就太棒了。

下面的代码可以改变价格,如果有帮助的话:

代码语言:javascript
运行
复制
function calculate_core_fee( $cart_object ) {
    if( !WC()->session->__isset( "reload_checkout" )) {
        /* core price */

        //echo $additionalPrice;
        //$additionalPrice = 100;
        foreach ( $cart_object->cart_contents as $key => $value ) {
            $product_id = $value['product_id'];
            if( isset( $value["addOn"] ) && $value["addOn"] == $product_id) {                
                    $additionalPrice = $value['core'];
                    /* Woocommerce 3.0 + */
                    $orgPrice = floatval( $value['data']->get_price() );
                    //echo $additionalPrice;
                    //echo $orgPrice;
                    $value['data']->set_price( $orgPrice + $additionalPrice );

            }
        }
    }
}
add_action( 'woocommerce_before_calculate_totals', 'calculate_core_fee', 99 );

我知道,如果钩子在购物车、结帐或订单页面上,而不是在单一产品页面上,则可能需要获取名称并将其存储在会话变量中,以便稍后使用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-18 06:22:50

是的,这在相同的钩子中是可能的。您可以使用类WC_Productget_name()set_name()方法操作产品标题。但是关于价格,您应该设置并获得一个定制的cart字段值(就像$additionalPrice = $value['core'];__一样)。

参见这里一个简单的相关答案:Changing WooCommerce cart item names

所以你可以有这样的东西(只是一个假的例子):

代码语言:javascript
运行
复制
// Get your custom field cart value for the user selection
$userSelection = $value['user_selection'];
// Get original title
$originalTitle = $value['data']->get_name();
// Conditionally set the new item title
if($userSelection == 'option2')
    $value['data']->set_name( $originalTitle . '-RZ' );
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45153138

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档