WidgetCoreمستندات WidgetCore

عیب‌یابی

راهنمای عیب‌یابی افزونه‌ی WidgetCore؛ ویجت دیده نمی‌شود، جستجو نتیجه نمی‌دهد، استایل‌ها بهم ریخته‌اند، به‌روزرسانی کار نمی‌کند و مشکلات عملکرد، همراه با روش تشخیص هر مورد.

این صفحه بر پایه‌ی «نشانه → علت → راه‌حل» نوشته شده است. اگر نشانه‌ی شما اینجا نیست، از بخش «تشخیص سریع» پایین صفحه شروع کنید.

نصب و فعال‌سازی

نشانهعلتراه‌حل
افزونه در فهرست نیستساختار پوشه اشتباه استباید wp-content/plugins/widgetcore/widgetcore.php باشد؛ یک لایه پوشه‌ی اضافه را حذف کنید
خطای «هدر افزونه نامعتبر»فایل اصلی جابه‌جا شدهwidgetcore.php باید در ریشه‌ی پوشه‌ی افزونه باشد
فعال می‌شود ولی ویجتی نیستالمنتور فعال نیستالمنتور را فعال کنید و ویرایشگر را تازه کنید
خطای PHP هنگام فعال‌سازینسخه‌ی PHP قدیمی‌تر از 7.4نسخه‌ی PHP را از کنترل پنل میزبان بالا ببرید
«این افزونه با نسخه‌ی وردپرس شما سازگار نیست»وردپرس قدیمی‌تر از 6.7وردپرس را به‌روز کنید

دیده‌نشدن ویجت‌ها در ویرایشگر

  1. المنتور فعال است؟

    در «افزونه‌ها» وضعیت المنتور را ببینید.

  2. کش ویرایشگر را تازه کنید

    با Ctrl + Shift + R صفحه‌ی ویرایشگر را کامل بارگذاری کنید.

  3. دسته‌ی درست را نگاه کنید

    ویجت‌ها در دسته‌ی «ویجت‌های WidgetCore» هستند؛ در جستجوی پنل wgcr را تایپ کنید.

  4. تداخل افزونه‌ها را بررسی کنید

    بقیه‌ی افزونه‌ها را موقتاً غیرفعال کنید؛ اگر ویجت‌ها برگشتند، افزونه‌ی مخرب را پیدا کنید.

جستجو نتیجه نمی‌دهد

نشانهعلتراه‌حل
هیچ اتفاقی نمی‌افتدعبارت کمتر از 2 نویسهدست‌کم دو نویسه تایپ کنید
پیام «خطا در دریافت نتایج»REST مسدود یا خطای سرورcurl روی /wp-json/wgcr/v1/search?q=test بزنید و کد وضعیت را ببینید
پنل باز می‌شود ولی خالی استمنبع اشتباه یا فیلتر رده خیلی محدود«منبع» و «دسته‌ها و برچسب‌ها» را بررسی کنید
فقط در ویرایشگر کار می‌کندبهینه‌ساز جاوااسکریپتsearch.js را از ترکیب/تأخیر خارج کنید
نتایج قدیمی می‌ماندکش سمت سرور روی /wp-json/مسیر REST را از کش بیرون بگذارید
در سایت چندزبانه فقط یک زبانمنبع روی پست‌تایپ زبان دیگر استدر هر زبان یک ویجت با منبع مناسب بگذارید

تشخیص سریع REST

bash
curl -s -o /dev/null -w "%{http_code}\n" "https://example.com/wp-json/wgcr/v1/search?q=test"
کدمعنا
200REST سالم است؛ مشکل در سمت مرورگر یا جاوااسکریپت است
400پارامتر q نامعتبر است (کمتر از 2 نویسه)
401 یا 403چیزی REST را محدود کرده است (افزونه‌ی امنیتی یا قوانین سرور)
404مسیر REST مسدود یا پیوندهای یکتا درست نیستند
500خطای سرور؛ لاگ خطای PHP را ببینید

اگر 404 گرفتید، «تنظیمات → پیوندهای یکتا» را باز کنید و یک بار «نام نوشته» را ذخیره کنید تا قواعد بازنویسی تازه شوند.

ظاهر و استایل

