【问题标题】:Adding custom message on WooCommerce thank you page based on product ID根据产品 ID 在 WooCommerce 感谢页面上添加自定义消息
【发布时间】:2020-04-02 12:36:43
【问题描述】:

我使用插件“代码片段”将以下代码放入wordpress中。

我用以下代码更改了字幕:

add_filter('woocommerce_thankyou_order_received_text', 'woo_change_order_received_text', 10, 2 );
function woo_change_order_received_text( $str, $order ) {
    $new_str = 'Deine Bestellung ist bei uns eingegangen und wird umgehend von uns bearbeitet.';
    return $new_str;
}

效果很好,但是当客户购买特定产品时,我想添加不同的文字

我找到了以下代码:

<?php $present = false; ?>
<?php foreach( $order->get_items() as $item ):  
    $_product = wc_get_product( $item['product_id'] );
         // Add whatever product id you want below here
        if ( $item['product_id'] == 643 ):  
                $present = true; ?>

<?php endif; endforeach; ?>

<?php if( $present ): ?>

    <p class="woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received"><?php echo apply_filters( 'woocommerce_thankyou_order_received_text', __( 'Thank you for buying this shirt', 'woocommerce' ), $order ); ?></p>
<?php else: ?>

    <p class="woocommerce-notice woocommerce-notice--success woocommerce-thankyou-order-received"><?php echo apply_filters( 'woocommerce_thankyou_order_received_text', __( 'Thank you. Your order has been received.', 'woocommerce' ), $order ); ?></p>
<?php endif; ?>

但是当我将它添加到主题的functions.php或插件“代码sn-ps”时它失败了。

【问题讨论】:

    标签: php wordpress woocommerce product orders


    【解决方案1】:

    您可以使用以下内容,在此答案中产品 id = 30

    function filter_woocommerce_thankyou_order_received_text( $str, $order ) {
        // Get items
        $items = $order->get_items();
     
        foreach ( $items as $item ) {
            // Compare
            if ( $item->get_product_id() == 30 ) {
                $str = __( 'Deine Bestellung ist bei uns eingegangen und wird umgehend von uns bearbeitet.', 'woocommerce' );
                break;
            }
        }
        
        return $str;
    }
    add_filter( 'woocommerce_thankyou_order_received_text', 'filter_woocommerce_thankyou_order_received_text', 10, 2 );
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-22
      • 1970-01-01
      • 1970-01-01
      • 2020-07-18
      • 2019-01-04
      相关资源
      最近更新 更多