Внедрить проверку на заполненность полей в сниппет
в xparser есть файлик и в нем такой код, как я понимаю это то самое место которое отвечает за создание ресурса после парсинга
может кто работал с xparser и знает иной способ и тп, буду благодарен
$class = !empty($resource['class_key']) ? $resource['class_key'] : 'modResource';
$action = empty($resource['id']) ? 'create' : 'update';
а задача такая чтобы исключить создание ресурсов с пустыми полями (контент и TV картинка), еслиоба эти поля по каким то причинам не заполнились то его не нужно создавать илихотя бы не публиковатьможет кто работал с xparser и знает иной способ и тп, буду благодарен
Комментарии: 7
может плагин какой то сдлеать чтобы эту проверку делал и снимал публикацию при сохранении например… хмм
Если XParser создаёт ресурсы через процессоры, то скорее всего срабатывают системные события, значит можно попробовать на OnDocFormSave отменять публикацию.
да, вот пытаюсь разобраться как такой плагин сделать :)
Так ты проверил, событие срабатывает?
не срабатывает :(
у xparser есть такие экшны
xParserOnBeforeTaskActions
xParserOnTaskParseDone
как только оформить такое под них непонятно
xParserOnBeforeTaskActions
xParserOnTaskParseDone
как только оформить такое под них непонятно
if(empty($resource->get('content')) && empty($resource->getTVValue('video') && $resource->get('template')==2){
$resource->set('published', 0);
}
даже вот так в событиях парсера нужно, без проверки темплейта
if(empty($resource->get('content')) && empty($resource->getTVValue('video')){
$resource->set('published', 0);
}
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.