وردپرس؛ تبلیغات و پوش
افزونه قابل نصب، شورتکد هر ۱۳ فرمت، Inbox و Web Push با scope مستقل و رضایت بازدیدکننده.
افزونه وردپرس دیدنکس؛ تبلیغ و پوش در یک بسته
این افزونه برای نمایش تبلیغات و عضویت پوش سایت وردپرسی است. یک بار نشانی سرویس و شناسه جایگاه را تنظیم میکنید؛ برای استفاده مستقیم، JWT، کلید API خصوصی یا سرور اختصاصی ناشر لازم نیست. زیرساخت حساب، صف پیام، محتوای تبلیغ، گزارش و کیف جایزه در دیدنکس است. افزونه بهطور خودکار حساب وردپرس، ایمیل کاربران یا سفارشهای فروشگاه را ارسال نمیکند.
وردپرس ۶.۴ یا جدیدتر، PHP ۷.۴ یا جدیدتر و سایت HTTPS لازم است. برای نصب عمومی از نسخههای پشتیبانیشده وردپرس و PHP استفاده کنید. پلتفرم دیدنکس را ابتدا به ۸.۲۰ یا جدیدتر ارتقا دهید تا تشخیص فرمت جایگاه در مرورگر قابل استفاده باشد.
۱. نصب افزونه و تأیید سایت
فایل didnex-wordpress.zip را از دکمه دریافت همین صفحه بگیرید. در پیشخوان وردپرس ← افزونهها ← افزودن ← بارگذاری افزونه، ZIP را نصب و فعال کنید. قالب سایت باید hookهای استاندارد وردپرس و wp_footer را اجرا کند.
در پنل ناشر، رسانه را از نوع سایت ثبت کنید؛ دامنه باید با دامنه واقعی همین وردپرس یکسان باشد. رکورد TXT را طبق راهنمای بررسی DNS ثبت و مالکیت را تأیید کنید؛ فعالشدن رسانه توسط مدیر و فعالبودن جایگاه نیز لازماند. در دامنه www و بدون www، به یک نشانی اصلی ثابت هدایت شوید و همان میزبان را در رسانه ثبت کنید.
۲. تنظیم اتصال مشترک
در پیشخوان ← تنظیمات ← دیدنکس، نشانی HTTPS سرویس را روی https://didnex.com قرار دهید. این نشانی، دامنه خود دیدنکس است؛ آدرس سرور وردپرس نیست. بعد از تغییر دامنه نصب دیدنکس، همین فیلد را اصلاح کنید.
شناسه جایگاه را از پنل ناشر ← جایگاهها، زیر نام جایگاه فعال همان رسانه بردارید. شناسه کامل با UNT_ شروع میشود؛ با شناسه رسانه، پکیجنیم اپ، توکن Firebase و کلید API فرق دارد. آن را در «شناسه جایگاه پیشفرض تبلیغ» وارد کنید. برای پوش میتوانید همین جایگاه یا جایگاه فعال دیگری از همین سایت را انتخاب کنید؛ خالیبودن فیلد پوش یعنی استفاده از جایگاه پیشفرض.
تنظیمات را ذخیره و «بررسی اتصال همین جایگاه» را بزنید. این بررسی، وضعیت عمومی رسانه، دامنه و فرمت جایگاه را میخواند؛ تأیید نمایش واقعی، درآمد یا دریافت اعلان نیست. فقط مدیر وردپرس به ذخیره تنظیمات و عیبیاب سروری دسترسی دارد.
۳. نمایش تبلیغ با بلوک کد کوتاه
«نمایش تبلیغات» را فعال کنید. در نوشته، برگه یا ابزارک، بلوک «کد کوتاه / Shortcode» را اضافه و این مقدار را قرار دهید:
[didnex_ad]
فرمت پیشفرض «تشخیص خودکار» است؛ افزونه فرمت واقعی همان جایگاه را از دیدنکس میخواند. برای جایگاههای بیشتر، شناسه واقعی را در ابزار تولید کد افزونه وارد و دکمه کپی شورتکد را بزنید. کد آماده با شناسه همان جایگاه ساخته میشود؛ لازم نیست یک placeholder نامفهوم را حدس بزنید.
در قالب PHP میتوانید همان شورتکد پیشفرض را اجرا کنید:
<?php echo do_shortcode('[didnex_ad]'); ?>
فرمتهای قابل نمایش
تمام ۱۳ فرمت هسته وب پشتیبانی میشوند. برای هر فرمت، جایگاه همان نوع را در پنل بسازید؛ انتخاب نوع متفاوت در وردپرس، نوع واقعی جایگاه را تغییر نمیدهد.
• بنر: banner، درون صفحه.
• بنر تطبیقی: adaptive_banner، درون صفحه.
• همسان: native، درون صفحه.
• همسان ویدیویی: native_video، درون صفحه.
• ویدیوی درون محتوا: video، درون صفحه.
• بینابینی: interstitial، تمامصفحه با کلیک کاربر.
• ویدیوی جایزهدار: rewarded، با انتخاب کاربر و رسید معتبر.
• بینابینی جایزهدار: rewarded_interstitial، با انتخاب کاربر.
• آغاز اپ: app_open، در وب از دکمه صریح نمایش استفاده میشود.
• بازی تعاملی: playable، تمامصفحه با انتخاب کاربر.
• صوتی: audio، درون صفحه؛ پخش تابع کنترل و رضایت لازم در هسته است.
• کاروسلی: carousel، درون صفحه.
• نظرسنجی: poll، درون صفحه.
تبلیغ درون صفحه نزدیک محدوده قابل مشاهده دریافت میشود. تمامصفحه و جایزه خودکار روی بازشدن صفحه نمایش داده نمیشوند. در noFill یا خطا، فضای خالی تبلیغ درون صفحه جمع میشود و سایت ادامه مییابد. اندازه محتوای موفق از پروفایل جایگاه در SDK میآید، نه از ابعاد دلخواه فایل کمپین. نمایش و کلیک مالی را خود افزونه دوباره ثبت نمیکند؛ هسته SDK مسئول رویدادهای تبلیغ است.
جایزه تأییدشده در کیف نصب دیدنکس ثبت میشود. این افزونه امتیاز یا موجودی حساب وردپرس و ووکامرس را خودکار تغییر نمیدهد. برای اتصال جایزه به حساب سروری، قرارداد احراز هویت و بررسی رسید لازم است؛ callback مرورگر را مبنای افزایش مستقیم موجودی قرار ندهید.
۴. فعالسازی پوش سایت
ابتدا پوش همان رسانه را در پنل ناشر دیدنکس فعال کنید. در وردپرس «کنترل عضویت پوش» را روشن کنید. برای محل دلخواه، بلوک کد کوتاه زیر را بگذارید؛ یا در تنظیمات، محل نمایش را «کارت شناور» انتخاب کنید:
[didnex_push]
کارت تنها یک پرسش، با متن پیشفرض «آیا مایل به دریافت اعلانات هستید؟»، و دو دکمه «بله / خیر» دارد. متن را از تنظیمات ← دیدنکس ← «متن دعوت به دریافت اعلان» تغییر دهید؛ متن ساده، از ۱ تا ۳۰۰ نویسه است. پس از تغییر، کش صفحه وردپرس را نیز تازه کنید.
با انتخاب هر پاسخ، کارت بسته میشود و انتخاب در مرورگر ذخیره میشود؛ در مراجعه یا نشست بعد خودکار تکرار نمیشود. تغییر متن، دلیل نمایش دوباره برای افرادی که پاسخ دادهاند نیست. تنظیمات مدیر در مرورگر هر بازدیدکننده پاسخ ازپیشتعیینشده ایجاد نمیکند.
در تنظیمات افزونه، روش دریافت را انتخاب کنید: استاندارد Web Push برای دریافت راهدور، یا مستقیم دیدنکس بدون Firebase و بدون VAPID. در روش مستقیم، دریافت هنگام بازبودن صفحه انجام میشود و پیام در نوار اعلان سیستمعامل نمایش داده میشود. پس از بستهشدن صفحه، دریافت مستقیم ادامه ندارد. در مرورگر فاقد پشتیبانی، پیام داخل صفحه جایگزین نمیشود. تنها پس از کلیک «بله» مجوز مرورگر درخواست میشود. با انتخاب بله یا خیر کارت محو میشود و در نشستهای بعدی برنمیگردد؛ تغییر انتخاب فقط از بخش ترجیحات مخاطب انجام میشود. تنظیم قدیمی Inbox به اعلان داخل صفحه ادامه نمیدهد و برای دریافت سیستمی، انتخاب دوباره مخاطب لازم است. دریافت پسزمینه به پشتیبانی مرورگر و مجوز آن وابسته است.
تصمیم با localStorage و یک کوکی اولشخصِ صرفاً ترجیحی، تا یک سال حفظ میشود. این کوکی اعتبار ورود یا شناسه حساب وردپرس نیست. پاککردن دادههای سایت، حالت خصوصی یا تغییر نشانی سرویس ممکن است تصمیم ذخیرهشده را در دسترس نگذارد. عضویت قبلی معتبر نسخه ۱.۰ به انتخاب ذخیرهشده تبدیل میشود تا دوباره سؤال پرسیده نشود.
Service Worker از نشانی مجازی همین سایت با didnex_worker=1 ارائه میشود؛ به آپلود فایل در ریشه هاست یا دستکاری htaccess نیاز ندارد. scope آن زیر .didnex-push/ همان محل نصب است. worker ریشه افزونه PWA جایگزین یا حذف نمیشود و افزونه ترافیک صفحات را کش نمیکند. در نصب زیرپوشه و حالت پیوند یکتای ساده نیز از URL تولیدشده وردپرس استفاده کنید.
Safari و iOS را با توجه به نسخه، حالت وباپ نصبشده و محدودیت مرورگر روی دستگاه واقعی آزمایش کنید. اگر مجوز رد شد، افزونه خودکار کاربر را عضو روش دیگری نمیکند؛ برای تغییر انتخاب، کنترل ترجیحها در بخش بعد را استفاده کنید.
۵. ارسال یک پیام و خواندن آمار
پس از عضویت یک مرورگر آزمایشی، در پنل ناشر ← پوش، یک پیشنویس برای همان رسانه و موضوع بسازید؛ مقصد HTTPS در همان سایت باشد. ابتدا همان دستگاه آزمایشی را انتخاب و سپس شروع ارسال را بزنید. ذخیره پیشنویس بهتنهایی ارسال نیست. پردازش صف به زمانبند فعال دیدنکس وابسته است؛ نصب افزونه زمانبند سرور را راهاندازی نمیکند.
پذیرش سرویس، دریافت، نمایش و بازشدن را جدا بخوانید. worker پس از نمایش اعلان رسید میفرستد و کلیک بازدیدکننده، رسید بازشدن را ثبت میکند. بازشدن پنل مدیریت یا بررسی اتصال، آمار نمایش و کلیک واقعی ایجاد نمیکند. نمایش واقعی اعلان سیستمعامل، لمس اعلان و لغو عضویت را روی مرورگر پشتیبان آزمایش کنید.
لغو عضویت و خاموشکردن
برای امکان تغییر نظر، در صفحه حریم خصوصی یا تنظیمات حساب سایت، این کد کوتاه را قرار دهید:
[didnex_push_preferences]
این کنترل جدا از کارت دعوت است؛ «لغو عضویت اعلان» دریافت محلی را متوقف میکند و لغو سمت سرویس را پیگیری میکند. «تغییر انتخاب اعلان» فقط با درخواست مستقیم بازدیدکننده پرسش را دوباره باز میکند. صرف مراجعه دوباره، پرسش را باز نمیکند. فقط worker خود افزونه حذف میشود؛ worker ریشه PWA دستنخورده میماند.
اگر شبکه قطع باشد، لغو سروری به حالت در انتظار میرود و با اتصال یا مراجعه بعد پیگیری میشود؛ کارت دعوت همچنان بسته است. اطلاعات این وضعیت در کنترل ترجیحها نمایش داده میشود. مجوز سیستمعامل از تنظیمات مرورگر نیز قابل مدیریت است.
غیرفعالکردن افزونه وردپرس بهتنهایی همه اشتراکهای ثبتشده در دیدنکس را حذف نمیکند. برای توقف ارسال عمومی، پوش رسانه یا کمپین را در پنل دیدنکس هم متوقف کنید. با حذف افزونه، تنظیمات محلی آن حذف میشوند؛ اطلاعات دیگر افزونهها و حسابهای دیدنکس پاک نمیشوند.
عیبیابی
در خطای دامنه، www و میزبان اصلی WordPress را با رسانه مقایسه کنید. در خطای رسانه، تأیید DNS، بررسی مدیر و جایگاه فعال را ببینید. اگر مرورگر metadata را نمیگیرد، نسخه سرویس و CORS مسیر /api/connect-public را بررسی کنید. نشانی سرویس، کلید خصوصی یا API Token نیست.
اگر تبلیغ تست سالم است ولی کمپین واقعی نمیآید، فرمت، کشور، زمان، بودجه و سیاست جایگاه را در دیدنکس بررسی کنید. قطعی سرویس یا نبود کمپین نباید صفحه وردپرس را خراب کند. خطای HTTPS، JSON خراب و پاسخ طولانی باید به پیام یا جمعشدن کادر منجر شوند.
برای پوش پسزمینه، URL worker در تنظیمات افزونه باید JavaScript با MIME صحیح برگرداند؛ HTML، صفحه ورود یا صفحه چالش CDN پاسخ صحیح نیستند. کش/CDN نباید این درخواست را به صفحه اصلی تبدیل کند. در ابزار توسعه مرورگر، scope مستقل را بررسی کنید. اگر افزونه بهینهسازی، ترتیب اسکریپتها یا ویژگی data-origin هسته را تغییر میدهد، دو فایل اسکریپت دیدنکس را از آن تبدیل مستثنا کنید. هسته را همزمان بهصورت دستی و از چند افزونه با دامنههای متفاوت وارد نکنید.
پیش از انتشار، محیط staging را برای هر فرمت، noFill، قطع شبکه، رد و قبول مجوز، پیوند یکتای ساده، نصب زیرپوشه، قالب فعال و همزیستی با PWA بررسی کنید. آزمون واحد یا بررسی PHP، جای تحویل واقعی Web Push در همه مرورگرها را نمیگیرد.
منابع تکمیلی
API تنظیمات وردپرس، Shortcode API و Push API جزئیات زیرساخت را توضیح میدهند. راهنمای پوش وب و رویدادهای تبلیغ مرجع قرارداد دیدنکس هستند.