WordPress: заменяем в записях все вхождения указанного текста

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

Редактировать в таком случае каждый пост будет очень нелогично и затратно по времени.

Задача решается очень простым образом – путем использования простейшей PHP-функции для замены текста:

function replace_text($text) {
	$text = str_replace('WordPress', '<strong>WordPress</strong>', $text);
	$text = str_replace('WordPress хаки', '<a href="#">WordPress хаки</a>', $text);
	return $text;
}
add_filter('the_content', 'replace_text');

Эту функцию необходимо поместить в файл functions.php вашего шаблона.

В вышеуказанной функции я показал пример: все вхождения слова “WordPress” будут выделены жирным, а все вхождения словосочетания “WordPress хаки” превратятся в ссылку.

По аналогии можно делать одновременно сколько угодно таких замен.

Комментарии (4)

  1. Pavel
    22 июня 2016 г. в 15:02

    Добрый. Длинные тире — – на дефис – не заменяет :-(

  2. 9 января 2018 г. в 13:31

    Интересная идея!
    Значит, базе данных вы ничего не меняете, а замена происходит непосредственно во время показа.

    1. Да, именно так.

  3. 24 января 2019 г. в 16:25

    Спасибо! А как сделать тоже самое только исключительно для Post Typ = Product ?

Ваш комментарий

Жирный текст

Ссылка

Цитата

Внутристрочный код

CSS-код

HTML-код

JavaScript-код

PHP-код