نشانهعلتراه‌حل
استایل‌ها اعمال نمی‌شوندsearch.css بارگذاری نشدهدر ابزار توسعه‌دهنده ببینید فایل با ?ver=0.0.7 بارگذاری شده یا نه
پس از به‌روزرسانی ظاهر قدیمی استکش مرورگر یا CDNکش CDN را خالی کنید؛ خود افزونه نسخه را به نشانی فایل اضافه می‌کند
ستون‌ها اثر ندارندحالت نمایش روی «لیست» استحالت را به «نمایش در صفحه» تغییر دهید
کارت‌ها هم‌ارتفاع نیستند«ارتفاع برابر» خاموش است یا کاشی روشن استکاشی را خاموش و ارتفاع برابر را روشن کنید
پنل زیر یک عنصر دیگر پنهان می‌شودz-index پوشش سایتz-index پنل را در CSS سفارشی بالا ببرید (پیش‌فرض 999)
CSS سفارشی اثر نمی‌کندوزن انتخابگر کمتر استانتخابگر را با .wgcr-search شروع کنید

ویجت سوالات متداول

نشانهعلتراه‌حل
آیتم‌ها باز نمی‌شونداسکریپت ویجت اجرا نشدهکش را خالی کنید و تداخل بهینه‌سازها را بررسی کنید
همه‌ی آیتم‌ها باز می‌مانندحالت روی «آزاد» است«حالت باز شدن» را روی آکاردئون بگذارید
پاسخ کامل دیده نمی‌شودارتفاع پاسخ محاسبه نشدهصفحه را یک بار resize کنید یا کش را خالی کنید؛ اسکریپت ارتفاع را دوباره می‌سنجد
اسکیما در صفحه نیستکنترل خاموش یا ویجت دومکنترل «اسکیمای FAQ» را روشن و ویجت را اول بگذارید
آیکون سفارشی نمی‌چرخدنوع آیکون سفارشی نیست«آیکون» را روی «سفارشی (کتابخانه المنتور)» بگذارید

به‌روزرسانی

نشانهعلتراه‌حل
نسخه‌ی جدید دیده نمی‌شودکش 12 ساعته‌ی وردپرسپیوند «بررسی به‌روزرسانی» را بزنید
خطای دانلود بستهمخزن خصوصی بدون توکنWGCR_GITHUB_TOKEN را در wp-config.php تعریف کنید
مهلت زمانی درخواستخروجی سرور به api.github.com مسدود استدسترسی خروجی را باز کنید
«جزئیات افزونه» خالی استانتشار بدون یادداشتمتن یادداشت را در انتشار بنویسید
پس از به‌روزرسانی افزونه غیرفعال شدساختار پوشه در ZIP انتشاربسته باید پوشه‌ی widgetcore/ داشته باشد؛ از بسته‌ی رسمی انتشار استفاده کنید

عملکرد

نشانهعلتراه‌حل
جستجو کند استlimit بزرگ یا orderby="rand"تعداد نتایج را کم و مرتب‌سازی را relevance یا date بگذارید
هر تایپ یک درخواست می‌فرستدانتظار درستافزونه 250 میلی‌ثانیه تأخیر و لغو درخواست قبلی دارد؛ اگر بیشتر می‌بینید، بهینه‌ساز را بررسی کنید
بار سرور بالاستشمارش کل نتایجصفحه‌بندی را «هیچکدام» یا «بارگذاری با کلیک» بگذارید تا no_found_rows فعال بماند
CSS قالب تکرار می‌شودقالب در هر نتیجه استایل چاپ می‌کندافزونه استایل‌ها را یک‌جا جمع می‌کند؛ اگر هنوز تکرار می‌شود، استایل را در تنظیمات قالب المنتور بگذارید نه درون محتوا

تشخیص سریع (چک‌لیست)

  1. نسخه‌ها را ببینید

    وردپرس ≥ 6.7، PHP ≥ 7.4، المنتور فعال، WidgetCore نسخه‌ی 0.0.7.

  2. خطاهای PHP را بخوانید

    «ابزارها → سلامت سایت» و در صورت نیاز WP_DEBUG_LOG.

  3. REST را آزمایش کنید

    curl روی مسیر جستجو؛ کد وضعیت باید 200 باشد.

  4. دارایی‌ها را ببینید

    در تب Network باید search.css و search.js با ?ver= بارگذاری شوند.

  5. بدون بهینه‌ساز امتحان کنید

    موقتاً افزونه‌های کش/بهینه‌ساز را غیرفعال کنید و دوباره تست کنید.

  6. افزونه را دوباره نصب کنید

    چون افزونه داده‌ای ذخیره نمی‌کند، حذف و نصب دوباره بی‌خطر است.