Уже имеется заметка, как массово поменять текст в WordPress. В этой же статье разберу замену текста при выводе записей (the_content), а также использование регулярных выражений.
Замена текста с помощью PHP в записях WordPress
Разберем регулярные выражения на примере поиска и замены как самого текста, так и элементов внутри определенных дивов при выводе информации в WordPress .
Для удобства замены преобразуем вывод поста в переменную
Контент записи в WordPress выводится функцией:
Положим содержимое функции вывода поста (the_content) в переменную $content:
Теперь мы можем выводить содержимое поста таким образом:
Удаление данных с помощью preg_replace
Теперь для удаления данных со страницы записи WordPress используем такую конструкцию, которая изменит содержимое переменной $content. А именно найдет в данных нужный нам текст, структуру html и любое другое содержимое, а затем удалит её со страницы.
Удаление содержимого в конкретном див теге (с конкретным классом):
Удаление всего конкретного див тега:
Остальные примеры можно найти в статье про preg_replace.
Вывод данных с помощью preg_match
Вместо предыдущей функции preg_replace, где мы убираем текст, с помощью preg_match можно находить конкретные данные и сохранять их в переменную для последующего вывода.
где:
то, где мы ищем, в данном случае мы ищем информацию в записи WordPress страницы.
Когда мы нашли мы можем вывести эту запись в любом другом месте.
Вывод записи:
Или даже сохранить в произвольное поле, содержимое которого также можем вывести в любом другом месте.
Больше примеров смотрите в статье о preg_match.