Применить фильтр при вводе контента.
Как применить фильтр/сниппет к контенту который вводиться?
Хочу очищать стили при заполнении.
Хочу очищать стили при заполнении.
Комментарии: 5
Я правильно понял, что нужно избавиться от html тегов в content? тогда вот:
[[*content:strip_tags=``]] Вырезает все теги, кроме разрешенных, аналогично функции php strip_tags
Фильтры modx
Да. Только хотелось бы изначально не вводить в базу теги
$contentext = preg_replace('/<span[^>]*>(.*)<\/span>/Ui', '\\1', $contentext);
$contentext = preg_replace('~style="[^"]*"~i', '', $contentext);
Как чистить при выводе понятно. А как в плагине, на какое событие повесить я не знаю.
OnDocFormSave
Нужно создать плагин на событие OnDocFormSave
и в нем что-то типа этого:
и в нем что-то типа этого:
<?php
if ($mode == 'new') {
if ($resource->get('content')) {
$contentext = preg_replace('/<span[^>]*>(.*)<\/span>/Ui', '\\1', $resource->get('content'));
$contentext = preg_replace('~style="[^"]*"~i', '', $contentext);
$resource->set('content', $contentext);
$resource->save();
}
}
спасибки.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.