חיפוש ]

העברת UTM Parameters בין עמודים, אתרים או דומיינים

באחד הפרוייקטים האחרונים שלי הלקוח ביקש כי אעביר את ה UTM Parameters איתם מגיע המשתמש מהקמפיינים השונים לעמודים אחרים באתר. אם נדייק, הבקשה הייתה כי אותם פרמטרים יועבר כשהלקוח לוחץ ספציפית על אחד הקישורים או ההנעות לפעולה המובילות לאפליקציה אינטרנטית הנמצאית תחת דומיין אחר.

אז מכיוון וזו בקשה מאד הגיונית ואולי אפילו די שכיחה (במיוחד בכדי להעביר פרמטרים אלו מדפי נחיתה), אשתף אתכם בפוסט זה בסקריפט בו השתמשתי ואתאר בקצרה כיצד הוא עובד. יש לציין הסקריפט נלקח מהאתר של Marek Lecián (עם שינוי קל).

מה הסקריפט עושה?

הסקריפט סורק את כל הקישורים באתר, וכשהוא מוצא קישור המוביל לאותה אפליקציה חיצונית הוא דבר ראשון בודק אם הקישור מכיל utm parameters כלשהם. אם אלו אינם קיימים בקישור אז הוא מוסיף לקישורים המדוברים את אותם utm parameters איתם הגיע המשתמש, כלומר את אותם פרמטרים הקיימים בכתובת ה url.

דוגמה תסביר זאת טוב יותר. נניח והגעתי לדף נחיתה כלשהו עם הפרמטרים הבאים:

https://lp.co.il/?utm_source=google&utm_medium=cpc&utm_campaign=name-campaign&utm_term=keyword&utm_content=fb-banner

ונניח שקיים בדף הנחיתה קישור כלשהו לאפליקציה שלנו, לצורך הדוגמה בכפתור מסויים קיים הקישור הבא:

https://app.co.il/

שימוש בסקריפט זה ישנה קישור זה לקישור הבא:

https://app.co.il/?utm_source=google&utm_medium=cpc&utm_campaign=name-campaign&utm_term=keyword&utm_content=fb-banner

הסקריפט נראה כך:

<script>
(function () {
    const targetDomain = "app.co.il"; // Set target domain
    const urlParams = new URLSearchParams(window.location.search);
    const utmParams = [...urlParams.entries()]
        .filter(([key]) => key.startsWith('utm_'))
        .map(([key, value]) => `${key}=${value}`)
        .join('&');

    if (utmParams) {
        document.querySelectorAll('a[href]').forEach(link => {
            if (link.href.includes(targetDomain) && !link.href.includes("utm_")) {
                link.href += (link.href.includes('?') ? '&' : '?') + utmParams;
            }
        });
    }
})();
</script>

מספר נקודות שיש לציין

  • שימו לב כי בשורה מספר 3 נמצא הדומיין המדובר (הקישור לאפליקציה) אשר רק קישורים לדומיין ספציפי זה הנמצאים בעמוד יהיו מושפעים מהסקריפט. כלומר במקרה זה כל קישור המכיל את הדומיין app.co.il יושפע מהשינוי.
  • על מיקום הסקריפט להיות ממוקם בסופו של כל עמוד. אם אתם משתמשים בגוגל תג מנג׳ר על הסקריפט לרוץ ב DOM Ready action.
  • הסקריפט אינו רלוונטי ל Organic Referrers.
  • בסקריפט שהצגנו אנו מגדירים דומיין מסויים, אך ניתן לההשתמש בכל כתובת url שתרצו.

עד כאן. כל שיפור או רעיון לשדרג סקריפט זה יתקבלו בברכה… 🙂

  • חתול 10 אוגוסט 2023, 22:05

    לא משתמשים ב-var כמעט אף פעם. במקרה הזה const יתאים.

    • רועי יוסף 10 אוגוסט 2023, 22:54

      קיבלת const 🙂

      • חתול 10 אוגוסט 2023, 23:00

        יופי, אגב גם utm_params יכול להיות const. אם שמרת מערך בתוך קבוע אז אפשר לעדכן אותו.

תגובה חדשה

הוסיפו קוד באמצעות הכפתורים מטה. למשל, בכדי להוסיף PHP לחצו על הכפתור PHP והוסיפו את הקוד בתוך השורטקוד. מצאתם שגיאה בפוסט? עדכנו אותנו...

Savvy WordPress Development