Да, можно и так. только я не вижу смысла оформлять это в процессор. Процессор - это атомарная операция, для одного действия. Как например user/create. Сам импорт можно организовать обычным скриптом , который читает файл и в цикле вызывает процессор. И да, лучша использовать метод process. это основной метод, который задаёт последовательность вызовов остальных. Посмотрите, как реализован, например, этот метод у процессора ObjectGetList.

@Александр Марков, Я переписал свой процессор таким образом: Теперь импорт данных происходит хорошо, но последние в файле данные импортируются 2 раза. Я так понимаю из-за того, что сначала происходит импорт через процессор, вызываемый в цикле, а затем последние данные заносятся через return 'sxUserImportProcessor'; ? Как исправить подскажите пожалуйста. Может быть вообще не нужен здесь процессор sxUserImportProcessor, а просто скриптом все оформить в котором будет вызываться другой процессор?

@Александр Марков, 1. Я наверное не правильно использовал этот метод, он у меня для того, чтобы в окне в котором я выбираю файл во втором поле я могу выбрать группу (это тот самый второй параметр для импорта.) То есть нажимаю кнопку Импорт - открывается окно в котором 2 поля: выбрать файл и выбрать группу. Вот группа подгружается из другой таблицы БД. Был бы благодарен, если подскажете как это сделать правильно. 2. В таком случае, для того, чтобы у меня заносились все данные получить в каком-то стороннем файле (скрипте), а потом в нем вызвать процессор создания объекта? 3. Про ошибки да, виноват))

Я обычно перепроверяю любое числовое значение уже на javascript: parseint()

@Batyabest, 1. откуда Вы взяли у modObjectCreateProcessor метод prepareQueryBeforeCount? он используется в процессорах, которые предполагают получение списка объектов. 2. modObjectCreateProcessor рассчитан на добавление только одного объекта. т.е. нужно сперва получить файл, считать данные, а потом в цикле вызывать процессор создания объекта. тут не пойму, зачем цикл, если при первом же проходе идёт выход? ошибки ниоткуда не берутся. Их нужно создавать, например, вот потом можно и проверять на ошибки. Вообще, рекомендую изучить коды основных процессоров в файле core/model/modx/modprocessor.class.php

Добрый день. Делаю компонент, в котором одна из кнопок вызывает окно импорта данных из csv в таблицу БД. В одном поле выбирается файл (этот путь потом передается в процессор), а в другом поле выбирается второе необходимое для импорта значение (оно статично для всех данных импорта.). Проблема в том, что мой процессор по итогу заносит в БД лишь одно значение - причем либо первое, либо последнее. Подскажите, где у меня ошибка, и как мне сделать выполнение моего процессора в цикле, чтобы все данных заносились? Вот код моего процессора:

Я вам и писал: Если используете смарти, то {$marty.get.text}

Воистину, утро вечера мудренее! Все решилось очень просто - Теперь уживаются и поиск по сайту от Яндекса и релевантные рекламные блоки РСЯ в результатах поиска по сайту...

Пробовал делать поиск как на Newsmodxbox, переменная {$smarty.get.query} выводится, реклама работает как надо, но не могу вывести результаты поиска....