عیبیابی
عیبیابی
فعال کردن حالت دیباگ
قبل از هر چیز، حالت دیباگ را فعال کنید تا لاگهای دقیقتری داشته باشید:
// wp-config.php
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );علاوه بر این میتوانید گزینهی ثبت لاگ دیباگ را در تنظیمات ← پیشرفته (کلید advanced.debug_log) فعال کنید.
سپس لاگ را دنبال کنید:
tail -f wp-content/debug.logبازههای زمانی نمایش داده نمیشوند
۱. ساعت کاری تنظیم نشده: پرونوبت ← کارمندان → کارمند موردنظر → ساعت کاری را تنظیم کنید.
۲. کش منقضی نشده:
کش بازهها بهصورت خودکار با هر تغییر ساعت کاری، روز تعطیل، سرویس یا نوبت پاک میشود. در صورت نیاز، مقدار «مدت کش (دقیقه)» را در تنظیمات ← پیشرفته (کلید advanced.cache_ttl_minutes) کاهش دهید.
۳. تعارض با افزونه کش:
Page Caching برای endpoint های REST پرونوبت را غیرفعال کنید. در W3TC/WP Super Cache مسیر /wp-json/pronobat/ را exclude کنید.
۴. حداقل زمان رزرو خیلی زیاد است:
مقدار «حداقل ساعت پیش از رزرو» را در تنظیمات ← پیشرفته (کلید advanced.min_advance_hours) بررسی کنید.
پیامک ارسال نمیشود
۱. API Key اشتباه: دکمه «ارسال پیامک آزمایشی» را بزنید و خطا را بررسی کنید.
۲. اعتبار ناکافی: موجودی حساب سرویس پیامک را بررسی کنید.
۳. opt-out فعال است: در پرونوبت ← مشتریان بررسی کنید که مشتری گزینه opt-out را فعال نکرده باشد.
۴. سقف روزانه رسیده:
مقدار «سقف روزانه پیامک» را در تنظیمات ← پیامک (کلید sms.daily_cap) افزایش دهید.
۵. فرمت شماره اشتباه:
شماره باید دقیقاً 09XXXXXXXXX (۱۱ رقم) باشد.
پرداخت ناموفق یا Redirect اشتباه
۱. URL بازگشت ثبت نشده:
آدرس بازگشت/Callback را در پنل درگاه روی https://example.com/wp-json/pronobat/v1/public/payment/verify تنظیم کنید. این endpoint پس از تأیید، کاربر را به صفحههای /booking/success یا /booking/failed هدایت میکند.
۲. IP سرور مسدود است: برخی درگاهها (مثل زرینپال) نیاز به whitelist کردن IP سرور دارند.
۳. Merchant ID اشتباه: در محیط sandbox از credential های sandbox استفاده کنید.
REST API پاسخ نمیدهد
۱. Permalink ها ریست نشده: تنظیمات ← پیوندهای یکتا را باز و ذخیره کنید.
۲. mod_rewrite غیرفعال:
مطمئن شوید AllowOverride All در تنظیمات Apache فعال است.
خطای ۴۰۳ در مسیرهای مدیریتی
Nonce منقضی شده. صفحه را رفرش کنید تا Nonce تازه دریافت شود. عمر پیشفرض Nonce در وردپرس ۱۲ ساعت است.
یادآورها ارسال نمیشوند
۱. WP-Cron غیرفعال:
بررسی کنید DISABLE_WP_CRON در wp-config.php مقدار true ندارد.
۲. Cron بسیار کم اجرا میشود: برای سایتهای کمترافیک، یک Real Cron از طریق cPanel یا سرور تنظیم کنید:
*/5 * * * * wget -q -O - https://example.com/wp-cron.php?doing_wp_cronپاک کردن کش slot بهصورت دستی
کش بازهها در ترنزینتهای وردپرس با پیشوند pronobat_slots_ نگهداری میشود و با ذخیرهی هر بخش از تنظیمات، یا تغییر ساعت کاری/روز تعطیل/سرویس/نوبت بهطور خودکار پاک میشود. برای پاکسازی دستی:
# حذف همه ترنزینتهای کش بازه
wp transient delete --all
# یا فقط ذخیرهی دوبارهی یک تب از تنظیمات افزونهارسال گزارش خطا
در صورت باقی ماندن مشکل، فایل debug.log مرتبط را از طریق صفحه محصول در راستچین و سیستم تیکت پشتیبانی ارسال کنید.
پرونوبت را همین الان امتحان کنید
یک نمونه کامل و زنده از افزونه با دادههای واقعی — بدون نیاز به نصب.