| الملخص | تتبع متقدم للأحداث في Google Analytics 4 لـ Discourse | |
| رابط المستودع | https://github.com/multidimension-al/discourse-google-analytics | |
| دليل التثبيت | كيفية تثبيت الإضافات في Discourse |
يرسل نواة Discourse حدث page_view واحدًا إلى Google Analytics لكل تنقل. تضيف هذه الإضافة أحداثًا لوقت القراءة، وتقدم القراءة، والإكمال، ويمكنها اختيارياً تولي مسؤولية عمليات عرض الصفحة بحيث تُستثنى مسارات الرسائل الخاصة ومسارات المسؤول.
لماذا لا تستخدم وسم التحليلات المدمج SEO/GA؟
يمكنك ذلك، وفي كثير من المنتديات يكون ذلك كافياً. يعمل وسم النواة، وتعمل هذه الإضافة فوقه بدلاً من استبداله.
الفرق يكمن في ما يتم قياسه. يخبرك page_view بأن رابط URL تم تحميله. لا يمكنه إخبارك عما إذا كان أحد قد قرأ ما كان عليه، لذا يبدو قراءة تستغرق عشرين دقيقة لموضوع طويل وانفجاراً فورياً متماثلين في تقاريرك. تقيس هذه الإضافة المدة التي قضاها الشخص في القراءة فعلياً، وكم تقدم في الموضوع، وما إذا وصل إلى النهاية. هذه هي الإشارات الجديرة باتخاذ قرارات المحتوى بناءً عليها، وهي التي تجعل جمهور إعادة التسويق يستحق البناء.
تقارير Discourse الخاصة (Admin → Reports) هي نظام منفصل وتظل أفضل مكان للمقاييس الداخلية. هذا يتعلق فقط بما يصل إلى Google Analytics.
الميزات
- 13 حدثاً مجتمعياً: عرض المواضيع، والتفاعل، وعوائق تقدم القراءة، وإكمال القراءة، وملخصات لكل زيارة، والبحث، والتسجيل، وتسجيل الدخول، وإنشاء المواضيع، والردود، والإعجابات، والعلامات المرجعية
- قياس القراءة مقابل تدفق المنشورات والوقت الانتباهي، وليس عمق التمرير
- وضعان: توسيع وسم النواة الحالي، أو تملك الوسم وعمليات عرض الصفحة
- لا تنتج الرسائل الخاصة، والفئات المقيدة، ومسارات المسؤول أي حدث
- عناوين المواضيع ومصطلحات البحث معطلة افتراضياً
- يمكن تحديد حركة مرور الموظفين كحركة مرور داخلية لـ GA4، حسب المجموعة
- صفحة تشخيص وتحذيرات لوحة تحكم المسؤول لخطأ التهيئة
التهيئة
1. التثبيت
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/multidimension-al/discourse-google-analytics.git
ثم ./launcher rebuild app.
2. اختر وضعاً. Admin → Settings → Google Analytics 4.
توسيع النواة (افتراضي) — تحتفظ النواة بالوسم وعمليات عرض الصفحة، وتضيف الإضافة أحداثاً فوقها. اضبط ga universal tracking code للنواة على G-XXXXXXXXXX الخاص بك و ga version إلى v4_gtag.
مُدار — تملك الإضافة الوسم وعمليات عرض الصفحة، وهذا ما يتيح لها استبعاد مسارات الرسائل الخاصة والمسؤول. امسح ga universal tracking code للنواة، واضبط ga4 integration mode على managed، وضع المعرف الخاص بك في ga4 measurement id.
3. فعّل discourse ga4 enabled.
4. اختياري — الحركة الداخلية. ga4 internal traffic groups افتراضياً للمديرين والمشرفين. لا يترتب عليه أي مفعول حتى تنشئ المرشح المطابق في GA4 تحت Admin → Data settings → Data filters → Internal traffic، حيث يساوي traffic_type القيمة internal.
5. تحقق. Admin → Plugins → Google Analytics → Diagnostics.
لنقل إعداد قائم من توسيع النواة إلى الوضع المُدار، استخدم تبنّي إعداد GA الخاص بـ Discourse الموجود في صفحة التشخيص بدلاً من تعديل الإعدادات يدوياً.
الإعدادات
| الاسم | الوصف |
|---|---|
discourse ga4 enabled |
تفعيل الإضافة. معطلة افتراضياً. |
ga4 integration mode |
core_extension (النواة تملك الوسم) أو managed (الإضافة تملكه). |
ga4 measurement id |
معرّف القياس GA4، للوضع المُدار. |
ga4 track page views |
إرسال page_view. للوضع المُدار فقط. |
ga4 track topic views |
إرسال discourse_topic_view مرة واحدة لكل زيارة لموضوع. |
ga4 track topic engagement |
إرسال discourse_topic_engaged عند عوائق وقت القراءة. |
ga4 engagement milestones |
ثوانٍ من القراءة النشطة التي يتم عند إطلاقها. الافتراضي 10|30|60|180. |
ga4 track topic progress |
إرسال discourse_topic_progress عند عوائق موضع القراءة. |
ga4 progress milestones |
نسب مئوية من الموضوع التي يتم عند إطلاقها. الافتراضي 25|50|75|100. |
ga4 track read completion |
إرسال discourse_topic_read_complete عندما يصل القارئ إلى النهاية. |
ga4 read complete min seconds |
الحد الأدنى لوقت القراءة قبل أن تُحتسب النهاية كإكمال. |
ga4 track read summaries |
إرسال discourse_topic_read_summary عندما يغادر القارئ موضوعاً. |
ga4 read summary min seconds |
أقل من هذا، تُعامل الزيارة كـ bounce ولا تُلخص. |
ga4 track search |
إرسال search عندما يعيد بحث الصفحة الكاملة نتائج. |
ga4 track registration |
إرسال sign_up بعد إنشاء حساب. |
ga4 track login |
إرسال login بعد تسجيل دخول ناجح. معطلة افتراضياً. |
ga4 track topic creation |
إرسال discourse_topic_created. |
ga4 track replies |
إرسال discourse_reply_created. |
ga4 track likes |
إرسال discourse_post_liked. إزالة الإعجاب لا ترسل شيئاً. |
ga4 track bookmarks |
إرسال discourse_bookmark_created. |
ga4 send search terms |
إرسال ما تم البحث عنه أيضاً. معطلة افتراضياً — عمليات البحث في المنتديات غالباً ما تحتوي على معلومات شخصية. |
ga4 send page titles |
تضمين عنوان الصفحة. معطلة افتراضياً — على مسار الموضوع يكون هذا عنوان الموضوع. |
ga4 track private message activity |
حدث PM مجمّع واحد لا يحمل معرّفات. معطلة افتراضياً. |
ga4 login required is restricted |
على منتدى يتطلب تسجيل الدخول، احجب معرّفات المواضيع والفئات. |
ga4 send trust level |
تضمين مستوى الثقة 0–4 كحاصل حدث. |
ga4 internal traffic groups |
أعضاء هذه المجموعات يُوسمون بـ traffic_type=internal. الافتراضي: المديرين، المشرفين. |
ga4 suppress in embed |
لا ترسل شيئاً في وضع التضمين. |
ga4 debug mode |
تسجيل الأحداث وقرارات الكبت في وحدة تحكم المتصفح. |
ملاحظات
- في وضع توسيع النواة، لا تزال النواة تملك عمليات عرض الصفحة، لذا لا تزال عناوين URLs الخاصة بالرسائل الخاصة وعناوين المواضيع تُرسل. فقط الوضع المُدار يغير ذلك.
- لا تسجّل
topic_idكبُعد مخصص لـ GA4 — فهي غير محدودة وستضرب حدود تعدد الخواص للممتلك. - يسجل تقرير Discourse الخاص Admin → Reports → Trending Search النقرات عبرية، لذا يخبرك بالعمليات البحثية التي فشلت. GA4 لا يمكنه ذلك. لهذا السبب
ga4 send search termsمعطلة افتراضياً.

