Как да промените WordPress домейна от SQL (MySQL)
Ако премествате WordPress уебсайт на нов домейн, трябва да направите много повече от простото преместване на директории. Въпреки че има много налични плъгини, които да свършат тази трудна работа, някои уеб администратори предпочитат ръчно да прехвърлят WordPress сайта към новия домейн
При ръчно прехвърляне на уеб сайта трябва да обърнете специално внимание на URL низовете (последователност от символи) в MySQL базата данни. Трябва да актуализирате URL низовете в различните MySQL бази данни, когато прехвърляте уеб сайта. Методът, който обсъждаме, използва цялата SQL база данни, вместо да използва опциите за Импорт/Експорт, предлагани в WordPress.
Превключване на WordPress базата данни
Първо, трябва да създадете нова MySQL база данни на новия сървър и след това да изпълните задачата да експортирате старата MySQL база данни от стария сървър в новата база данни на новия сървър. Можете да променяте всички URL адреси на WordPress сайта в таблиците на MySQL базата данни, като използвате PHPMyAdmin. Ето стъпките, които да предприемете
Старо URL – http://oldsite.com
Ново URL –http://newsite.com
- Влезте в PHPMyAdmin профила си
- Изберете базата данни, която искате да редактирате
- Изпълнете следните SQL заявки
#main replace
UPDATE wp_options SET option_value = replace(option_value, ‘http://www.oldsite.com’, ‘http://www.newsite.com’) WHERE option_name = ‘home’ OR option_name = ‘siteurl’;
# replace www and non-ssl
UPDATE wp_posts SET guid = replace(guid, ‘http://www.oldsite.com’,’http://www.newsite.com’);
UPDATE wp_posts SET post_content = replace(post_content, ‘http://www.oldsite.com’, ‘http://www.newsite.com’);
UPDATE wp_postmeta SET meta_value = replace(meta_value,’http://www.oldsite.com’,’http://www.newsite.com’);
UPDATE wp_options SET option_value = replace(option_value, ‘https://www.oldsite.com’, ‘http://www.newsite.com’) WHERE option_name = ‘home’ OR option_name = ‘siteurl’;
#replace www & SSL
UPDATE wp_posts SET guid = replace(guid, ‘https://www.oldsite.com’,’https://www.newsite.com’);
UPDATE wp_posts SET post_content = replace(post_content, ‘https://www.oldsite.com’, ‘https://www.newsite.com’);
UPDATE wp_postmeta SET meta_value = replace(meta_value,’https://www.oldsite.com’,’https://www.newsite.com’);
UPDATE wp_options SET option_value = replace(option_value, ‘http://oldsite.com’, ‘https://newsite.com’) WHERE option_name = ‘home’ OR option_name = ‘siteurl’;
#replace non-www
UPDATE wp_posts SET guid = replace(guid, ‘http://oldsite.com’,’http://newsite.com’);
UPDATE wp_posts SET post_content = replace(post_content, ‘http://oldsite.com’, ‘http://newsite.com’);
UPDATE wp_postmeta SET meta_value = replace(meta_value,’http://oldsite.com’,’http://newsite.com’);
UPDATE wp_options SET option_value = replace(option_value, ‘https://oldsite.com’, ‘http://newsite.com’) WHERE option_name = ‘home’ OR option_name = ‘siteurl’;
#replace non-www and SSL
UPDATE wp_posts SET guid = replace(guid, ‘https://oldsite.com’,’https://newsite.com’);
UPDATE wp_posts SET post_content = replace(post_content, ‘https://oldsite.com’, ‘https://newsite.com’);
UPDATE wp_postmeta SET meta_value = replace(meta_value,’https://oldsite.com’,’https://newsite.com’);
– След като промените префикса на URL-то и таблицата, можете да стартирате SQL заявката, като натиснете бутона Go по-долу.
Следващата стъпка е актуализиране на конфигурационния файл на WordPress (wp-config.php), който да отрази горепосочените промени. Конфигурационният файл трябва да бъде в root-а на Вашия уеб документ. Трябва да промените потребителското име, паролата на базата данни и стойностите на хоста. Ето стъпките, които да следвате.
Актуализиране на вашия wp-config.php файл
- Като използвате редактора на хостинг акаунта, отворете вашия wp-config.php файл.
- Добавете два реда към файла, който определя новото местоположение на вашия уеб сайт.
- define(‘WP_HOME’,’http://mynewsite.com’);
- define(‘WP_SITEURL’,’http:// mynewsite.com’);
Намерете раздел, изглеждащ по този начин
- define(‘DB_NAME’, ‘yourdbnamehere’);
/** MySQL database username */
- define(‘DB_USER’, ”usernamehere’);
/** MySQL database password */
- define(‘DB_PASSWORD’, ‘passwordhere’);
/** MySQL hostname */
- define(‘DB_HOST’, ‘localhost’);
Забележка – въведете информацията от базата данни по следния начин
- yourdbnamehere= your MySQL database name
- usernamehere is your MySQL Database Name
- yourpasswordhere is your MySQL Password
- localhost is your MySQL Host Name
- Запазете промените в wp-config.php файла
Решаване на проблема със сериализираните данни
След като прехвърлите WordPress сайта, можете да срещнете някои проблеми, дължащи се на сериализираните данни, които възникват, когато PHP данните са криптирани с URL адреса. Тъй като URL данните се променят, цялата информация става неизползваема. Има два отлични инструмента, които ефективно могат да се справят с проблема, произтичащ от сериализираните данни. Такъв инструмент търси старата и новата база данни към стария URL адрес и прави необходимите промени, като оставя сериализираните данни непокътнати и годни да използване.
Interconnectit
Това е скрипт, който се задейства след прехвърлянето и импортирането на старата база данни в новата. След това скриптът ще направи необходимите промени в сериализираните данни.
WP Migrate Pro
Това е мощен плъгин, който трябва да бъде инсталиран на оригиналния ви сайт и да се задейства от там. След това плъгинът търси и замества URL низовете и webroot. Експортва се нова база данни, която извършва необходимите промени в сериализираните данни. След това можете да импортирате новата хоствана URL база данни в нов домейн.