چرا آدرس سایت وردپرس را تغییر دهیم؟
تغییر آدرس سایت وردپرس (Site URL) در شرایطی لازم میشود: انتقال سایت به دامنه جدید، تغییر از HTTP به HTTPS، تغییر از www به بدون www (یا برعکس)، یا رفع مشکل ریدایرکت بیپایان.
روش ۱: از wp-config.php (سریعترین)
در فایل wp-config.php قبل از خط That's all اضافه کنید:
define('WP_HOME', 'https://newdomain.com');
define('WP_SITEURL', 'https://newdomain.com');
این روش تنظیمات دیتابیس را override میکند.
روش ۲: از phpMyAdmin با SQL
وارد phpMyAdmin شوید. دیتابیس وردپرس را انتخاب و تب SQL بزنید:
UPDATE wp_options SET option_value = 'https://newdomain.com' WHERE option_name = 'siteurl';
UPDATE wp_options SET option_value = 'https://newdomain.com' WHERE option_name = 'home';
روش ۳: تغییر URL در محتوا
پس از تغییر دامنه، URL قدیم در محتوای نوشتهها، تصاویر و لینکها باقی میماند:
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://olddomain.com', 'https://newdomain.com');
UPDATE wp_posts SET guid = REPLACE(guid, 'http://olddomain.com', 'https://newdomain.com');
UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://olddomain.com', 'https://newdomain.com');
روش ۴: WP-CLI (توصیهشده)
wp search-replace 'http://olddomain.com' 'https://newdomain.com' --all-tables
این دستور تمام جداول شامل URL، GUID و متادیتا را یکجا تغییر میدهد.
روش ۵: افزونه Better Search Replace
این افزونه از پیشخوان وردپرس امکان جایگزینی متن در دیتابیس را فراهم میکند. بدون نیاز به phpMyAdmin یا SSH.
نکات مهم
حتماً قبل از هر تغییری بکاپ بگیرید! پس از تغییر URL، فایل .htaccess را هم بررسی کنید. کش مرورگر و CDN را پاک نمایید. Permalink ها را مجدداً ذخیره کنید (تنظیمات > پیوندهای یکتا > ذخیره).
تغییر HTTP به HTTPS
اگر SSL نصب کردید و میخواهید به HTTPS مهاجرت کنید:
UPDATE wp_options SET option_value = REPLACE(option_value, 'http://', 'https://') WHERE option_name IN ('siteurl', 'home');
سپس در .htaccess ریدایرکت اضافه کنید.
هنگام انتقال به هاست وردپرس میهن هاستینگ، تیم پشتیبانی تغییر URL و انتقال کامل سایت را رایگان انجام میدهد. سرور مجازی با WP-CLI. کانفیگ سرور شامل مهاجرت سایت.