مشروع Accelerated Mobile Pages (AMP) هو منصة ويب مفتوحة المصدر تساعد في تحسين أداء المحتوى على الويب. تتضمّن AMP إمكانية استخدام "علامة تتبُّع من Google" وGoogle Tag Manager بشكلٍ مدمج. يوضّح هذا الدليل كيفية إعداد "إحصاءات Google" لصفحات AMP.
تثبيت
تتيح لك علامة تتبُّع من Google تثبيت "إحصاءات Google" و"إعلانات Google" وغيرها من منتجات Google على صفحات AMP. تُعدّ أداة Google Tag Manager حاوية AMP وتمنحك إمكانية إنشاء إعدادات متقدّمة ونشر علامات تابعة لجهات خارجية من واجهة Tag Manager.
يدويًا.اختَر المنصة المفضّلة لديك من الأزرار التالية:
علامة التتبُّع من Google
يستخدِم تنفيذ gtag.js في AMP إطار عمل amp-analytics لمنحك إمكانية قياس إحصاءات موقعك الإلكتروني المتوافق مع AMP. يمكن إرسال البيانات من صفحات AMP إلى "إعلانات Google" و"إحصاءات Google" ومنتجات 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 إلى صفحة AMP كعنصر JSON ضمن علامة <body> في الصفحة. استبدِل <TARGET_ID> برقم تعريف العلامة للمنتجات (مثل "إعلانات Google" و"إحصاءات Google") التي تريد إرسال البيانات إليها:
<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"، ليس عليك تثبيت العلامة بأكملها من ذلك المنتج. ما عليك سوى إضافة رقم تعريف الوجهة إلى أمر 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". قيمة selector هي أداة اختيار لغة CSS تتيح لك تحديد العنصر المستهدَف. تحدّد قيمة on نوع الحدث، وهو في هذه الحالة حدث click. في القسم vars، حدِّد نوع الحدث في event_name وأضِف مَعلمات إضافية حسب الحاجة.
"triggers": {
"button": {
"selector": "#the-button",
"on": "click",
"vars": {
"event_name": "login",
"method": "Google"
}
}
}
بالإضافة إلى الأحداث المقترَحة، يمكنك تحديد أحداثك المخصّصة.
إرسال السمات والمعلَمات المخصّصة باستخدام "إحصاءات Google"
لإرسال السمات والمقاييس المخصّصة إلى "إحصاءات Google" من صفحات AMP باستخدام
gtag.js، يمكنك الاستفادة من السمة extraUrlParams ضمن إعدادات
المشغّلات في ملف JSON الخاص بـ <amp-analytics>. يتم إرسال المَعلمات المخصّصة في "إحصاءات Google" كمَعلمات خاصة بالحدث.
- استخدِم البادئة
ep.لمَعلمات الأحداث ذات القيم النصية. - استخدِم البادئة
epn.لمعلّمات الأحداث التي تتضمّن قيمًا رقمية.
قبل الإرسال، تأكَّد من تسجيل هذه السمات والمقاييس المخصّصة في موقعك على "إحصاءات Google".
مثال: المَعلمات المخصّصة مع مشاهدة الصفحة
يرسل هذا الإعداد سمة مخصّصة my_custom_dimension ومقياسًا مخصّصًا my_page_score مع مشاهدة الصفحة الأولية:
<amp-analytics type="gtag" id="gtag_amp">
<script type="application/json">
{
"vars": {
"gtag_id": "G-XXXXXX",
"config": {
"G-XXXXXX": { "groups": "default" }
}
},
"triggers": {
"pageview": {
"on": "visible",
"request": "pageview",
"extraUrlParams": {
"ep.my_custom_dimension": "value1",
"epn.my_page_score": 95
}
}
}
}
</script>
</amp-analytics>
مثال: مَعلمات مخصّصة مع حدث ناتج عن النقر
تُرسِل هذه الإعدادات مَعلمات مخصّصة عند النقر على عنصر يحمل المعرّف myButton:
<amp-analytics type="gtag" id="gtag_amp">
<script type="application/json">
{
"vars": {
"gtag_id": "G-XXXXXX",
"config": {
"G-XXXXXX": { "groups": "default" }
}
},
"triggers": {
"pageview": {
"on": "visible",
"request": "pageview"
},
"trackButtonClick": {
"on": "click",
"selector": "#myButton",
"request": "event",
"vars": {
"event_name": "button_click",
"event_category": "Interactive"
},
"extraUrlParams": {
"ep.button_id": "myButton",
"ep.custom_info": "MoreDetails"
}
}
}
}
</script>
</amp-analytics>
ربط النطاقات
تتيح أداة ربط النطاقات إمكانية قياس موقعَين إلكترونيَين أو أكثر من المواقع الإلكترونية ذات الصلة على نطاقات منفصلة كوحدة واحدة. لتحديد النطاقات التي يجب ربطها، استخدِم
"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 تنشئ صفحة AMP واحدة وترسل حدث button-click إلى "إحصاءات Google" عند النقر على الزر. استبدِل <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>
تحديد المشاكل وحلّها
استخدِم validator.amp.dev للتحقّق من صحة إعدادات وضع العلامات أو يمكنك التأكّد يدويًا من أنّ قيمة cid متّسقة على مستوى النطاقات من خلال تنفيذ ما يلي:
- احرص على محو ملفات تعريف الارتباط أو استخدام "وضع التصفّح المتخفي".
- إذا لم يتم العثور على
cidفي ملف تعريف ارتباط تابع لخدمة "إحصاءات Google"، يمكن أيضًا ملاحظته في علامة التبويب "الشبكة" في متصفّح الويب. ابحث عنcollect request، ويجب أن تحتوي الحمولة على قيمةcid. بعد الانتقال من صفحة AMP إلى نطاق آخر من موقعك الإلكتروني، يجب تمرير
cidوقيمةgclidباستخدام ميزة "تزيين عنوان URL"، وذلك على النحو التالي:**_Linker format: mydomain.com?\_gl=1\*1ie2jr6\*\_ga\*WHFTa3JPckw2TGxZSzY5b3V1cVNVSmRIREI.\*gclid\*dGVzdA.._**يجب أن تتضمّن الصفحة المقصودة النهائية القيمة نفسها
cidالواردة في الصفحة المقصودة الأولية.يجب توخّي الحذر بشأن عمليات إعادة التوجيه وتغييرات النطاق بين الصفحة الأساسية والصفحات المقصودة التي ليست بتنسيق AMP.