“[ご対応をお願いします] 2025年8月28日までにサンキューページをアップグレードしてください”
という内容でShopifyからメールがあり、対処策を模索しておりますが解決に至っておらず、
コミュニティに挙げさせていただきました。
■対処が必要な内容
内容としては、
・追加スクリプト
の設定ができなくなり、
・設定>お客様のイベント>アプリまたはカスタムイベント
で対処が必要ということで、
コンバージョンタグなど直接Javascriptを埋め込み・動作していたものが使えなくなってしまうため、問題です。
■具体例
例えば、MicroSoftのClarityを注文完了ページに埋め込む場合、
今までは、追加スクリプトとしてClarityのJavascriptタグを設置することで対処できておりました。
ただ今後は、アプリで実装できるものがなさそうなため、
・お客様のイベント>カスタムイベント
で実装するしかないと思っております(方法として下記2つのアプローチがあり、検証しました)。
▼方法①:GTM経由で、Clarityのタグが配信できるか?
Shopify Help Center | Googleタグマネージャーのカスタムピクセル
の手順で、GTMにShopify独自のカスタムイベントがトリガーできることは確認できました。
これにより、GAにカスタムイベントを配信することは可能でした。
ただ、GTMで、
・Shopifyのcheckout_completed カスタムイベントとするトリガーを作成して、
・ClarityのタグをGTMで配信する
方法を試みましたが、Shopify側でクロスドメインのブロックが働いているようで、
Clarity側にデータ送信ができませんでした。
▼方法②:ClarityのタグをShopifyのカスタムピクセルで埋め込む?
上記のクロスドメインの制約があることを前提にすると、カスタムピクセルで埋め込む必要があると考えます。
上記のGTMの記述に習うと、下記のような記述になるでしょうか。
// Define dataLayer and the gtag function.
window.dataLayer = window.dataLayer || [];
(function(c,l,a,r,i,t,y){
c[a]=c[a]||function(){(c[a].q=c[a].q||[]).push(arguments)};
t=l.createElement(r);t.async=1;t.src="https://www.clarity.ms/tag/"+i;
y=l.getElementsByTagName(r)[0];y.parentNode.insertBefore(t,y);
})(window, document, "clarity", "script", "★★★★★★★");
analytics.subscribe("page_viewed", (event) => {
window.dataLayer.push({
event: "page_viewed",
timestamp: event.timestamp,
id: event.id,
client_id: event.clientId,
url: event.context.document.location.href,
page_title: event.context.document.title,
});
});
fetch('https://www.clarity.ms/tag/', {
method: 'POST',
body: JSON.stringify(payload),
keepalive: true,
});
page_viewedを指定することで、チェックアウト画面でも
・clarity.jsのタグが読み込みされることは確認できました。
・ただ、clarity側にデータを送信するには、
必要な各種データをカスタムイベントで定義して送信が必要と思います。
■現状の結論
長くなりましたが、上記より、店舗・制作会社側で、
Clarityなど複雑な情報を送信するJavascriptタグを再現するカスタムイベントを実装するのは、
かなり困難(ほぼ不可能)であると考えます(どのような仕様かサービス提供者側でないとわからないため)。
そのため、各Clarityなどのサービス提供者側で
・設定>お客様のイベント>アプリ を準備する
・設定>お客様のイベント>カスタムイベント の記述例を作成する
を準備してもらうしかないと考えます。
■ご質問
Shopifyをご利用の各店舗様・制作会社で
この問題に対処策を見出せている方がいらっしゃれば、
ぜひ参考にさせていただきたいと思っております。
・同様の問題を抱えている
・このサービスのコンバージョンタグはこうやればうまくいった
などがあれば、お伺いしたいです。