Функция cot_files_get отправляет запрос к БД. И cot_files_count тоже. Соотвественно на 50 элементов на странице, виджет подключенный в шаблоне отправит дополнительно 100 запросов к базе. Плагин Attach2 работал по такому же принципу. Это не очень существенно, если страница кешируется.
Если Вы пишите расширение которое будет работать с модулем Files, то в контроллере Вы можете использовать API модуля более гибко. Можно попробовать построить и выполнить запрос, который выберет все файлы одним запросом.
Код выборки будет выглядить так:
$files = files_model_File::find(array(array('SQL', 'Ваш запрос')));
Затем полученный результат можно разобрать и передать в шаблонизатор.
Подробнее о построении запросов к моделям можно почитать тут (абзац: Условия для выборки)
Отредактировано: Alex (17.03.2015 02:42, 9 лет назад)