Задать вопрос

Как удалить часть контента (фрагмент кода) из всех записей WordPress?

Здравствуйте!
Имеется блог на wordpress с большим количеством постов, в которых требуется удалить часть контента (перед началом каждого поста много лишнего кода, который остался после импорта записей из статичных html страниц)

Пример:
<div class="new"></div>

 <div class="td-main-content-wrap">
            <div class="td-container td-blog-index ">
                <div class="td-crumb-container">                    
             </div>
              <div class="td-pb-row">
                    <div class="td-pb-span8 td-main-content"></div>
             </div>
</div>

<div class="old"></div>


Нужно удалить весь контент между <div class="new"> и <div class="old"> во всех постах.

Запросом MySQL или любым другим способом - значения не имеет, но вручную не получится, в блоге более 800 постов...

Если кто знает проверенный способ - пожалуйста подскажите! В пабликах рабочего ответа не нашел(
  • Вопрос задан
  • 2123 просмотра
Подписаться 1 Средний Комментировать
Решения вопроса 1
@NMC_COP Автор вопроса
Решение нашел сам!

Сделал следующим образом – открыл дамп БД в notepad++ и произвел замену текста при помощи регулярных выражений
Пример : Найти: </description>([\s\S]*?)</offer>
Заменить на: </description></offer>

[\s\S]- это любой символ, включая переносы строк, табуляцию и тд.;

Пришлось помучиться с подгоном закрывающих тегов, пару раз перезалить базу, но все получилось!
5d6fa74d3daa3054155636.jpeg
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
mihdan
@mihdan
WordPress-евангелист, ведущий РНР - разработчик
Попробуйте через WP-CLI (оно умеет и по регулярке):

wp search-replace 'что' `на что` --regex
Ответ написан
Комментировать
@Asokr
Или, проще всего - воспользоваться плагином, например
Better Search Replace
Ищет/удаляет/заменяет строки во всей базе и отдельной в любой таблице...
Ответ написан
@deadnice
Делаешь запрос https://wp-kama.ru/function/wp_query распаршиваешь контент, удаляешь лишнее и сохраняешь https://wp-kama.ru/hook/save_post

Либо скриптом без подтягивания wp, смысл тот же
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы