Wadik |
|
---|---|
В последнее время сталкиваюсь с проблемой, что не могу отличить модуль от плагина. К примеру отличное решение - https://github.com/Alex300/Online-Consultant Исходя из логики, что это донастройка сайта кинул в папку плагинов. Установилось. И тут начали вылетать ошибки... Только через некоторое время понял по характеру ошибок, что это модуль, а не плагин. Вопрос. Как отличать?! Может привести за правило называть плагины с приставкой plug_, а модули mod_ к примеру?! |
Alex300 |
|
---|---|
В данном случае на странице расширения http://portal30.ru/sozdanie-internet-sajtov/free-scripts/cotonti-onlajn-konsultant указано: Тип: модуль Есть миры, не здесь, там, где небеса горят, и моря засыпают, и реки дремлют; люди сделаны из дыма, а города – из песен. Где-то опасность, где-то несправедливость, даже где-то остыл чай. Идем Эйс, у нас много работы!...
...Sorry for my english... Бесплатные расширения для Cotonti: https://lily-software.com/free-scripts/ |
esclkm |
|
---|---|
я с этой проблемой тоже сталкиваюсь))) но изначально се были против объединения модулей и плагинов littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты |
Wadik |
|
---|---|
Alex300, я понимаю, что на оф. сайте есть исчерпывающая информация. Но каждый раз держать в себе информацию модуль это или плагин создает проблему) Скачаю я сегодня модуль и плагин, а завтра при установке мне придется искать иформацию в какую папку его пихнуть, чтоб заработало.... При этом, "корявая установка" модуля из под папки плагинов дас еще дополнительные трудозатраты по вычищению системы от следов этой установки... Поэтому прошу обратить внимание на эту проблему и подсказать пути ее решения... Как-то в последнее время (в связи с выходом интересных модулей) проблема становится актуальнее...
|
Yusupov |
|
---|---|
Как вариант решения: Добавить еще один конфиг в setup-файле расширения, например type=module. А в админке проверять тип расширения... Если не соответствует директории, то нельзя установить... |
Trustmaster |
|
---|---|
#38438 Yusupov: Хорошая мысль. May the Source be with you!
|
esclkm |
|
---|---|
Согласен, что как вариант решения проблемы дрвольно четкий
littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты |
Moool13 |
|
---|---|
Насколько знаю, в файле %module_name%.php указывается хук: Hooks=module Так можно и отличать, и по нему проверку делать. |
Macik |
|
---|---|
#38669 Moool13: Чисто теоретически этой части в модуле может и не быть. https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F |
Moool13 |
|
---|---|
Но она по идее должна быть, с таким же успехом может не быть записи: type=module
|
Yusupov |
|
---|---|
Moool13 вы не поняли, добавить конфиг type=module было в качестве идеи, чтобы различать что это модуль или плагин. Сейчас такого различия в движке в принципе нет, если изначально не знать архитектурных отличий. |
Moool13 |
|
---|---|
Я всё прекрасно понял. :) Но для чего добавлять type, когда можно определять по хуку. |
Macik |
|
---|---|
#38701 Moool13: Я не об этом. А о том, что проектирование плагина/модуля подразумевает случаи, когда исходя из функций модуля нет необходимости создавать пустой (бесполезный) файл module_name.php (хук standalone). Для примера можно взглянуть на плагины: «admintheme», «attach2», «autoalias2», «autocomplete», «banlist» «elrte», и т.д. У них нет этого файла т.к. он им не нужен, у них нет точки входа через отдельную страницу. То же самое может быть и в случае модуля. Если мы такой файл создаем, то однозначно подразумеваем наличие «страницы входа». А если она нам не нужна? В таком случае `type=module` более однозначное решение. https://github.com/macik
правильный хостинг — https://goo.gl/fjCa1F |
Alex300 |
|
---|---|
Мое мнение у модуля как раз и должна быть отдельная точка входа. Если он ее не имеет, а использует хуки других модулей, расширяя их функционал - то это уже точно не модуль, а плагин. Но с type=module я согласен. Это логичнее. Есть миры, не здесь, там, где небеса горят, и моря засыпают, и реки дремлют; люди сделаны из дыма, а города – из песен. Где-то опасность, где-то несправедливость, даже где-то остыл чай. Идем Эйс, у нас много работы!...
...Sorry for my english... Бесплатные расширения для Cotonti: https://lily-software.com/free-scripts/ |
Moool13 |
|
---|---|
Действительно, я подумал о другом.
С этим, пожалуй, соглашусь.
Кому как. :) Но в таком случае придётся вводить type=plugin. |