Появилась необходимость встроить свой плагин Smarty. Единственный способ, как мне удалось это сделать - создать файл в директории:
/wa-system/vendors/smrty-plugins/
Влезать в системную директорию - отвратительный подход. Хотелось бы иметь возможность включать плагины так, чтобы после обновлений они не перезатирались.
не перезатрется, если имя не совпадет
Это не только не отвратительный подход, но даже и рекомендуемый :)
При обновлении фреймворк не удаляет старые файлы, а заливает поверх них новые. Поэтому добавленные файлы остаются.
По сабжу я просто использовал префиксные имена плагинов.
Если при инсталляции плагин SS создаст в каталоге /wa-system/vendors/smrty-plugins/ свой плагин smarty будет ли это нарушением требованием к плагину SS на публикацию? Т,е. контроль пропустит публикацию такого плагина?
Сам спросил - сам отвечу)) как это обойти один из вариантов:
Для примера создаем в каталоге PLUGIN_ID/lib/vendors/smarty код SMARTY плагина.
Добавляем в наш плагин метод вида:
и вызываем его в конструкторе этого плагина
Дальше используем смарти плагин внутри шаблона smarty ))
Если у кого есть другие идеи поделитесь.