Перенос WordPress с локального сервера к клиенту, проблема и решение

Представим ситуацию. Вам заказали сделать сайт на WordPress, однако название домена вам не известно. Сайт готов, вы передаете его клиенту.

Через некоторое время клиент обращается к вам с проблемой: мол, файлы залил, базу поставил, но не работает. Знакома ситуация? И вы даже знаете почему так произошло? Подождите, читайте дальше.

Как известно, все настройки сайта на WordPress хранятся в базе данных. Когда Вы делали сайт на локальном сервере, то все пути были построены относительно локального доменного имени (по умолчанию установлено как http://wordpress). Поэтому когда клиент установил сайт на своем хостинге, то даже не смог зайти в админку, ведь пути сайта в базе и на хостинге отличаются. Как быть в такой ситуации?

Прощупав обстановку выясняется, что, чтобы все наладить, надо иметь доступ к базе и исправить путь к сайту в таблице wp_options, а также пути к каждой (!) статье в таблице wp_posts. Хорошо, если статей еще нет или их мало. А если их, например, 100? Надо исправлять путь в каждой статье.

К счастью, есть простое и элегантное решение. Пользуясь им, вам вообще не надо думать о домене клиента.

Достаточно вставить в файл wp-config.php вот эти строчки:

Как несложно догадаться, эти строки подставляют текущее значение домена вместо тех, что указаны в базе.

Вуаля, проблема решена! 🙂