Найти и заменить в MySQL

Категории: WordPress, Как сделать?

Я уже писал о том, как сделать поиск и замену в базе данных WordPress, используя плагин Search Regex.

Сегодня выполняя очередную работу по переносу блога, столкнулся с тем, что плагин Search Regex не работает на хостинге. Пришлось делать изменения в пути к картинкам, напрямую в phpMyAdmin.

Если вы знаете что это такое и у вас есть доступ к этому инструменту (не каждый хостер предоставляет phpMyAdmin для своих пользователей, но мне повезло), то для поиска определенной части текста и замены ее во всех записях блога достаточно ввести такую SQL-команду:

UPDATE wp_posts SET post_content = replace(post_content, "То что ищем", "То чем заменяем")

также к этой команде можно добавить условие WHERE

UPDATE wp_posts SET post_content = replace(post_content, "То что ищем", "То чем заменяем") WHERE post_status = "publish"

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

А в постовом сегодня просили рассказать про LendMoney.Ru — надёжный кредитный автомат WebMoney! кстати мне интересно вы хоть раз пользовались кредитами WebMoney?

Комментарии: 3Напишите свой комментарий!

  1. bussel Написал(а):

    А еще можно сделать дамп базы, открыть его текстовым редактором, сделать в нем замену одного фрагмента текста на другой, сохранить и восстановить базу из этого дампа. Если вдруг phpmyadmin нет.

  2. Dmitriy Donchenko Написал(а):

    Можно конечно. :) но если база объемная и замен много, то пока будет происходить процесс скачивания/правки/закачивания, оригинальная база может измениться :) хотя такое редко бывает.

    Удобнее конечно когда все это делается налету :)

  3. Иван Написал(а):

    А если нужно произвести замену только для статей определенной категории.

    UPDATE wp_posts SET post_content = REPLACE(post_content, «То что ищем», «То чем заменяем») WHERE id = «3»

    Так нормально будет?

Оставьте комментарий Ваш шанс быть услышанным!