פרויקט 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
framework כדי לאפשר לכם להטמיע ניתוח נתונים באתר ה-AMP שלכם. אפשר לשלוח נתונים מדפי AMP אל Google Ads, Google Analytics ומוצרים אחרים של Google
מאותה הטמעה של gtag.js.
התקנה
כדי להגדיר את Google Tag (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
. אחרי ההעברה מ-CDN של Google לאתר הלקוח, יש להעביר את הערך
cid
והערךgclid
באמצעות קישוט של כתובת URL:**_Linker format: mydomain.com?\_gl=1\*1ie2jr6\*\_ga\*WHFTa3JPckw2TGxZSzY5b3V1cVNVSmRIREI.\*gclid\*dGVzdA.._**
דף הנחיתה הסופי צריך להיות זהה לערך
cid
שמופיע בדף הנחיתה הראשוני.חשוב להיזהר מהפניות אוטומטיות ומשינויים בדומיין בין דף הנחיתה הקנוני לבין דפי הנחיתה שאינם AMP.