@dimashav
студент

Плагин Вордпресс «Антимат». Как сделать цензуру на слово «бл*», но чтобы не было цензуры на слово «сабля»?

Здраствуйте! Очень прошу помочь!!
Мне надо разработать плагин Вордпресс, который бы служил антиматом для статьи. Но важно сделать так, чтобы он зацензурил слова, независимо от того прописная буква или строчная. Цензура должна действовать, например, для слова "бл *", но не действовать для слова "сабля". І таких слов многа. Не знаю как это правильно сделать, чтобы не прописывать все глаголы, прилагательные, существительные со словом "бля" в разных падежах, родах, временах и так далее.

Вставляю мой код. Он работает, принимая мат из одного файла (badwords.txt), заменяя их на мат, но уже зацензурений из другого файла (replacements.txt). Не знаю как сделать, чтобы маты не зависели от прописной или строчной буквы, и чтобы не было цензуры на словах типа "сабля".
Помогите, пожалуйста !!

<?php
define('ANTYLAYKAUA_DIR', plugin_dir_path(__FILE__));

function antylayka_filter_the_content($the_content)
{
	static $badwords = array();
	if(empty($badwords))
	{
		$badwords = explode (',', file_get_contents(ANTYLAYKAUA_DIR . 'badwords.txt'));
	}
	for ($i = 0, $c = count($badwords); $i < $c; $i++)
	{$the_content = preg_replace('#'.$badwords[$i].'#iu', '*****', $the_content);
	}
	return $the_content;
}
add_filter('the_content', 'antylayka_filter_the_content');
?>
  • Вопрос задан
  • 266 просмотров
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Делаете "чёрный" список корней/слов/словоформ и добавляете к нему (расширяете правила обработки) слова-исключения: похожие, но не мат - пропускаем.
Это называется сходящийся каскад.
Ответ написан
Fragster
@Fragster
помогло? отметь решением!
\b - граница слова
Ответ написан
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы