غیرفعال کردن ویرایشگر وردپرس؛ راهنمای جامع کدرنویسی و امنیت
ویرایشگر وردپرس یکی از کلیدیترین بخشها برای مدریت محتوا و فایلهای پوسته یا افزونه است. با این حال، در مواقع متعدد به دلایل امنیتی، جلوگیری از دستکاری ناخواسته کدها توسط دسترسیهای اپراتوری یا ناسازگاری با قالبها، نیاز به غیرفعال کردن ویرایشگر وردپرس پیدا میکنید. غیرفعالسازی میتواند شامل دو بخش کاملاً مجزا باشد: بستن ویرایشگر آنلاین فایلها در پیشخوان (دیداری/کد) یا غیرفعال کردن ویرایشگر بلوکی گوتنبرگ و جایگزینی آن با ویرایشگر کلاسیک.
define('DISALLOW_FILE_EDIT', true); در فایل wp-config.php.
add_filter('use_block_editor_for_post', '__return_false'); در فایل functions.php یا نصب افزونه Classic Editor.
- • چرا باید ویرایشگر وردپرس را غیرفعال کنیم؟
- • روشهای غیرفعال کردن ویرایشگر فایل (کدنویسی و امنیت)
- • روشهای غیرفعال کردن ویرایشگر بلوکی (گوتنبرگ)
- • مقایسه روشهای مختلف غیرفعالسازی
- • نقش غیرفعالسازی در افزایش امنیت وردپرس
- • عیبیابی سریع (Troubleshooting)
- • سوالات متداول
چرا باید ویرایشگر وردپرس را غیرفعال کنیم؟

کلمه «ویرایشگر» در وردپرس به دو مفهوم کاملاً جداگانه اشاره دارد که هر کدام خطرات و کاربردهای خاص خود را دارند:
- ویرایشگر کدهای پوسته و افزونه (File Editor): بخشی در منوی نمایش و افزونهها که اجازه میدهد کدهای PHP و CSS را مستقیماً از پیشخوان تغییر دهید. اگر نفوذگری به پیشخوان دسترسی پیدا کند، با این بخش کل سایت را از دسترس خارج کرده یا کدهای مخرب تزریق میکند.
- ویرایشگر محتوا (Gutenberg/Classic Editor): ابزاری که برای نوشتن پستها و برگهها استفاده میشود. برخی مدیران وبسایتها ترجیح میدهند برای جلوگیری از به هم خوردن چیدمانهای پیچیده توسط نویسندگان سایت، این ویرایشگر را در بخشهای خاصی محدود کنند.
توصیه سازمانهای امنیتی این است که دسترسی به ویرایش مستقیم فایلها حتماً غیرفعال باشد. در پروژههای سفارشی مانند طراحی سایت شرکتی یا پروژههای بزرگ طراحی سایت فروشگاهی، بستن این بخش جلوی اشتباهات انسانی و خطاهای مرگبار Fatal Error را میگیرد.
روشهای غیرفعال کردن ویرایشگر فایل (کدنویسی و امنیت)

بهترین و سریعترین روش برای حذف بخش «ویرایشگر پوسته» و «ویرایشگر افزونه»، استفاده از فایل پیکربندی اصلی وردپرس یا همان wp-config.php است.
مراحل غیرفعال کردن ویرایشگر فایل از طریق wp-config.php
- وارد کنترل پنل هاست خود (Cpanel یا DirectAdmin) شوید.
- به مسیر اصلی نصب وردپرس (معمولاً پوشه
public_html) بروید. - فایل
wp-config.phpرا پیدا کرده و آن را برای ویرایش باز کنید. - خط زیر را پیدا کنید:
/* That's all, stop editing! Happy publishing. */ - کد زیر را دقیقاً بالای این خط اضافه کنید:
پس از ذخیره فایل، اگر پیشخوان وردپرس را رفرش کنید، گزینههای «ویرایشگر پوسته» و «ویرایشگر افزونه» کاملاً ناپدید میشوند. این اقدام پایه و اساس حفظ امنیت وبسایت در برابر ویرایشهای غیرمجاز است.
define('DISALLOW_FILE_MODS', true);
روشهای غیرفعال کردن ویرایشگر بلوکی (گوتنبرگ)

