Как скопировать существующий сайт (с пользовательской темой) на новый домен
Я пытаюсь найти способ продублировать существующий сайт WordPress, использующий пользовательскую тему, на новый домен. После переноса я планирую сделать редизайн сайта и настроить редирект со старого URL на новый.
Вкратце... Я пытался следовать инструкциям на http://codex.wordpress.org/Moving_WordPress, но когда дошел до пункта "3. Вернитесь в свой СТАРЫЙ блог и измените URL (оба) на адрес вашего нового сайта", меня разлогинило, и я потратил около 3 часов, пытаясь все исправить!
Итак, мой вопрос - как скопировать существующий пользовательский сайт WordPress с темой (включая посты и т.д.) на новый домен?
Я полный новичок в WordPress и был бы очень признателен за любую помощь... Спасибо!

Если это новый домен, всё довольно просто:
- Установите WordPress на НОВЫЙ домен
- Скопируйте папки
wp-content/themes
иwp-content/plugin
со СТАРОГО домена на НОВЫЙ (используя FTP) - Активируйте тему на НОВОМ домене
- Активируйте плагины на НОВОМ домене
- Удалите стандартный контент (пост "Hello world", страницу "About" и т.д.) с НОВОГО домена
- Экспортируйте весь контент со СТАРОГО домена через
Консоль -> Инструменты -> Экспорт
- Импортируйте только что экспортированный файл на НОВОМ домене через
Консоль -> Инструменты -> Импорт
. Важно: убедитесь, что включили опцию загрузки/установки вложений
Этого должно быть достаточно.

Привет, Chip, спасибо за ответ. Я сделал, как ты предложил, но при активации темы на новом домене все CSS-стили пропадают.

Как реализованы эти CSS-стили? Через настройки темы? Плагин для кастомного CSS? Или что-то ещё?

Извини за задержку, Chip, я попытался забежать вперёд и мне пришлось заново переустанавливать сайт на WP.

Я не уверен, как подключается CSS. SNM — это название нашей пользовательской темы...
На оригинальном сайте я вижу CSS-файл здесь: http://www.site.com/wp-content/themes/snm/style.css
Что интересно, после применения темы snm все стили пропадают. Когда я пытаюсь перейти в другой раздел сайта, меня разлогинивает, и я получаю ошибку 404. Если посмотреть на URL — он пытается найти страницу на моём старом сайте. Например: я кликаю на "записи", а меня перекидывает на oldsite.com/wp-login.php?redirect_to=newsite.com

Есть ли в вашей теме жёстко прописанные URL-адреса по какой-либо причине?

Привет, Chip, ещё раз спасибо за ожидание моего ответа!
Моя последняя проблема (редиректы) теперь решена. Это были старые define('WP_SITEURL', 'http://example.com');
define('WP_HOME', 'http://example.com');
Я выполнил остальные ваши инструкции, и по сути — всё готово!
Огромное спасибо!!

Один из вариантов — скачать плагин, например BackUpWordPress, и создать полную резервную копию вашего старого сайта.
Затем подключитесь по FTP к вашему новому хостингу (или к тому же хостингу, но для нового домена) и распакуйте загруженные файлы туда.
В ZIP-архиве также будет база данных.
Это может быть немного сложновато или подходит для более продвинутых пользователей. Но другие могут увидеть этот пост и найти его полезным.

Вы также можете:
- Скопировать файлы с текущего продакшн-сайта на локальную разработку
- Создать пользователя в MySQL (phpMyAdmin)
- Экспортировать файл
localhost.sql
с текущего продакшн-сайта (phpMyAdmin) - Импортировать файл
localhost.sql
на локальную разработку (phpMyAdmin) - Вставить этот код во вторую строку файла
functions.php
вашей активной темы
ПРИМЕЧАНИЕ:
Для получения дополнительной информации см.: https://www.sitepoint.com/how-to-migrate-a-wordpress-site-to-a-new-domain-and-hosting/
php
<?php
// Если ваша локальная копия находится в /www/site/
update_option ( 'siteurl', 'http://localdev.net/site' );
update_option ( 'home', 'http://localdev.net/site' );
- Загрузите сайт в вашем веб-браузере
- Готово
ФИНАЛЬНЫЙ ШАГ: Закомментируйте эти две строки в functions.php
Я считаю, что этот способ гораздо быстрее и менее напряженный, чем принятый ответ. Это всего два шага после архивирования вашего текущего сайта. Вставьте его в нужную папку, экспортируйте/импортируйте БД, затем добавьте эту строку в functions.php - и готово.
