Выделение в noindex некоторых слов в WordPress

V
На сайте с 06.03.2008
Offline
83
614

Здравствуйте.

Недавно у меня возник такой вопрос, необходимость.

Есть блог на WordPress, на страницах которого встречаются некоторые слова (не ссылки). Я хотел бы найти плагин, где можно написать список этих слов, после чего, на всем сайте эти слова будут заключены в тег <noindex>слово или фраза</noindex>

Например, есть такой плагин (J)ExR, там есть форма:

Не трогать, если:
в ссылке href есть любое из стоп-слов:

а мне надо:

трогать (помещать в noindex), если:
в тексте встречается любое из стоп-слов:

Может кто-нибудь знает, как можно это осуществить?

Заранее благодарю за ответы.

Ragnarok
На сайте с 25.06.2010
Offline
226
#1

мб прикрутить при выводе

str_ireplace("слово","<noindex>слово</noindex>",$text);

?

там и массив можно

//TODO: перестать откладывать на потом
V
На сайте с 06.03.2008
Offline
83
#2

К сожалению, не силен в программировании, если подскажите, куда вписать эти строчки, буду признателен. Или для этого надо писать отдельный скрипт?

Сам список слов небольшой, около 10 слов и они меняться не будут.

Codd
На сайте с 13.01.2011
Offline
65
#3

В functions.php своего шаблона

add_filter('the_content', 'noindex_add');
function noindex_add($content){
$converter = array(
'слово',
'фраза для замены',
'текст текст'
);

foreach($converter as $str)
$content = str_replace($str, '<noindex>' .$str. '</noindex>', $content);


return $content;
}
V
На сайте с 06.03.2008
Offline
83
#4

Codd, спасибо большое, Вы очень помогли. Все работает.

SJ
На сайте с 16.03.2008
Offline
78
#5
velcom:
Codd, спасибо большое, Вы очень помогли. Все работает.

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

<img src="/aaaa/bbb/ваше_слово.jpg" width="100%" />
Любимый хостинг (http://beget.ru?id=2902) How can we grow old when the soundtrack of our lives is rock-n-roll?
Mad_Man
На сайте с 10.11.2008
Offline
162
#6
UPDATE wp_posts SET post_content = REPLACE(post_content, 'porn', '<noindex>porn</noindex>');
UPDATE wp_posts SET post_content = REPLACE(post_content, '/<noindex>porn</noindex>', 'porn');

Развивая тему об убогих вариантах.

V
На сайте с 06.03.2008
Offline
83
#7

sokol_jack, я понял, буду иметь ввиду.

Мои слова достаточно специфические, вероятность их появления в тегах и аттрибутах минимальна.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий