شروع کار
گزارشها
- گزارشهای ذخیرهشده، خروجی و ورودی
- گزارش ایمیلی
- ساخت لینک کمپین (UTM)
- ردیابی کلیک
- ردیابی کلیک و افزونههای امنیتی
- ردیابی ارسال فرم
- فروشگاه: ووکامرس و افزونههای فروش
تنظیمات
- گزارش و هشدار در بله و تلگرام
- انتقال آمار از WP Statistics
- فیلتر رباتها و ترافیک غیرانسانی
- بلوک گوتنبرگ، ابزارک المنتور و کد کوتاه
- منابع ورودی، مناسبتها و واحد پول ایرانی
- نادیده گرفتن نقشهای کاربری
- مسدود کردن آدرس IP
- ردیابی کاربران واردشده
- دسترسی سایر کاربران به آمار
- نمایش تعداد بازدید در سایت
- تازهسازی شناسهی بازدیدکننده
- حذف خودکار دادههای قدیمی
- حذف همهی دادهها
رفع اشکال
- بازدیدها ثبت نمیشوند (REST API بسته است)
- خطای دسترسی یا جدولهای پایگاهداده
- پیشوند جدولها بیش از حد طولانی است
- کشور و شهر بازدیدکنندگان نمایش داده نمیشود
- افزونهی PDO در PHP فعال نیست
توسعهدهندگان
شروع کار
دیدبان چطور کار میکند؟
دیدبان بلافاصله پس از فعالسازی شروع به ثبت بازدیدها میکند. نیازی به ساخت حساب، قرار دادن کد یا اتصال به سرویس خارجی نیست. همهی دادهها در پایگاهدادهی همین سایت ذخیره میشوند.
- بدون کوکی: بازدیدکنندگان با یک شناسهی ناشناس و چرخشی شمرده میشوند؛ هیچ کوکیای روی مرورگر آنها ذخیره نمیشود.
- بدون دادهی شخصی: آدرس IP ذخیره نمیشود و فقط برای تشخیص کشور و شهر، لحظهای استفاده میشود.
- بلادرنگ: بازدیدها چند ثانیه بعد در گزارشها دیده میشوند.
برای شروع، از منوی آمار گزارش «نمای کلی» را باز کنید. با دکمهی بازهی زمانی (بالای صفحه) میتوانید بازههایی مثل «این ماه» یا «۳۰ روز گذشته» را انتخاب کنید.
چرا باید کش را پاک کنم؟
اسکریپت ردیابی در HTML صفحات قرار میگیرد. اگر افزونهی کش (مثل WP Rocket، LiteSpeed Cache یا W3 Total Cache) نسخهی قدیمی صفحات را نگه داشته باشد، تا زمان پاک شدن کش، بازدید آن صفحات ثبت نمیشود.
کافی است یکبار پس از نصب، کش افزونه و در صورت وجود، کش CDN (مثل کلودفلر یا ابرآروان) را پاک کنید.
تقویم شمسی و اعداد فارسی
از صفحهی تقویم و زبان میتوانید تقویم را شمسی یا میلادی انتخاب کنید. تقویم انتخابی فقط در نمایش نیست؛ مرز ماهها و سالها هم بر اساس آن حساب میشود:
- «این ماه» و «ماه گذشته» از روز اول ماه شمسی تا روز آخر آن است.
- نمودار با بازهی «ماهانه»، دادهها را بر اساس فروردین، اردیبهشت و… گروهبندی میکند و تعداد بازدیدکنندگان یکتا هر ماه دقیق است.
- «امسال» از اول فروردین شروع میشود و انتخابگر بازهی زمانی ماههای شمسی را نشان میدهد.
- گزارش ایمیلی ماهانه در ابتدای هر ماه شمسی ارسال میشود.
نمایش اعداد (۱۲۳ یا 123) و اولین روز هفته هم در همان صفحه قابل تنظیم است. این افزونه به افزونههای تاریخ شمسی دیگر (مثل پارسیدیت) نیاز ندارد و در کنار آنها هم تاریخ را دوبار تبدیل نمیکند.
معنی معیارها
- بازدید: هر بار باز شدن یک صفحه.
- بازدیدکننده: افراد یکتا در بازهی انتخابی. هر فرد در هر روز با یک شناسهی ناشناس شمرده میشود.
- نشست: مجموعهی بازدیدهای پشتسرهم یک بازدیدکننده. پس از ۳۰ دقیقه بیفعالیتی، نشست بعدی شروع میشود.
- نرخ پرش: درصد نشستهایی که فقط یک صفحه دیدهاند.
- میانگین مدت نشست: زمان بین اولین و آخرین بازدید یک نشست.
- ورودی و خروجی: تعداد نشستهایی که با یک صفحه شروع یا تمام شدهاند.
- رشد بازدید: تغییر بازدید نسبت به دورهی قبلی هماندازه.
گزارشها
گزارشهای ذخیرهشده، خروجی و ورودی
هر گزارش را پس از تنظیم فیلتر، ستونها و بازه، با دکمهی ذخیره در منوی کناری نگه دارید. از تنظیمات میتوانید همهی گزارشهای ذخیرهشده را در یک فایل خروجی بگیرید و در سایت دیگری وارد کنید.
خروجی CSV هر جدول با کدگذاری UTF-8 ساخته میشود تا متن فارسی در اکسل درست نمایش داده شود.
گزارش ایمیلی
از تنظیمات بخش «گزارش ایمیلی»، نشانیهای گیرنده، بازهی ارسال (روزانه، هفتگی، ماهانه) و ساعت ارسال را تعیین کنید. گزارش ماهانه با تقویم انتخابی شما (شمسی یا میلادی) ارسال میشود.
اگر ایمیلها نمیرسند، معمولاً مشکل از ارسال ایمیل وردپرس است؛ یک افزونهی SMTP نصب کنید.
ساخت لینک کمپین (UTM)
در سازندهی کمپین نشانی صفحه، منبع (مثلاً instagram)، رسانه (مثلاً story) و نام کمپین را وارد کنید تا لینک دارای UTM ساخته شود. بازدیدهای این لینکها در گزارش «کمپینها» دیده میشوند.
ردیابی کلیک
در ردیابی کلیک مشخص کنید کلیک روی چه لینکهایی شمرده شود: لینکهای خروجی، فایلهای دانلودی (مثل PDF و ZIP)، لینکهای تماس و ایمیل، یا هر کلاس و شناسهی دلخواه.
دادههای کلیک هر ۶۰ ثانیه پردازش میشوند؛ هنگام آزمایش، یک دقیقه صبر کنید.
ردیابی کلیک و افزونههای امنیتی
ردیابی کلیک از فایل iawp-click-endpoint.php در پوشهی افزونه استفاده میکند. اگر افزونهی امنیتی (مثل Solid Security یا Security Optimizer) اجرای PHP در پوشهی افزونهها را بسته باشد، این فایل را در فهرست مجاز آن قرار دهید یا گزینهی مسدودسازی را غیرفعال کنید.
ردیابی ارسال فرم
ارسال فرمهای بیش از ۳۰ افزونهی فرم (Contact Form 7، WPForms، Gravity Forms، Elementor Pro، Fluent Forms و…) خودکار ثبت میشود و نرخ تبدیل هر صفحه و هر منبع ورودی را نشان میدهد.
اگر فرمی دیده نمیشود: مطمئن شوید افزونهی فرم فعال است، فرم حداقل یکبار پس از نصب دیدبان ارسال شده، و کش سایت پاک شده است. فهرست افزونههای پشتیبانیشده در صفحهی یکپارچهسازیها آمده است.
فروشگاه: ووکامرس و افزونههای فروش
با فعال بودن ووکامرس، Easy Digital Downloads، SureCart، FluentCart یا Paid Memberships Pro، سفارشها و درآمد به هر صفحه، منبع ورودی و کمپین نسبت داده میشود: «کدام منبع واقعاً فروش آورده است؟»
در تنظیمات بخش ووکامرس، تعیین کنید سفارشها با چه وضعیتهایی (مثلاً «تکمیلشده» و «در حال انجام») در آمار فروش شمرده شوند. واحد پول همان واحد فروشگاه است (تومان یا ریال).
تنظیمات
گزارش و هشدار در بله و تلگرام
از تنظیمات، زبانهی «پیامرسانها»، یک یا هر دو پیامرسان را وصل کنید:
- در بله به
@botfather(یا در تلگرام به@BotFather) پیام بدهید و یک ربات بسازید. - توکن ربات را در تنظیمات وارد کنید.
- ربات را به کانال یا گروه خود اضافه کنید و شناسهی آن را وارد کنید، مثل
@my_channel. - «ارسال پیام آزمایشی» را بزنید.
گزارش دورهای: روزانه (آمار دیروز) یا هفتگی (در اولین روز هفته)، در ساعتی که انتخاب میکنید؛ همراه با تغییر نسبت به دورهی قبل، منبع اصلی ورودی و پربازدیدترین صفحه.
هشدار ترافیک: هر ساعت، بازدیدکنندگان امروز تا آن ساعت با میانگین همان ساعتها در ۷ روز گذشته مقایسه میشود. اگر افت یا جهش از حد تعیینشده بیشتر باشد، پیام میآید. اگر افت فقط از داخل ایران باشد و بازدید خارج ثابت بماند، پیام میگوید احتمالاً اینترنت دچار اختلال است.
بله روی سرورهای داخل ایران در دسترس است؛ برای تلگرام، سرور سایت باید به آن دسترسی داشته باشد. ارسالها با زمانبندی وردپرس انجام میشوند؛ در سایتهای کمبازدید بهتر است کران واقعی سرور را فعال کنید.
انتقال آمار از WP Statistics
از تنظیمات، زبانهی «انتقال دادهها»، تاریخچهی بازدیدهای WP Statistics (نسخه ۱۴ به بعد) را به دیدبان بیاورید. لازم نیست WP Statistics فعال باشد؛ کافی است جدولهایش در پایگاه داده مانده باشد.
- چه چیزهایی منتقل میشود: بازدیدکنندهها، صفحههای دیدهشده، منبع ورودی، کشور و شهر، نوع دستگاه، سیستمعامل و مرورگر. بازدیدکنندهای که چند روز آمده، یک نفر شمرده میشود.
- دوبار شمرده نمیشود: فقط روزهای پیش از اولین بازدیدی که خود دیدبان ثبت کرده منتقل میشوند.
- دقت: اگر WP Statistics مسیر هر بازدیدکننده را نگه داشته باشد، صفحه و زمان هر بازدید دقیق منتقل میشود. وگرنه بازدیدهای هر روز بر اساس آمار صفحههای همان روز پخش میشوند؛ جمع روزانهی هر صفحه درست است ولی مسیر تکتک افراد تقریبی است.
- ایمن: دادههای WP Statistics تغییر نمیکنند. انتقال در مرحلههای چندثانیهای انجام میشود؛ اگر صفحه بسته شد، «ادامه» بزنید. با دکمهی «حذف دادههای منتقلشده» همهچیز به حالت قبل برمیگردد و آمار خود دیدبان دست نمیخورد.
فیلتر رباتها و ترافیک غیرانسانی
بازدیدها با جاوااسکریپت ثبت میشوند، پس بیشتر خزندهها اصلاً شمرده نمیشوند و رباتهای شناختهشده هم همیشه کنار گذاشته میشوند. چیزی که ممکن است آمار را بالا ببرد، ابزارهایی است که مثل مرورگر رفتار میکنند: تست سرعت (Lighthouse، GTmetrix)، مرورگرهای بدون رابط، سرویسهای مانیتورینگ، اسکریپتها و خزندههای ایرانی مثل پارسیجو و ذرهبین.
در تنظیمات، زبانهی «ردیابی»، بخش «فیلتر رباتها» فهرست آمادهی دیدبان را روشن یا خاموش کنید و عبارتهای دلخواه خود را اضافه کنید (هر خط یک عبارت؛ کافی است بخشی از user agent باشد). با فیلد «آزمایش یک user agent» میتوانید ببینید یک user agent ثبت میشود یا نه.
نام اپلیکیشنهای ایرانی (ترب، دیوار و…) عمداً در فهرست نیست، چون مرورگر داخل این برنامهها ممکن است نامشان را در user agent بازدیدکنندگان واقعی بگذارد. فیلتر فقط روی بازدیدهای تازه اثر دارد.
بلوک گوتنبرگ، ابزارک المنتور و کد کوتاه
پربازدیدترینها: فهرست نوشتههایی که بیشترین بازدید یا بازدیدکننده را در بازهی انتخابی داشتهاند، بر اساس آمار واقعی دیدبان. نوع محتوا، بازه، تعداد، نمایش تعداد و تصویر شاخص قابل تنظیم است و نوشتهی فعلی بهطور پیشفرض نمایش داده نمیشود. فهرست ۱۰ دقیقه کش میشود.
شمارندهی بازدید: تعداد بازدید همان صفحه، از ابتدا یا در یک بازه (امروز، ۷ روز، این ماه…).
- در ویرایشگر بلوک: «پربازدیدترینها (دیدبان)» و «شمارندهی بازدید (دیدبان)» در دستهی ابزارکها.
- در المنتور: دستهی «دیدبان» در پنل ابزارکها.
- در هر جای دیگر با کد کوتاه:
[didban_popular_posts limit="5" days="30" sort_by="views" show_count="yes" show_thumbnail="no"]
[iawp_view_counter label="بازدید:" range="last_thirty"]
منابع ورودی، مناسبتها و واحد پول ایرانی
منابع ورودی ایرانی با نام فارسی شناخته میشوند: دیوار، ترب، ایمالز، ایتا، بله، روبیکا، آپارات، ویرگول، دیجیکالا، باسلام، یکتانت، مدیاد، تپسل و… بازدیدهای قبلی از این سایتها هم پس از بهروزرسانی یکبار با نام درست ادغام میشوند.
نام کشورها و شهرها در جدولها و نقشه فارسی نمایش داده میشود (استانها و شهرهای ایران بهطور کامل).
مناسبتها (نوروز، سیزدهبدر، چهارشنبهسوری، شب یلدا، بلکفرایدی) روی نمودار با 🎉 مشخص میشوند و تا دو هفته پس از هر مناسبت، کارت «خلاصهی امروز» آن را با پارسال مقایسه میکند.
تومان و ریال: در فروشگاههایی با واحد تومان یا ریال، مبالغ نمودارها با برچسب فارسی و مبالغ بزرگ در کارتها به شکل «۱۲٫۵ میلیون تومان» نمایش داده میشود.
نادیده گرفتن نقشهای کاربری
بازدید نقشهای انتخابشده (مثلاً مدیر و ویرایشگر) ثبت نمیشود. گزینهی «نادیده گرفتن با کوکی» باعث میشود حتی پس از خروج از حساب، مرورگر شما همچنان نادیده گرفته شود.
مسدود کردن آدرس IP
آدرسهای IP (مثلاً IP دفتر کار یا سرور مانیتورینگ) را در تنظیمات وارد کنید تا بازدیدشان ثبت نشود. استفاده از * برای بازه مجاز است، مثل 192.168.1.*.
ردیابی کاربران واردشده
بهطور پیشفرض کاربرانی که وارد حساب شدهاند ردیابی نمیشوند. برای فروشگاهها و سایتهای عضویتی این گزینه را در صفحهی تقویم و زبان یا تنظیمات فعال کنید.
دسترسی سایر کاربران به آمار
برای هر نقش کاربری تعیین کنید: بدون دسترسی، مشاهدهی آمار همهی محتوا، مشاهدهی آمار فقط محتوای خودش (مناسب نویسندگان)، یا دسترسی کامل همراه با تنظیمات. با گزینهی «برچسب سفید» نام و پیوندهای افزونه برای این کاربران پنهان میشود.
نمایش تعداد بازدید در سایت
شمارندهی بازدید را از تنظیمات فعال کنید تا قبل یا بعد از محتوای نوشتهها نمایش داده شود. برای قرار دادن دستی، از کد کوتاه استفاده کنید:
[iawp_view_counter label="بازدید:" icon="1"]
در ویرایشگر هر نوشته میتوانید عددی را به شمارنده اضافه کنید (مثلاً بازدیدهای قبل از نصب افزونه).
تازهسازی شناسهی بازدیدکننده
شناسهی ناشناس بازدیدکنندگان با یک «نمک» رمزنگاری ساخته میشود. اگر این نمک روزانه عوض شود، حریم خصوصی بیشتر میشود اما بازدیدکنندهای که فردا برگردد، فرد جدیدی شمرده میشود. برای اکثر سایتها گزینهی پیشفرض مناسب است.
حذف خودکار دادههای قدیمی
اگر حجم پایگاهداده برایتان مهم است، تعیین کنید دادههای قدیمیتر از چند ماه یا سال حذف شوند. حذف هر شب بهصورت خودکار انجام میشود و قابل بازگشت نیست.
حذف همهی دادهها
از پایین صفحهی تنظیمات میتوانید همهی آمار را صفر کنید یا هنگام حذف افزونه، همهی جدولها را پاک کنید. پیش از این کار از پایگاهداده نسخهی پشتیبان بگیرید.
رفع اشکال
بازدیدها ثبت نمیشوند (REST API بسته است)
ثبت بازدید از مسیر /wp-json/iawp/search انجام میشود. اگر افزونهی امنیتی REST API را برای کاربران مهمان بسته است، این مسیر را مجاز کنید.
خطای دسترسی یا جدولهای پایگاهداده
افزونه برای ساخت جدولهای خود به دسترسیهای CREATE، ALTER، INDEX و DROP نیاز دارد. از پشتیبانی هاست بخواهید این دسترسیها را به کاربر پایگاهداده بدهد، سپس افزونه را یکبار غیرفعال و دوباره فعال کنید.
پیشوند جدولها بیش از حد طولانی است
پیشوند جدولهای وردپرس ($table_prefix در wp-config.php) باید ۲۵ نویسه یا کمتر باشد، چون نام جدولهای افزونه از محدودیت MySQL بیشتر میشود.
کشور و شهر بازدیدکنندگان نمایش داده نمیشود
برای تشخیص کشور و شهر، فایل پایگاهدادهی موقعیت یکبار دانلود و در wp-content/uploads/iawp-geo-db.mmdb ذخیره میشود. دیدبان اول از سرور داخلی https://asocode.ir و اگر نشد از سرور اصلی دانلود میکند. اگر هیچکدام در دسترس نبود:
- فایل را روی رایانهی خود دریافت و با FTP در همان مسیر قرار دهید؛ یا
- آن را روی هاست خودتان بگذارید و نشانی را با فیلتر معرفی کنید:
add_filter('didban_geo_db_raw_url', fn() => 'https://example.ir/iawp-geo-db-8.mmdb');
فایل از هر منبعی فقط در صورتی پذیرفته میشود که با نسخهی اصلی یکسان باشد (بررسی MD5).
افزونهی PDO در PHP فعال نیست
دیدبان به افزونههای pdo و pdo_mysql در PHP نیاز دارد. در cPanel یا DirectAdmin از بخش «Select PHP Version» آنها را فعال کنید یا از پشتیبانی هاست بخواهید.
توسعهدهندگان
دریافت آمار در کد
$stats = \IAWPSCOPED\iawp_singular_analytics(get_the_ID(), new DateTime('-30 days'), new DateTime());
echo $stats->views; // بازدید
echo $stats->visitors; // بازدیدکننده
$top = \IAWPSCOPED\iawp_top_posts(['limit' => 5, 'sort_by' => 'views']);
بهروزرسانی خودکار
نسخههای تازه از https://asocode.ir اعلام میشوند و مثل هر افزونهی دیگری در صفحهی «بهروزرسانیها»ی وردپرس نمایش داده میشوند. پیش از نصب، اثر SHA-256 فایل با فهرست نسخهها مقایسه میشود؛ فایل دستکاریشده نصب نمیشود. دیدبان به هیچ سرویس لایسنس یا آمارگیری خارجی وصل نیست و فقط نسخهی نصبشده را با فهرست مقایسه میکند؛ اطلاعاتی از سایت شما فرستاده نمیشود.
برای دریافت از سرور دیگر، یا خاموش کردن بررسی، در wp-config.php:
define('DIDBAN_UPDATE_URL', 'https://example.ir/didban/update.json');
define('DIDBAN_UPDATE_URL', ''); // خاموش