פרויקט Accelerated Mobile Pages (AMP) הוא אתר אינטרנט בקוד פתוח פלטפורמה שעוזרת לשפר את הביצועים של תוכן האינטרנט. AMP כולל תמיכה מובנית ב-Google Tag וב-Google Tag Manager. במדריך הזה נסביר איך להגדיר את Google Analytics לדפי AMP.
התקנה
Google Tag מאפשר להתקין את Google Analytics, Google Ads ועוד מוצרי Google בדפי AMP. Google Tag Manager מגדיר מאגר תגים של AMP וגם מאפשר ליצור הגדרות מתקדמות ולפרוס צדדים שלישיים מהממשק של Tag Manager.
בוחרים את הפלטפורמה המועדפת מתוך הלחצנים הבאים:
Google Tag
בהטמעת AMP של gtag.js נעשה שימוש במסגרת amp-analytics
כדי
יכולת לבצע ניתוח נתונים באתר ה-AMP. הנתונים יכולים להיות
נשלחים מדפי AMP אל Google Ads, אל Google Analytics ואל מוצרים אחרים של Google.
מאותה הטמעה של gtag.js.
התקנה
כדי להגדיר את gtag.js בדף AMP, צריך תחילה לוודא
כלל את הרכיב amp-analytics
בתוך התג <head>
בדף:
<script async custom-element="amp-analytics"
src="https://cdn.ampproject.org/v0/amp-analytics-0.1.js">
</script>
בשלב הבא, מוסיפים את Google Tag לדף ה-AMP כרכיב JSON בתוך
התג <body>
בדף. מחליפים את <TARGET_ID>
ב-
מזהה התג של המוצרים (למשל, Google Ads, Google Analytics) שאליהם רוצים
כדי לשלוח נתונים:
<amp-analytics type="gtag" data-credentials="include">
<script type="application/json">
{
"vars" : {
"gtag_id": "<TARGET_ID>",
"config" : {
"<TARGET_ID>": { "groups": "default" }
}
}
}
</script>
</amp-analytics>
כדי להגדיר כמה מוצרים ב-Google Tag, אין צורך להטמיע את
את התג כולו מאותו מוצר. צריך רק להוסיף את מזהה היעד
פקודת config
הנפרדת.
<amp-analytics type="gtag" data-credentials="include">
<script type="application/json">
{
"vars" : {
"gtag_id": "<TAG_ID>",
"config" : {
"<TAG_ID>": { "groups": "default" },
<!-- Additional IDs -->
}
}
}
</script>
</amp-analytics>
לקבלת מידע נוסף, עיינו במסמכי העזרה בנושא amp-analytics
.
טריגרים של אירועים
כדי לשלוח נתונים ספציפיים למוצרים, צריך להגדיר טריגרים על סמך אירועים
כמו קליקים. הטריגרים ב-gtag.js ב-AMP פועלים לפי אותן דפוסי JSON כמו
amp-analytics
הגדרות הפעלה אחרות.
הדוגמה הזו ממחישה איך לשלוח אירוע click
ל-Google Analytics.
הערך של selector
הוא סלקטור ב-CSS שמאפשר לציין איזה רכיב
מטורגט. הערך on
מציין את סוג האירוע, ובמקרה הזה הוא
אירוע click
. בקטע vars
, מציינים את סוג האירוע ב:
event_name
ומוסיפים עוד פרמטרים לפי הצורך.
"triggers": {
"button": {
"selector": "#the-button",
"on": "click",
"vars": {
"event_name": "login",
"method": "Google"
}
}
}
בנוסף לאירועים המומלצים, אתם יכולים לציין אירועים מותאמים אישית משלכם.
דומיינים של קישורים
המנגנון לקישור בין דומיינים מאפשר להציג שני אתרים קשורים או יותר בדומיינים נפרדים
שנמדדת כיחידה אחת. כדי לציין את הדומיינים שצריך לקשר, השתמשו ב-
"linker": { "domains": [...] }
:
<amp-analytics type="gtag" data-credentials="include">
<script type="application/json">
{
"vars" : {
"gtag_id": "<TARGET_ID>",
"config" : {
"<TARGET_ID>": {
"groups": "default",
"linker": { "domains": ["example.com", "example2.com", "foo.example.com"] }
}
}
}
}
</script>
</amp-analytics>
האפשרות לקשר לדומיין הקנוני ממטמון ה-AMP מופעלת
כברירת מחדל. כדי להשבית את האפשרות לקשר תנועה מדומיין, צריך להוסיף "linker":
"false"
לפרמטרים config
:
<amp-analytics type="gtag" data-credentials="include">
<script type="application/json">
{
"vars" : {
"gtag_id": "<TARGET_ID>",
"config" : {
"<TARGET_ID>": {
"groups": "default",
"linker": "false"
}
}
}
}
</script>
</amp-analytics>
דוגמה מלאה
הקוד לדוגמה ממחיש הדגמה מלאה של דף AMP שמכיל
יוצר דף AMP יחיד ושולח אירוע button-click
אל Google
נתוני Analytics כשלוחצים על הלחצן. מחליפים את <TAG_ID>
בערך תקין
מזהה תג:
<!doctype html>
<html ⚡ lang="en">
<head>
<meta charset="utf-8">
<link rel="canonical" href="self.html" />
<title>AMP gtag demo</title>
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1">
<style amp-boilerplate>body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}</style><noscript><style amp-boilerplate>body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}</style></noscript>
<!-- Load AMP -->
<script async src="https://cdn.ampproject.org/v0.js"></script>
<!-- Load amp-analytics -->
<script async custom-element="amp-analytics" src="https://cdn.ampproject.org/v0/amp-analytics-0.1.js"></script>
</head>
<body>
<!-- Configure analytics to use gtag -->
<amp-analytics type="gtag" data-credentials="include">
<script type="application/json">
{
"vars": {
"gtag_id": "<TAG_ID>",
"config": {
"<TAG_ID>": {}
}
},
"triggers": {
"button": {
"selector": "#the-button",
"on": "click",
"vars": {
"event_name": "login",
"method": "Google"
}
}
}
}
</script>
</amp-analytics>
<h1>Welcome to the mobile web</h1>
<div>
<button type="button" id="the-button">Example: Log in with Google</button>
</div>
</body>
</html>
פתרון בעיות
באמצעות amptagtest.appspot.com כדי לאמת את הגדרת התיוג, או שתוכל לעשות זאת באופן ידני
להבטיח שהערך cid
עקבי בכל הדומיינים באמצעות
הבאים:
- חשוב לנקות את קובצי ה-Cookie או להשתמש במצב פרטי.
- אם
cid
לא נמצא בקובץ cookie של Google Analytics, יכול להיות שגם בכרטיסייה 'רשת' של דפדפן האינטרנט. חיפוש שלcollect request
, והמטען הייעודי (Payload) צריך להכיל ערך שלcid
. אחרי שעוברים מ-Google CDN לאתר הלקוח, צריך להעביר את
cid
ואת הערךgclid
באמצעות קישוט של כתובת URL:**_Linker format: mydomain.com?\_gl=1\*1ie2jr6\*\_ga\*WHFTa3JPckw2TGxZSzY5b3V1cVNVSmRIREI.\*gclid\*dGVzdA.._**
ערך ה-
cid
של דף הנחיתה הסופי צריך להיות זהה לזה של דף הנחיתה הראשוני.יש להיזהר בהפניות אוטומטיות ובשינויי דומיין בין הדף הקנוני ודפי נחיתה שאינם AMP.