Magento 2
FanplayrとMagento 2ストアの連携
Magento 2の拡張機能のインストールは、Magento 1.xよりも少し複雑で、開発者が行う必要があります。ウェブサイトホストまたは開発環境へのコマンドラインアクセスが必要です。
拡張機能のダウンロード
現在、拡張機能は以下のリンクから直接ダウンロードすることをお勧めします。
https://cdn.fanplayr.com/integrations/magento2/packages/fanplayr_smartandtargeted-1.6.19.zip
またはPackagistから:
composer require fanplayr/smartandtargeted
一時ディレクトリへの解凍
拡張機能の内容を一時ディレクトリに解凍します。「SmartAndTargeted」ディレクトリを以下の場所に移動またはアップロードします。
/app/code/Fanplayr/
キャッシュの無効化
管理画面にログインし、「System / Tools / Cache Management」に進みます。すべてのキャッシュタイプを選択し、ドロップダウンリストから「Disable」を選択して、「Submit」をクリックします。
コンソール: アップグレードの実行
拡張ファイルをMagento 2インストールにコピーしても、システムがそれらをスキャンするまで認識されません。これを行うには、ローカルでコンソールを開くか、リモートマシンでターミナルアクセスが必要です。
ターミナルにアクセスしたら、Magento 2インストールのルートに移動します。次に、以下のコマンドを実行します。
php bin/magento setup:upgrade
これにより、app/etc/config.php ファイルに新しいモジュールの詳細が更新されます。
このプロセス中にMagentoコンパイルの再実行を求められる場合があります。開発環境にない場合は、以下のコマンドで実行できます。
php bin/magento setup:di:compile
メモリエラーが発生する場合は、次のように実行します。
php -d memory_limit=-1 bin/magento setup:di:compile
注: ショップが開発者モードであっても、Fanplayrの統合を完了させるためにコンパイルを実行する必要がある場合があります。
Fanplayrアカウントキーの追加
管理画面で「Stores / Settings / Configuration」に進みます。左側のメニューに新しいオプション「Fanplayr / Smart And Targeted」が表示されます。
Fanplayrのアカウントマネージャーから提供されたアカウントキーを入力できるようになります。「Save Config」をクリックしてください。
キャッシュの再有効化
管理画面にログインし、「System / Tools / Cache Management」に進みます。すべてのキャッシュタイプを選択し、ドロップダウンリストから「Enable」を選択して、「Submit」をクリックします。
テスト / QA
Fanplayrがインストールされたら、Javascriptコンソールでfanplayr
変数が表示されるはずです。この変数が存在する場合、各ページタイプで期待されるすべての情報が追跡されているかを確認する必要があります。これには、特定のページタイプに移動し、Javascriptコンソールでfanplayr
変数を調べて値が追跡されているかを確認することが含まれます。
ページ固有の変数 (ユーザー追跡)
確認したい特定の変数は次のとおりです。
fanplayr._i[0].data
次のようになります。
ホームページ
ここで確認する必要がある変数はpageType
のみで、これは各ページで確認する必要があります。
- pageType: "home"
カテゴリページ
いくつかのカテゴリページを確認して、正しく追跡されていることを確認する必要があります。確認する必要がある変数は次のとおりです。
- pageType: "cat"
- categoryId: これは数値である必要があります
- categoryName: これはカテゴリ名である必要があります
製品ページ
ここでも、いくつかの製品ページを確認することをお勧めします。
- pageType: "prod"
- productId: 製品のID。
- productImage: 主要な製品画像を指すURL。
- productName: 製品の名前。
- productPrice: 製品の価格。VAT/GSTの設定の場合、税抜き価格が表示されます。
- productSku: 製品のSKU。
- productUrl: この製品ページを指すURL。
カートページ
このテストの設定は少し複雑です。以下を行ってください。
- 少なくとも2つの製品を追加します
- これらの製品のいずれかが、カートに少なくとも2つの数量を持っていることを確認します。
- カートにクーポンを適用します。
カートの詳細はすべてのページで追跡されますが、ここではカートページ自体を確認します。
- pageType: "cart"
- discount: 適用された割引額。
- discountCode: 割引に使用されたコード。
- lineItemCount: ラインアイテムの数。
- numItems: アイテムの総数量: ラインアイテム × 数量。
- subTotal: 割引、送料、税金適用前のカート合計。
- total: 送料や税金適用前で、割引適用後のカート合計。
- products: 以下の詳細を含むカート内の製品のJSON表現:
- id
- sku
- name
- price
- qty
- catId
注文追跡
注文追跡が機能していることをテストするには、上記のカートページテストと同じ設定を使用してテスト注文を進めてください。つまり、複数の製品と割引が適用されていることを確認してください。
注文を完了すると、「Thank You」または「Order Complete」ページが表示されます。このページで、Javascriptコンソールに以下の変数が表示されるはずです。
fp_sales_orders;
この変数があれば、すべてが正しく追跡されています。Fanplayrアカウントにログインして、以下に移動して注文を確認できます。
- Account / Transactions
トランザクションは作成後すぐに表示されるはずですが、セッションの追跡がアナリティクスに表示されるまでにはもう少し時間がかかります。Account / Transactionsの詳細が正しいことを再確認してください。
セッションオファー
Fanplayrには、特定のオファーをユーザーに制限し、Fanplayrによって提示された場合にのみ使用できるようにする機能があります。詳細については、実装ガイドを参照してください。
セッションオファーをテストするには、Fanplayr設定で設定したプレフィックスを持つクーポンを作成してください。
- このクーポンをカートに適用します。失敗するはずです。
fanplayr._i[0].sessionOfferUrl
Javascript変数を調べます。これは、末尾に%c
を含むhttps://myshop.com/fanplayr/coupon/session/?coupon_code=%c
のようなURLであるはずです。- 新しいタブでこのURLにアクセスし、
%c
を先ほど使用しようとしたクーポンに置き換えます。 - このクーポンを再度適用してみてください。(最低購入額などの他のクーポンの制限がなければ)正しく適用されるはずです。
上記がすべて期待通りであれば、準備完了です!ご不明な点がございましたら、お気軽にお問い合わせください。
カスタムFanplayr変数と事前実行JS
Magentoの設定によっては、Fanplayrが使用するカスタム変数を定義する必要がある場合があります。これらはJSのwindow.fanplayr.custom
で定義されます。
現在利用可能な変数は次のとおりです。
- embedUrl
- doNotTrack
- accountKey
- storeDomain
- applyToCartUrl
- sessionOfferUrl
[各変数の機能の詳細は後日追加されます]
Magento 2ではMagento 1のようにすべてのページにJSを簡単に入力できないため、Fanplayr固有のコードが埋め込まれる前にJSスニペットを追加する機能が追加されました。
コードは「Stores / Settings / Configuration / Fanplayr / Smart and Targeted / Extras」に移動して入力します。
_embedUrl_を変更するために追加するJSの例は以下の通りです。
カスタム変数
- embedUrl: Fanplayrが内部Fanplayr呼び出しにアクセスするために使用するデフォルトのベースURLを上書きするために使用します。
- doNotTrack: 真と評価される何らかの値に設定されている場合、このページでは追跡を行いません。
- accountKey: Fanplayrアカウントキーを上書きするために使用します。
- storeDomain: ドメインを上書きするために使用します。例: 言語ごとにドメインを追跡する。
- applyToCartUrl: カート適用URLを上書きするために使用します。embedUrlが変更された場合に設定が必要になることがあります。
- sessionOfferUrl: セッションオファーURLを上書きするために使用します。embedUrlが変更された場合に設定が必要になることがあります。