وبلاگ
SignalHost برای Joomla: افزونه را نصب کنید، یک بار وصل کنید و ردیابی سمت سرور فعال است
منتشرشده · 7 دقیقه مطالعه
دریافت از Joomla Extensions Directory
افزونه SignalHost بدون حتی یک خط کد چسباندهشده، Google Tag Manager سمت سرور را روی سایت Joomla قرار میدهد. بارگذار ردیابی را به همه صفحههای سایتتان اضافه میکند، هر وقت چیزی در سمت ما تغییر کند آن را بهروز نگه میدارد و وقتی اتصال را قطع کنید دوباره برش میدارد. این راهنما به همان ترتیبی پیش میرود که با آن روبهرو میشوید: نصب بسته، اتصال یک کانتینر، بررسی کارکرد و کارهایی که وقتی چیزی کار نمیکند باید انجام دهید.
پیش از شروع
- Joomla نسخه 4.4، 5 یا 6، روی PHP نسخه 7.4 یا جدیدتر.
- یک حساب SignalHost. طرح رایگان برای امتحان کافی است: ده هزار درخواست در ماه و یک کانتینر. میتوانید حساب را هنگام اتصال بسازید.
- یک حساب Super User در بخش مدیریت Joomla: اتصال و قطع اتصال به اجازه پیکربندی کامپوننت SignalHost نیاز دارند که Super Userها آن را دارند.
1. نصب افزونه
بسته را از فهرست افزونههای Joomla دانلود کنید، جایی که با نام SignalHost Server-Side Tagging فهرست شده است. در بخش مدیریت Joomla، System › Install › Extensions را باز کنید و فایل zip را بارگذاری کنید.
این یک بسته با دو بخش است: کامپوننت SignalHost، که در آن سایت را وصل میکنید و وضعیتش را میبینید، و افزونه سیستمی System - SignalHost Server-Side Tagging، که کد را در صفحههای شما قرار میدهد. نصب، افزونه را خودبهخود روشن میکند؛ این افزونه تا وقتی سایت وصل نشده باشد چیزی چاپ نمیکند.
2. اتصال سایت به یک کانتینر
Components › SignalHost را باز کنید و «Connect with SignalHost» را بزنید. اگر هنوز حسابی ندارید، «Create a free account» شما را بهجای آن به صفحه ثبتنام میبرد. پیش از آنکه «Connect» را بزنید، هیچ چیزی به SignalHost فرستاده نمیشود.
در signalhost.io وارد شوید. صفحه بعدی فهرست میکند که افزونه چه کارهایی میتواند انجام دهد و چه کارهایی نه، و میپرسد سایت از کدام کانتینر استفاده کند. کانتینر همان سرور تگگذاری خود شماست: یک کانتینر وب و یک کانتینر سرور Tag Manager که در حساب Google خودتان ساخته میشوند، پس متعلق به خودتان میمانند.
یک کانتینر موجود را انتخاب کنید، یا «کانتینر جدید برای سایت شما» را بزنید و مراحل کوتاه راهاندازی را طی کنید. ساخت کانتینر جدید چند دقیقه طول میکشد؛ میتوانید بلافاصله وصل کنید و کد بهمحض آماده شدن آن اضافه میشود. «اتصال» را بزنید. به Components › SignalHost برمیگردید و پیام «Connected» را میبینید. اکنون کد SignalHost به همه صفحههای سایت شما اضافه شده است.
3. بررسی وجود کد در سایت
اکنون صفحه «Tracking is live» را نشان میدهد، یا تا وقتی کانتینر جدید در حال ساخت است «Tracking starts as soon as your container is ready» را. سپس سطر «On your home page» را بخوانید: بلافاصله پس از اتصال، افزونه صفحه اصلی شما را همانطور که یک بازدیدکننده دریافت میکند میگیرد و به دنبال کد خودش میگردد. «Code found» همان پاسخی است که میخواهید. «Check again» هر زمان بررسی را تکرار میکند و پاسخهای دیگر در بخش «وقتی چیزی کار نمیکند» آمدهاند.
4. آزمایش
سایتتان را در یک پنجره خصوصی باز کنید و در چند صفحه بگردید؛ بازدیدکنندهای که بنر کوکی شما را رد میکند همچنان بهصورت پینگ بدون کوکی Google شمرده میشود. سپس «Open statistics & settings» را بزنید تا صفحه کانتینرتان در signalhost.io باز شود.
در «تحلیل پیشرفته»، زبانه «اخیر» بازدیدهای صفحه 30 دقیقه گذشته، از جمله بازدیدهای شما، را نشان میدهد. «اجرای بررسیها» در بخش «عیبیابی» در پایین صفحه، آنچه را سرور تگگذاری شما دریافت کرده با آنچه Google Analytics برای همان 30 دقیقه گزارش میکند مقایسه میکند. کمتر بودن عدد در Analytics عادی است: Analytics بازدیدکنندگانی را که کوکیها را رد کردهاند کنار میگذارد. از طرح Growth به بالا، «پایش زندهٔ رویدادها» هر رویداد را همان لحظه که میرسد نشان میدهد.
آنچه افزونه به سایت شما اضافه میکند
یک اسکریپت کوچک و یک ارتباط ساعتی:
- بارگذار Google Tag Manager، در head صفحههای سایتتان، که بهجای googletagmanager.com به نشانی تگگذاری خود شما اشاره میکند. کانتینر Tag Manager شما را از آنجا بارگذاری میکند. افزونه آن را از طریق Web Asset Manager در Joomla اضافه میکند، پس اگر سایت شما از nonce در CSP استفاده کند، آن را هم دارد. هرگز در بخش مدیریت، در یک فید یا در نمایی که فقط کامپوننت را نشان میدهد اجرا نمیشود.
- ساعتی یک بار، پس از ارسال یک صفحه، افزونه برای بهروز ماندن با signalhost.io ارتباط میگیرد. فقط نسخه افزونه، Joomla و PHP، نشانی سایت شما و اینکه کد در صفحه اصلی پیدا شده یا نه را میفرستد: نه داده بازدیدکنندگان، نه محتوا و نه حسابهای کاربری. اگر signalhost.io در دسترس نباشد، سایت شما آخرین پیکربندی سالم را نگه میدارد.
هر درخواست به شکلی از مرورگر خارج میشود که مسدودکنندههای تبلیغات آن را نمیشناسند، و سرور تگگذاری شما آن را به Google Analytics 4 و پلتفرمهای تبلیغاتیای که در صفحه کانتینر راهاندازی کردهاید منتقل میکند: Google Ads، Meta، TikTok و دیگران. ردیابی از طریق Google Consent Mode از بنر کوکی شما پیروی میکند؛ کد بنرتان را پیش از کد SignalHost قرار دهید.
افزونه فرمها یا سفارشها را نمیخواند. بازدیدهای صفحه خودبهخود میرسند؛ یک خرید یا یک سرنخ وقتی به کانتینرتان میرسد که سایتتان آن را به لایه داده push کند.
دامنه ردیابی خودتان
کانتینر شما روی نشانیای زیر signalhost.io شروع به کار میکند. در یک طرح پولی، «راهاندازی دامنه خودتان» در صفحه کانتینر آن را با یک رکورد DNS نزد ارائهدهندهتان به زیردامنهای از سایت خودتان، مانند sgtm.yoursite.com، منتقل میکند. این نشانی از فهرستهای فیلتر جان سالم به در میبرد و کوکیهای کلیک را شخص اول نگه میدارد. وقتی فعال شد، افزونه در ارتباط بعدی خود، معمولاً ظرف یک ساعت، سایت شما را به آن منتقل میکند و کش صفحه Joomla را پاک میکند. لازم نیست چیزی را دستی جایگزین کنید و نشانی قدیمی تا آن زمان همچنان کار میکند.
افزودن دستی SignalHost
میتوانید کد را خودتان هم بچسبانید. در صفحه کانتینر، قطعهکدتان را در کارت «نصب روی سایت شما» پیدا کنید و «کپی» را بزنید. آن را در head همه صفحهها (در Joomla، قالب سایتتان)، درست پس از اسکریپت بنر کوکیتان بچسبانید و «این کار را انجام دادم» را بزنید. «کپی برای دستیار هوش مصنوعی» همین کار را به یک دستیار برنامهنویسی هوش مصنوعی میسپارد.
چسباندن دستی، کارهایی را که افزونه انجام میدهد از دست میدهد: هیچ چیز صفحه اصلی شما را بررسی نمیکند، هیچ چیز هنگام قطع اتصال کد را حذف نمیکند، بارگذار nonce در CSP ندارد مگر اینکه خودتان آن را اضافه کنید، و وقتی دامنه خودتان فعال شود، کد را خودتان جایگزین میکنید، از «قطعهکد وبسایت خود را بهروز کنید» در همان کارت یا از ایمیلی که فعال شدن دامنه را اعلام میکند. هرگز هر دو راه را با هم به کار نبرید: دو نسخه هر بازدید را دو بار میشمارند.
بهروزرسانی، مدیریت و قطع اتصال
بهروزرسانیها مانند هر افزونه دیگری از طریق بهروزرسان خود Joomla، در System › Update › Extensions، میرسند.
«Disconnect» در صفحه Components › SignalHost یک بار تأیید میخواهد و سپس دسترسی سایت را لغو میکند، کد را از همه صفحهها برمیدارد و کش صفحه Joomla را پاک میکند. کانتینر و آمارش باقی میمانند و هر زمان میتوانید دوباره وصل کنید.
در signalhost.io، صفحه کانتینر «نصبشده توسط افزونه Joomla روی» سایت شما را نشان میدهد. دکمه «مدیریت» آن به «تنظیمات»، «سایتهای متصل» میرسد، جایی که «قطع اتصال» هم کار میکند: افزونه در ارتباط بعدی خود، معمولاً ظرف یک ساعت، دیگر SignalHost را بارگذاری نمیکند.
حذف بسته هر آنچه افزونه ذخیره کرده بود پاک میکند. اول اتصال را قطع کنید تا SignalHost هم بداند که سایت رفته است.
وقتی چیزی کار نمیکند
- «Code not found»: ممکن است افزونه خاموش باشد. System - SignalHost Server-Side Tagging را در مدیریت افزونههای Joomla فعال کنید و سپس «Check again» را بزنید.
- «Could not check (your server refused a request to itself)»: میزبان شما درخواستها به نشانی خودش را مسدود میکند. این چیزی درباره بازدیدکنندگانتان نمیگوید؛ نشانی تگگذاریتان را در سورس صفحه اصلی جستوجو کنید.
- «An older copy is on the page» یا «The code is on the page twice»: نسخهای دستی در یک قالب یا افزونه دیگر چسبانده شده است. حذفش کنید؛ افزونه نسخه فعلی را اضافه میکند و دو نسخه هر بازدید را دو بار میشمارند.
- پیامی میگوید سایت شما از قبل یک کانتینر Tag Manager را با قطعهکد خود Google بارگذاری میکند: آن قطعهکد را حذف کنید، چون اکنون SignalHost کانتینر را بارگذاری میکند و این دو با هم هر بازدید را دو بار میشمارند.
- «This site's address has changed since it was connected»: روی یک نسخه کپی، مانند staging، هیچ چیزی فرستاده نمیشود. اگر سایت اصلی جابهجا شده است، اتصال را قطع کنید و دوباره وصل کنید.
- Components › SignalHost بهجای خودش مدام داشبورد را باز میکند: در یک Joomla تازهنصب، تور راهنمای نخستین ورود همین کار را با همه صفحههای بخش مدیریت میکند تا وقتی آن را پنهان کنید.
- هر مورد دیگر: با ذکر نشانی سایتتان به hello@signalhost.io بنویسید.
علائم تجاری
SignalHost محصولی مستقل از Algorithmo GmbH است و هیچ وابستگیای به Open Source Matters، Google، Meta یا TikTok ندارد و از سوی آنها تأیید نشده است. Google Analytics، Google Ads و Google Tag Manager علائم تجاری Google LLC هستند؛ Meta علامت تجاری Meta Platforms, Inc. است؛ TikTok علامت تجاری ByteDance Ltd. است؛ Joomla! علامت تجاری Open Source Matters, Inc. است.

