Search

העברת 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";  //<------- Change This
        const parameters = new URLSearchParams(window.location.search);
        let utm_params = [];
        parameters.forEach(function (value, key) {
            if (key.startsWith('utm_')) {
              utm_params.push(key + '=' + value)
            }
        })
        let utm_search = utm_params.join('&');

        if (utm_params.length != 0) {
            // links update
            document.querySelectorAll('a[href]').forEach(function (ele, idx) {
                if ((ele.href.indexOf(targetdomain) !== -1) && (ele.href.indexOf("utm_") == -1)) {
                    ele.href = ele.href + (ele.href.indexOf('?') === -1 ? '?' : '&') + utm_search;
                }
            });
        }
    })();
</script>

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

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

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

רועי יוסף
רועי יוסף

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

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

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

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

      קיבלת const 🙂

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

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

תגובה חדשה

Up!
לבלוג