人気ワード

Copy Title & URL

Bookmark

Share

WordPressのプラグイン WooCommerce 利用時に成果計測を行う方法

目次

  1. プラグイン WooCommerce 利用時の成果計測
    1. 事前準備
    2. 商品登録時の注意点
    3. Cookie発行ファイルと着地点タグの設置
    4. 成果地点タグの設置
    5. 成果の確認

プラグイン WooCommerce 利用時の成果計測

WordPressのeコマースプラグインWooCommerceでネットショップを構築している環境で、アフィリエイト計測を行う方法を解説します。

本マニュアルでは、WooCommerceで既にショップ開設していることを前提に進めます。

参考(外部サイト):https://ja.wordpress.org/plugins/woocommerce/

1. 事前準備

アフィリコード・システムで発行するトラッキングタグ(計測タグ)をWordPressの任意の記事内に出力できるプラグインAffilicode-Tag-Settingを公開しています。商品ページなどの広告遷移先(着地点)を「投稿」で作成する場合は、こちらの利用を推奨します。

WordPressでAffilicode-Tag-Settingプラグインを利用する方法

【アフィリコード・システム】WooCommerce成果計測_アフィリコードトラッキングタグ設定

2. 商品登録時の注意点

アフィリコード・システム側の報酬設定は「商品テーブル」を使用します。
商品テーブル機能を使用する方法

WooCommerce側の商品登録時に、SKU(在庫保管単位)の値を設定し、商品テーブルIDと同一にしておくことで計測が可能になります。

【アフィリコード・システム】WooCommerce成果計測_商品登録

3. Cookie発行ファイルと着地点タグの設置

Cookie発行ファイルは、WordPressを設置した階層(ルートディレクトリ)にアップロードしてください。
例)インストール先が「https://example.com/wp/」なら、wpディレクトリにアップロード。

次に、着地点タグを「広告詳細」より取得し、Cookie発行ファイルの読み込み先を相対パスから絶対パスに変更します。変更後、広告遷移時の着地点ページに設置します。

【アフィリコード・システム】WooCommerce成果計測_着地点タグ
着地点タグ編集箇所
var PDIR = "./";

var PDIR = "https://example.com/wp/";
※https://example.com/wp/ の部分は、Cookie発行ファイル設置先を記述

着地点タグ変更例

