本篇文章更新時間:2021/06/08
如有資訊過時或語誤之處,歡迎使用 Contact 功能通知。
一介資男的 LINE 社群開站囉!歡迎入群聊聊~
如果本站內容對你有幫助,歡迎使用 BFX Pay 加密貨幣 或 新台幣 贊助支持。
當前有一個案子,討論到了聯盟行銷的分潤問題。技術面上就是要知道「是誰引薦了這張訂單」。
市面上有很多聯盟行銷外掛,但用不到這麼多的功能,一來浪費錢,二來浪費主機效能。
本篇筆記一個簡單實作的方式,如下:
function mxp_product_redirects() {
$affiliate = isset($_GET['affiliate']) ? $_GET['affiliate'] : "";
if ($affiliate != '') {
// 確認有無聯盟行銷會員編號參數,有就寫入 WooCommerce Session 裡
WC()->session->set('mxp_affiliate_id', $affiliate);
}
}
add_action('template_redirect', 'mxp_product_redirects');
function mxp_before_checkout_create_order($order, $data) {
// 取得聯盟行銷會員編號
$mxp_affiliate_id = WC()->session->get('mxp_affiliate_id');
// 將聯盟行銷會員編號寫入訂單
$order->update_meta_data('mxp_affiliate_id', $mxp_affiliate_id);
}
add_action('woocommerce_checkout_create_order', 'mxp_before_checkout_create_order', 20, 2);
含註解 16 行,就能把「誰引薦的」資訊寫入結帳的訂單資訊裡。
這裡不是要說那些聯盟行銷外掛不好,他們都很不錯,功能很強大。但如果需求只有像我這麼簡單:「把推薦人編號寫入訂單,一段時間後才調訂單資料統計」那還真不用到太複雜的聯盟行銷外掛。
不過若是會員們想在會員專區看自己的推薦紀錄或業跡時,就要另外再處理囉!
對哦,就是要在補功能了。可以循序漸進的發生,不一定一次就要這麼完整。