Главная WordPress

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. Добрый. Длинные тире — - на дефис — не заменяет :-(

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

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

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