بسیاری از کاربران و طراحان سایت به دلایل مختلف مانند سرعت بالای ویرایشگر قدیمی، هماهنگی با صفحه سازها یا سادگی، ترجیح میدهند ویرایشگر جدید وردپرس (گوتنبرگ) را غیرفعال کنند.
روش اول: غیرفعالسازی با کد در functions.php
بدون نیاز به نصب هیچ افزونه اضافی، فقط با افزودن یک خط کد به فایل functions.php قالب خود، میتوانید ویرایشگر بلوکی را بهطور کامل غیرفعال کنید. برای اعمال این تقییرات مراحل زیر را طی کنید:
add_filter(‘use_block_editor_for_post’, ‘__return_false’, 10);
روش دوم: غیرفعالسازی هوشمند فقط برای نوع خاصی از محتوا
گاهی اوقات ممکن است بخواهید ویرایشگر بلوکی برای نوشتهها فعال بماند، اما برای برگهها یا محصولات غیرفعال شود. برای این منظور میتوانید از قطعه کد زیر استفاده کنید:
if ($post_type === ‘page’) { // نام پستتایپ مورد نظر
return false;
}
return $is_enabled;
}
add_filter(‘use_block_editor_for_post_type’, ‘disable_gutenberg_for_post_type’, 10, 2);
استفاده درست از کدهای سفارشی در خدمات توسعه وب باعث بهینهتر ماندن سایت و عدم وابستگی به افزونههای متعدد میشود.
روش سوم: نصب افزونه Classic Editor
اگر علاقهای به دستکاری کدها ندارید، رسمیترین راهکار استفاده از افزونه Classic Editor است که توسط تیم خود وردپرس توسعه داده شده است. این افزونه به شما اجازه میدهد بین ویرایشگر کلاسیک و گوتنبرگ به دلخواه جابجا شوید.
مقایسه روشهای مختلف غیرفعالسازی
برای انتخاب بهترین مسیر متناسب با نیاز وبسایت خود، جدول مقایسهای زیر را بررسی کنید:
| روش غیرفعالسازی | ویژگی و کاربرد اصلی |
|---|---|
| تغییر فایل wp-config.php | کاهش ریسکهای امنیتی و غیرفعال کردن ویرایشگر فایل پوسته و افزونه. |
| افزودن کد به functions.php | حذف کامل گوتنبرگ بدون نیاز به نصب افزونه با سرعت بالا. |
| استفاده از افزونه Classic Editor | سادهترین راهکار همراه با قابلیت انتخاب ویرایشگر توسط کاربران مختلف. |
| فیلترهای سفارشی پستتایپ | کنترل دقیق روی بخشهای خاص مانند برگهها یا محصولات. |
نقش غیرفعالسازی ویرایشگر در افزایش امنیت وردپرس
ویرایشگر آنلاین فایلها یکی از آسیبپذیرترین بخشهای وردپرس در زمان حملات سایبری است. در صورتی که هکرها بتوانند با هک کردن اکانت یکی از مدیران یا استفاده از حملات brute-force به پیشخوان دسترسی پیدا کنند، بدون نیاز به دسترسی هاست و صرفاً از طریق ویرایشگر پوسته، کد م مخرب خود را آپلود کرده و کنترل کل سرور را به دست میگیرند.
برای حفظ ایمنی کامل وبسایت در کنار بستن ویرایشگر فایل، حتماً اقدامات زیر را هم به شکل همزمان انجام دهید:
- حتماً یک رمز قوی برای وردپرس جهت حسابهای کاربری با سطح دسترسی مدیریت انتخاب کنید.
- با راهکار ساده اضافه کردن reCAPTCHA به وردپرس جلوی رباتهای مهاجم را بگیرید.
- یک افزونه ضد xss وردپرس نصب کنید تا از تزریق اسکریپتهای مخرب جلوگیری شود.
- سیستم اسکن خودکار وردپرس را فعال کرده تا تغییرات مشکوک فایلها گزارش شوند.
- با اقداماتی نظیر غیرفعال کردن pingback وردپرس مسیرهای حملات حملات DDoS و اسپم را مسدود نمایید.
ترکیب این اصول فنی نهتنها ساختار وبسایت شما را یکپارچه نگه میدارد، بلکه باعث میشود استراتژیهای کمپینهای دیجیتال مارکتینگ و فعالیتهای مرتبط با حوزه سئو و بهینهسازی سایت با قطعیهای ناخواسته متوقف نشوند. تیم تخصصی مهیار هاب همواره بر اجرای استاندارهای امنیتی وردپرس تاکید دارد.
عیبیابی سریع (Troubleshooting)
define('DISALLOW_FILE_EDIT', true); بالاتر از خط /* That's all, stop editing! */ ذخیره شده باشد. همچنین حافظه کش هاست یا افزونه کش را پاک کنید.functions.php را باز کرده و کدی که اضافه کردهاید را پاک کنید. حتما کدهای PHP را داخل تگ اصلی PHP یعنی <?php قرار دهید.سوالات متداول
current_user_can('author') در فایل functions.php میتوانید شرطی بنویسید که ویرایشگر گوتنبرگ فقط برای آن نقش کاربری غیرفعال شود.سوالات متداول
چگونه ویرایشگر فایل پوسته و افزونه را در وردپرس غیرفعال کنیم؟
برای این کار کافی است کد define(‘DISALLOW_FILE_EDIT’, true); را در فایل wp-config.php و بالای خط stop editing قرار دهید تا دسترسی به ویرایش آنلاین فایلها قطع شود.
آیا غیرفعال کردن ویرایشگر گوتنبرگ باعث کندی سایت میشود؟
خیر، اگر این کار را از طریق افزودن قطعه کد به فایل functions.php انجام دهید، هیچ افزونه اضافهای نصب نشده و هیچ تاثیر منفی بر سرعت سایت نخواهد داشت.
چگونه ویرایشگر بلوکی را فقط برای برگه یا پستتایپ خاص غیرفعال کنیم؟
با استفاده از فیلتر use_block_editor_for_post_type در فایل functions.php میتوانید شرطی تعیین کنید که گوتنبرگ فقط برای پستتایپهای خاصی مثل برگه یا محصول غیرفعال شود.
تفاوت کد DISALLOW_FILE_EDIT با DISALLOW_FILE_MODS چیست؟
کد اول فقط ویرایش مستقیم کدهای فایلها را مسدود میکند، اما کد دوم علاوه بر ویرایش، امکان نصب و بروزرسانی افزونهها و قالبها را نیز کاملاً غیرفعال میسازد.