ピクセル-JS.txt

ファイル内容
以下のコードをお願いします。

<script>
  (function() {
    // ユーザーの流入元(referrer)を取得
    var referrer = document.referrer || "Direct"; // 直接流入の場合は"Direct"として処理

    // URLのパラメータ(例: utm_sourceやutm_mediumなど)を取得する関数
    function getUrlParameter(name) {
      return new URLSearchParams(window.location.search).get(name);
    }

    // マーケティングチャネル(例: utm_source、utm_mediumなど)
    var channelSource = getUrlParameter("utm_source");
    var channelMedium = getUrlParameter("utm_medium");
    var channelCampaign = getUrlParameter("utm_campaign");

    // イベントのタイプ(購入、カート追加など)
    var eventType = "purchase"; // 例えば購入イベントの場合

    // 必要なデータをJSON形式でまとめる
    var eventData = {
      referrer: referrer,  // 流入元
      channel: {
        source: channelSource || "unknown",  // utm_sourceなど
        medium: channelMedium || "unknown",  // utm_mediumなど
        campaign: channelCampaign || "unknown" // utm_campaignなど
      },
      eventType: eventType  // イベントのタイプ(例: 購入、カート追加など)
    };

    // ピクセルサーバーにデータを送信
    fetch("https://x162-43-39-30.static.xvps.ne.jp/api/pixel", {
      method: "POST",
      headers: {
        "Content-Type": "application/json"
      },
      body: JSON.stringify(eventData)  // JSONデータを送信
    })
    .then(function(response) {
      if (!response.ok) {
        throw new Error("Network response was not ok: " + response.statusText);
      }
      return response.json();
    })
    .then(function(data) {
      console.log("Pixel response:", data);
    })
    .catch(function(error) {
      console.error("Pixel error:", error);
    });
  })();
</script>