نوشته شده در 10 دیدگاه

عدم دسترسی ادمین به افزودن افزونه یا قالب در وردپرس

چرا ادمین وردپرس نمی‌تواند افزونه یا قالب اضافه کند؟

گاهی با وجود داشتن نقش مدیر کل (Administrator) در وردپرس، امکان افزودن یا ویرایش افزونه‌ها و قالب‌ها وجود ندارد. این مشکل معمولاً به تنظیمات فنی سایت مربوط می‌شود، نه سطح دسترسی کاربر.

در ادامه، مهم‌ترین دلایل و راه‌حل‌های این مشکل را به‌صورت خلاصه بررسی می‌کنیم.

1. بررسی نقش کاربری

ابتدا مطمئن شوید نقش شما واقعاً مدیر کل است:

پیشخوان ← کاربران ← شناسنامه شما

اگر نقش Administrator نباشد، دسترسی مدیریت افزونه و قالب فعال نمی‌شود.

2. محدودیت در فایل wp-config.php

در بسیاری از سایت‌ها نصب و ویرایش افزونه‌ها از طریق فایل تنظیمات وردپرس غیرفعال شده است.

در فایل wp-config.php این کدها را بررسی کنید:

define('DISALLOW_FILE_EDIT', true);
define('DISALLOW_FILE_MODS', true);

در صورت وجود، مقدار آن‌ها را به false تغییر دهید یا کلاً حذف کنید.

3. محدودیت دسترسی در هاست

اگر دسترسی پوشه‌های زیر درست نباشد، وردپرس اجازه نصب افزونه را نمی‌دهد:

wp-content
wp-content/plugins
wp-content/themes

دسترسی استاندارد:

  • پوشه‌ها: 755
  • فایل‌ها: 644

در صورت نیاز، از پشتیبانی هاست بخواهید Permission و Ownership را اصلاح کند.

4. تداخل افزونه‌های امنیتی

افزونه‌های امنیتی مثل Wordfence یا iThemes Security ممکن است دسترسی مدیر کل را محدود کنند. برای تست، می‌توانید موقتاً پوشه افزونه امنیتی را تغییر نام دهید و نتیجه را بررسی کنید.

نوشته شده در 3 دیدگاه

رفع خطای Fatal Error در وردپرس

رفع خطای Fatal Error در وردپرس

رفع خطای Fatal Error در وردپرس

خطای Fatal Error ممکن است سایت شما را از دسترس خارج کند، اما با چند گام ساده می‌توان آن را برطرف کرد. در این مقاله بهترین و عملی‌ترین روش‌ها را توضیح داده‌ایم.

چرا این خطا نگران‌کننده است؟

عبارت Fatal Error به معنی «خطای کشنده» است؛ یعنی اجرای اسکریپت PHP متوقف شده و می‌تواند کل سایت را خراب کند. اما خوشبختانه این پیغام معمولاً حاوی مسیر خطا (stack trace) است که به شما می‌گوید مشکل از کجا آغاز شده — این اطلاعات کلیدی است.

گام ۱ — دقیقاً پیام خطا را بخوانید

وقتی پیام خطا نمایش داده می‌شود، بعد از عبارت Fatal Error مسیر فایل و خط رخداد نوشته می‌شود. همین مسیر معمولاً نشان‌دهندهٔ قالب یا افزونهٔ مشکل‌دار است:

مثال: Fatal error: Uncaught Error: Call to undefined function in /home/your-site/public_html/wp-content/themes/your-theme/functions.php on line 123

از این مسیر برای تصمیم‌گیری دربارهٔ گام‌های بعدی استفاده کنید.

گام ۲ — آپدیت نسخه PHP (پیشنهاد اولیه)

یکی از شایع‌ترین دلایل Fatal Error، قدیمی بودن نسخه PHP سرور است. برای رفع:

  • وارد پنل هاست خود (مثل cPanel) شوید.
  • به بخش Software > Select PHP Version بروید.
  • نسخهٔ PHP را به نسخهٔ پشتیبانی‌شده (مثلاً 8.x یا حداقل نسخه پیشنهادی وردپرس/قالب) ارتقا دهید.

نکته: اگر بلافاصله مشکل حل نشد، یک یا دو نسخهٔ دیگر PHP را هم تست کنید؛ گاهی قالب یا افزونه با نسخهٔ مشخصی سازگارتر است.

گام ۳ — تست قالب (Theme)

اگر در پیام خطا مسیر wp-content/themes دیده می‌شود، احتمال بالایی وجود دارد که مشکل از قالب باشد—خصوصاً اگر خطا بعد از آپدیت قالب ظاهر شده.

روش سریع برای تشخیص:

  1. با یک نرم‌افزار FTP (مثل FileZilla) یا از File Manager هاست وارد مسیر /wp-content/themes شوید.
  2. پوشهٔ قالب فعلی را به‌طور موقت تغییر نام دهید (مثلاً old-theme).
  3. وردپرس به‌طور خودکار یکی از قالب‌های پیش‌فرض را فعال می‌کند؛ اگر سایت بالا آمد، مشکل از قالب بوده است.

اگر مشکل از قالب است، پوشه را به نام اصلی برگردانید و قالب را به‌صورت دستی آپدیت کنید (آپلود فایل قالب جدید از طریق FTP).

گام ۴ — تست افزونه‌ها (Plugins)

اگر تغییر نام قالب مشکل را حل نکرد، احتمالاً یکی از افزونه‌ها باعث ایجاد خطاست. تشخیص سریع:

  1. وارد مسیر /wp-content شوید.
  2. پوشهٔ plugins را موقتاً تغییر نام دهید (مثلاً plugins-old).
  3. همهٔ افزونه‌ها غیرفعال می‌شوند؛ بررسی کنید آیا خطا برطرف شده است یا خیر.

اگر مشکل حل شد، پوشه را به نام plugins بازگردانید و سپس افزونه‌ها را یکی‌یکی فعال کنید تا افزونهٔ مشکل‌زا را شناسایی نمایید. پس از یافتن افزونهٔ معیوب، آن را آپدیت، غیرفعال یا با گزینهٔ مشابه جایگزین کنید.

نکات تکمیلی و توصیه‌ها

  • قبل از هر تغییر مهم، از فایل‌ها و دیتابیس بک‌آپ بگیرید.
  • اگر امکان دارد ابتدا تغییرات را روی لوکال‌هاست یا محیط staging تست کنید، سپس به سرور اصلی منتقل کنید.
  • مستندات قالب و افزونه‌ها را بررسی کنید؛ ممکن است نسخهٔ PHP مناسب یا نیازمندی‌های دیگری ذکر شده باشد.
  • در صورتی که خطا مربوط به کد دلخواه شما (custom code) است، آن قطعه کد را به‌طور موقت حذف یا غیرفعال کنید تا بررسی شود.