کدهای SQL برای تغییر دامنه سایت وردپرس در دیتابیس
زمانی که قصد تغییر دامنه سایت وردپرس خود را داشته باشید، یکی از کارهایی حتما و حتما باید انجام شود، تغییر رشتههای دامنه قدیمی با دامنهٔ جدید است. یعنی درون هر جدولی از پایگاه دادهٔ وردپرس، اگر جایی عبارت دامنه قدیمی وجود داشته باشد، باید حتما با دامنهٔ جدید جایگزین شود. با این کار علاوه بر اینکه صفحات سایت برای بازدید کنندگان و مدیران سایت به درستی نمایش داده خواهد شد، محتویات دیگر از قبیل عکسها و فایلهای چند رسانهای هم بدون مشکل روی سایت به نمایش در خواهند آمد.
پس بحث ما اینجا ویرایش پایگاه دادهٔ وردپرس در مواقعی است که دامنه سایت تغییر کرده باشد. روشهای مختلفی برای انجام این کار وجود دارد که البته همگی آنها بر اساس اجرای کدهای SQL است. حالا چه این کدها را از طریق خط فرمان لینوکس وارد کنیم. چه از نرم افزار واسطی مثل phpMyAdmin استفاده کنیم که البته این روش سادهتر و دم دسترستر است.
کدهای SQL مد نظر ما که باید اجرا شوند بدین قرارند:
UPDATE wp_options SET option_value = replace(option_value, 'http://olddomain.com', 'http://newdomain.com') WHERE option_name = 'home' OR option_name = 'siteurl'; UPDATE wp_posts SET guid = replace(guid, 'http://olddomain.com','http://newdomain.com'); UPDATE wp_posts SET post_content = replace(post_content, 'http://olddomain.com', 'http://newdomain.com'); UPDATE wp_posts SET post_excerpt = replace(post_excerpt, 'http://olddomain.com', 'http://newdomain.com'); UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://olddomain.com', 'http://newdomain.com');
البته دست نگهدارید! آنها را باید اصلاح کنید و سپس اجرا نمایید. اول از همه که باید بدانید این ویرایش باید روی کدام جداول وردپرس انجام شود. چون دامنه سایت درون تمامی جداول یافت نمیشود و نیازی نیست روی آنها تغییری ایجاد کنیم. معمولاً عمده جداول وردپرس برای این منظور بدین صورت است:
- wp_options
- wp_posts
- wp_postmeta
اولین جدول مربوط به تنظیمات وردپرس است که اطلاعات حساسی را درون خود ذخیره میکند. جدول دوم و سوم هم مربوط به نوشتههای سایت است که باید آنها را هم اصلاح کنیم. هر جدول ستونها و ردیفهای مختلفی دارد. با استفاده از ۵ خط کد بالا، باید ستونهای این ۳ تا جدول را ویرایش کنید. به جای olddomain.com باید دامنه قدیمی و newdomain.com دامنه جدید را وارد نمایید. به http و https آدرس اینترنت سایت خود هم دقت کنید. در نهایت تک تک خطوط را جدا جدا در قسمت SQL Query در phpMyAdmin یا خط فرمان اجرا نمایید.
ممکن است به غیر از این جداول، جدولهای دیگری هم باشند که نیاز به تغییر دامنه داشته باشند. این به دانش شما در رابطه با کار کردن با افزونههای وردپرس بر میگردد. مثلا افزونههای صفحه ساز یک جدول خاص خودشان اضافه میکنند که باید از این کوئریها برای اصلاح مقادیر دامنه درون آنها هم استفاده کنید.