【问题标题】:Adding UTM parameters to Woocommerce order information (Meta box)将 UTM 参数添加到 Woocommerce 订单信息(元框)
【发布时间】:2020-10-26 21:15:51
【问题描述】:

我想将 UTM 参数存储到 Woocommerce 订单信息(元框)。所以我需要在结帐过程中捕捉到这一点。是否有任何可用的代码 sn-p 可以实现这一点?

【问题讨论】:

    标签: woocommerce hook-woocommerce utm


    【解决方案1】:

    只需以下示例代码即可开始使用。这是所需的步骤:

    1. 获取 javascript 以在用户访问时将 UTM 参数写入 cookie,或者您可以使用 PHP SESSION。
    2. woocommerce_checkout_update_order_meta 操作期间,让 PHP 读取 cookie/会话并将 cookie 值保存到订单元中。
    3. add_meta_boxes 操作期间在元框中显示订单元数据。
    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;
      }
    }
    

    参考资料:

    https://github.com/js-cookie/js-cookie

    https://developer.wordpress.org/reference/functions/add_meta_box/

    https://docs.woocommerce.com/wc-apidocs/source-class-WC_Checkout.html#400

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-16
      • 2018-04-16
      • 1970-01-01
      • 2021-02-12
      • 2013-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多