گاهی اوقات در وردپرس با خطاهایی مثل “Error establishing a database connection” یا کندی شدید سایت مواجه می‌شویم که ریشه آن‌ها به خرابی جداول دیتابیس برمی‌گردد. وردپرس برای چنین مواقعی یک قابلیت داخلی قدرتمند دارد که با یک خط کد ساده فعال می‌شود:

define(‘WP_ALLOW_REPAIR’, true)
در این مقاله آموزش وردپرس به‌صورت کامل بررسی می‌کنیم این دستور چیست، چه زمانی باید از آن استفاده کنیم، چگونه فعال و غیرفعال می‌شود و چه نکات امنیتی مهمی دارد.

 

WP_ALLOW_REPAIR چیست و چه کاری انجام می‌دهد؟

WP_ALLOW_REPAIR یک قابلیت مخفی در وردپرس است که امکان تعمیر (Repair) و بهینه‌سازی (Optimize) جداول دیتابیس را بدون نیاز به ورود به پیشخوان فراهم می‌کند. این ویژگی زمانی بسیار مفید است که:

سایت بالا نمی‌آید
با خطای اتصال به دیتابیس مواجه هستید
برخی صفحات یا نوشته‌ها به‌درستی لود نمی‌شوند
دیتابیس به دلیل قطعی سرور یا افزونه‌های معیوب آسیب دیده است
پس از فعال‌سازی، وردپرس یک صفحه مخصوص تعمیر دیتابیس در اختیار شما قرار می‌دهد.

 

چه زمانی باید از تعمیر دیتابیس وردپرس استفاده کنیم؟

استفاده از WP_ALLOW_REPAIR در شرایط زیر توصیه می‌شود:

نمایش خطای Error establishing a database connection
عدم بارگذاری برخی بخش‌های مدیریت وردپرس
کندی غیرعادی سایت بدون دلیل مشخص
خطاهای مکرر در فایل debug.log مرتبط با دیتابیس
بعد از انتقال سایت یا بازیابی بکاپ ناقص
این روش بدون نیاز به phpMyAdmin یا دسترسی تخصصی به دیتابیس، بسیاری از مشکلات را برطرف می‌کند.

 

نحوه فعال‌سازی WP_ALLOW_REPAIR در وردپرس

مرحله 1: ویرایش فایل wp-config.php
از طریق هاست (File Manager) یا FTP وارد پوشه اصلی وردپرس شوید و فایل wp-config.php را باز کنید.

مرحله 2: افزودن کد تعمیر دیتابیس
قبل از خط زیر:

/* That’s all, stop editing! Happy publishing. */
این کد را اضافه کنید:

define('WP_ALLOW_REPAIR', true);

مرحله 3: اجرای تعمیر دیتابیس
حالا در مرورگر خود این آدرس را باز کنید:

yoursite.com/wp-admin/maint/repair.php
در این صفحه دو گزینه مشاهده می‌کنید:

Repair Database → فقط تعمیر جداول
Repair and Optimize Database → تعمیر + بهینه‌سازی جداول
پیشنهاد می‌شود گزینه دوم را انتخاب کنید تا هم خطاها رفع شوند و هم ساختار دیتابیس بهینه گردد.

 

🔰 اگر بعد از تعمیر دیتابیس با WP_ALLOW_REPAIR می‌خواهید داده‌های اضافی مثل رونوشت‌های قدیمی، پیش‌نویس‌ها و جداول بلااستفاده را هم پاک‌سازی کنید، استفاده از افزونه Database Cleaner کمک می‌کند دیتابیس وردپرس شما سبک‌تر، سریع‌تر و بهینه تر شود

 

بعد از تعمیر دیتابیس چه کارهایی باید انجام دهیم؟

پس از پایان عملیات:

کد را از wp-config.php حذف کنید
کش سایت و مرورگر را پاک کنید
عملکرد صفحات سایت و پنل مدیریت را بررسی کنید
⚠️ بسیار مهم است که این خط کد را در سایت نگه ندارید.

 

نکات امنیتی مهم درباره WP_ALLOW_REPAIR

صفحه تعمیر دیتابیس نیاز به لاگین ندارد؛ یعنی هر کسی با داشتن لینک می‌تواند به آن دسترسی داشته باشد.
اگر این کد فعال بماند، سایت شما در معرض خطر دستکاری دیتابیس قرار می‌گیرد.
بنابراین فقط هنگام نیاز فعال کرده و بلافاصله بعد از پایان کار، آن را حذف کنید.

 

✅ اگر هنگام تعمیر دیتابیس با WP_ALLOW_REPAIR به رفتارهای مشکوک یا خطاهای غیرعادی برخورد کردید، بد نیست هم‌زمان از نظر امنیتی هم سایت را بررسی کنید؛ به‌خصوص اینکه با استفاده از آموزش پیدا کردن کاربران ادمین مخفی در وردپرس از طریق phpMyAdmin می‌توانید حساب‌های ناشناس موجود در دیتابیس را شناسایی کرده و از سلامت ساختار کاربران مطمئن شوید.

 

مشکلاتی که با WP_ALLOW_REPAIR قابل حل هستند

خرابی جدول‌های wp_options، wp_posts، wp_users
خطاهای مربوط به افزونه‌های ناقص حذف‌شده
کندی ناشی از ایندکس‌های خراب
ارورهای مکرر در هنگام ذخیره نوشته‌ها

 

جمع‌بندی

دستور ساده اما قدرتمند: define(‘WP_ALLOW_REPAIR’, true) یکی از بهترین ابزارهای داخلی وردپرس برای تعمیر و بهینه‌سازی دیتابیس بدون نیاز به دسترسی مستقیم به سرور است. اگر سایت شما با خطاهای دیتابیس یا کندی غیرعادی مواجه شده، این روش می‌تواند در چند دقیقه مشکل را برطرف کند. فقط فراموش نکنید بعد از اتمام کار، حتماً آن را غیرفعال کنید تا امنیت سایت حفظ شود.