Обычно переносил сайты на wordpress путем копирования файлов и дампа базы данных с заменой url в самой, бд и правкой wp-config. Но сейчас потребовалось один сайт перебросить на локальный сервер и поработать над ним, как при проделывании этих операций весь сайт поплыл, все блоки, слайдер отказался работать и пр.
Порывшись в гугле, нашел отличный скрипт для "правильной" правки бд: Safe Search and Replace on Database with Serialized
. И вроде бы все должно было быть супер, но я никак не пойму что я упустил?
Скопировал файлы wordpress на OpenServer, поправил wp-config, бд не трогал, все как есть импортировал в новую бд, затем запустил скрипт и ввел замену url на локальный. После всех операций сайт все равно открывается по старым url из инета, а не на локалке. Подскажите где я туплю?
P.S. Подсказали тут сделать дамп бд на рабочем сайте, потом в админке поменять адрес сайта, потом снова сделать дамп, и сверху залить предыдущий, но теперь и ориг. сайт перестал работать.
P.S. Подсказали тут сделать дамп бд на рабочем сайте, вотом в админке поменять адрес сайта, потом снова сделать дамп, и сверху залить предыдущий,
О ужас..
Порядок действий (всё уже на локальном, а не рабочем!):
1. Заливаешь РОДНОЙ дамп в локальную базу.
2. Переносиш файлы ВП и меняешь в конфиге данные конекта к базе. На локальный сайт не заходишь!!!!
3. Заливаешь скрипт на локальный домен.
4. Скриптом меняешь ПУТИ к файлам.
5. Скриптом меняешь вхождения домена. Осторожно, учитывая разные формы использования - с пртоколом, с/без www, с последним слешем, в мылоадресах и тд.
6. Профит!
Но гораздо проще и безопаснее использовать плагины для миграции. Напр дубликатор https://wordpress.org/plugins/duplicator/
И главное! Никаких SQL-запросов в базу. Миграции либо скриптом, либо плагинами.
С базой MySQL
для WordPress
я, например, работаю следующим образом.
mysqldump -Q --max-allowed-packet=1M --extended-insert=false -u DBUser -p DBName > db_dump.sql
Ключи -Q --max-allowed-packet=1M --extended-insert=false
не обязательны, разумеется, но могут помочь на загруженном хостинге.
После -p
можно без пробелов указать пароль.
mysql -uDBUser -p DBName < db_dump.sql
UPDATE wp_options SET option_value = replace(option_value, 'http://domain.ru', 'http://newdomain.ru') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'http://domain.ru','http://newdomain.ru');
UPDATE wp_posts SET post_content = replace(post_content, 'http://domain.ru', 'http://newdomain.ru');
После этого можно поискать старый домен в базе и исправить руками, но сайт уже должен работать корректно.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Почему этот запрос выдает ошибку (#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'of France’ AND Countriesname = ‘France’...
Мне нужно, чтобы валюты обновлялись в реальном времениУ меня есть сервис openexchangerates
Интересует, можно ли скормить обычную строку Джексону? И потом уже построить 2 списка , по значениям? Вот строка которую я получил, после парсинга...
Всем привет, подскажите новичку пишу тест с иcпользованием запросов к оракловой базе - использую ojdbc6jar, пока тесты запускались руками из Idea проблем...