Woocommerce 将UTM参数添加到商业订单信息(元框)

Woocommerce 将UTM参数添加到商业订单信息(元框),woocommerce,hook-woocommerce,utm,Woocommerce,Hook Woocommerce,Utm,我想将UTM参数存储到商业订单信息(metabox)。所以我需要在结帐过程中捕捉到这一点。是否有任何代码片段可以实现这一点?下面只提供一个示例代码。这是所需的步骤: 让javascript在用户访问时将UTM参数写入Cookie,或者您可以使用PHP会话 让PHP读取cookie/session,并在woocommerce\u checkout\u update\u order\u meta操作期间将cookie值保存到order meta中 在添加元框操作期间,在元框中显示订单元 参考资料:

我想将UTM参数存储到商业订单信息(metabox)。所以我需要在结帐过程中捕捉到这一点。是否有任何代码片段可以实现这一点?

下面只提供一个示例代码。这是所需的步骤:

  • 让javascript在用户访问时将UTM参数写入Cookie,或者您可以使用PHP会话
  • 让PHP读取cookie/session,并在woocommerce\u checkout\u update\u order\u meta操作期间将cookie值保存到order meta中
  • 在添加元框操作期间,在元框中显示订单元
  • 参考资料:

    function afl_woocommerce_checkout_update_order_meta($order_id, $data){
      $utm_source = $_COOKIE['utm_source'];
    
      add_post_meta($order_id, 'utm_source', $utm_source);
    }
    
    add_meta_box(
      'afl-wc-utm-meta-box',
      'AFL WooCommerce UTM Tracker',
      'afl_action_order_meta_box_display',
      'shop_order',
      'side',
      'low'
    );
    
    function afl_action_order_meta_box_display(){
      global $post;
    
      if (!empty($post->ID)) {
     
       $utm_source = get_post_meta($post->ID, 'utm_source', true);
       echo 'UTM Source: ' . $utm_source;
      }
    }