<script>
window.acs_cbs = window.acs_cbs || [];
(function acsKeep(){
var PK = "p";
var IMK = "im";
var LKEYS = {cid : ["cid", "CL_", "ACT_"], gclid : ["plid", "PL_", "APT_"]};
var DKEYS = ["gclid", "fbclid", "yclid", "ttclid", "ldtag_cl", "ss", "msi"];
var PDIR = "https://example.com/wp/";
var durl = "https://システム設置先URL/direct.php";
  ========== 省略 ============
</script>
WordPressのパーマリンク設定について
着地点ページを投稿機能で作成し、デフォルトのパーマリンク設定にしている場合、遷移先URLのパラメータに「p」が付与されます(例:http://example.com/other/wp/?p=123)。アフィリコード・システムの広告ID「p」パラメータと重複する問題が発生するため、以下を参考に対応を行ってください。
トラッキングパラメータの「p」を変更する方法
アフィリエイトリンクをクリックしても意図するページに遷移できない

カートドメインと異なる記事LPなどを挟む場合は、複数ドメインジのタグ設置手順で設定します。

4. 成果地点タグの設置

成果地点タグは、woocommerceフォルダ配下 orderフォルダ内のorder-details.phpファイルに追記して、FTPでアップロードします。

プラグイン利用時の注意点
プラグインインストール時、/wp-content/plugins/配下に関連ファイルが展開されます。
order-details.phpは、/wp-content/plugins/woocommerce/templates/order/配下にありますが、このファイルに直接記述するとプラグインアップデート時に上書きされる恐れがあります。
ご利用のテーマフォルダ内にwoocommerceフォルダ(/wp-content/themes/テーマ名/woocommerce/)を作成し、上記のtemplatesフォルダの中身をアップロードして作業する、バックアップ管理などの対応をしてください。
【アフィリコード・システム】WooCommerce成果計測_成果地点設置ファイル

order-details.phpを追記していきます。101行目、<section class="woocommerce-order-details">の閉じタグ</section>を検索し、次行102行目以降をいったん削除します。

<section class="woocommerce-order-details">
    <?php do_action( 'woocommerce_order_details_before_order_table', $order ); ?>
   ======= 省略 ==========
</section>  =====>> 101行目

102行目以降に以下のコードを追記します。3、4行目の「広告ID」と「アフィリコード・システム設置先URL」は各々の値に書き換えてください。
※トラッキングコードの実質的な追記箇所は、</script>閉じタグまでですが、先ほど削除した記述があるため、最後尾まで本コードで上書きしてください。

商品テーブルの値や注文IDは、本コードの設置で動的に返却されます。

<?php
    // ACS Tracking Param Data
    $acs_p = '広告ID';
    $acs_url = 'アフィリコード・システム設置先URL';

    $pg_list = [];
    foreach ( $order_items as $item_id => $item ) {
        $product = $item->get_product();
        $order_subtotal = $item->get_subtotal();
        $order_subtotal = number_format( $order_subtotal, 0 );
        $turn_subtotal = str_replace(',','',$order_subtotal);
        $order_quantity = $item->get_quantity();
        $product_sku    = $product->get_sku();

        $pg_list[] = array(
            'item_id' => $product_sku,
            'price' => $turn_subtotal / $order_quantity,
            'quantity' => $order_quantity
        );
    }

    $tmp = "";
    foreach($pg_list as $params) {
        $tmp .= "pg[]=".$params["item_id"].".".$params["price"].".".$params["quantity"]."&";
    }

    $pg_params = rtrim($tmp, "&");
?>
<script>
(function acsTrack(){
var PV = "<?php echo $acs_p; ?>";
var _ARGSV = "order-<?php echo $order_id; ?>";
var _PGV = "<?php echo $pg_params; ?>";
var KEYS = {cid : ["CL_", "ACT_", "cid_auth_get_type"], plid : ["PL_", "APT_", "plid_auth_get_type"]};
var turl = "<?php echo $acs_url ?>track.php?p=" + PV + "&args=" + _ARGSV + "&" + _PGV;
var cks = document.cookie.split("; ").reduce(function(ret, s){ var kv = s.split("="); if(kv[0] && kv[1]) ret[kv[0]] = kv[1]; return ret; }, []);
turl = Object.keys(KEYS).reduce(function(url, k){ var vk = KEYS[k][0] + PV; var tk = KEYS[k][1] + PV; var v = "", t = ""; if(cks[vk]){ v = cks[vk]; if(cks[tk]) t = cks[tk]; }else if(localStorage.getItem(vk)){ v = localStorage.getItem(vk); t = "ls"; } if(v) url += "&" + k + "=" + v; if(t) url += "&" + KEYS[k][2] + "=" + t; return url; }, turl);
var xhr = new XMLHttpRequest(); xhr.open("GET", turl); xhr.send(); })();
</script>
<?php
/**
 * Action hook fired after the order details.
 *
 * @since 4.4.0
 * @param WC_Order $order Order data.
 */
do_action( 'woocommerce_after_order_details', $order );

if ( $show_customer_details ) {
    wc_get_template( 'order/order-details-customer.php', array( 'order' => $order ) );
}

5. 成果の確認

テスト注文を行い、成果テストを行います。

成果発生の確認だけでなく、トラッキングログで認証方式の確認を行ってください。 Cookie発行ファイル設置時は「cid(GET認証)、Cookie(PHP)経由」で認証されていればOKです。

トラッキングログ

args値には「注文ID」が返却されます。商品テーブルの値と共に、WooCommerce管理画面で注文状況の確認を行ってください。

成果の確認

関連記事

アフィリコード・システム

https://system.affilicode.jp/

アフィリエイト広告配信システム

本格的なASP運営から自社アフィリエイト運用
導入実績1,000社以上!多機能アフィリエイトシステム

おすすめ記事