Добро пожаловать, Гость!
Требования к системе модулей/плагинов - Страница 1
Общие вопросы | Требования к системе модулей/плагинов



Требования к системе модулей/плагинов
6 Янв 2023Требования:
1. Написание плагинов как на ООП, так и в процедурном стиле на выбор разработчика (пример - как в Wordpress)
2. Каталог модулей прямо в админке. Установка модулей в один клик (опять, же, пример - Wordpress)
3. Поддержка мультиязычности
4. Поддержка требований (указание минимальной версии движка, запрос других плагинов)
5. Бесплатные и платные модули. Поддержка покупки. Поддержка оставления ссылки в бесплатной версии. То есть при установке бесплатной версии разработчик плагина может автоматически ставить ссылку в условном разделе сайта "партнеры". Мотивация разрабам делать бесплатне плагины.
6. Поддержка хуков/событий (паттерн observer)
7. Наследование от главного файла модулей. Автоматические методы установки/обновления
8. Поддержка настроек /конфигурации
9. Автоматическое создание страницы в админке со всеми настройками плагина
Пример конфигурации плагина
return [
'code' = "testplugin",
'name' = [
'default'=>"Тестовый плагин",
'en'=>"Test Plugin",
],
'version'=1.0,
'request' = [
"engine"=1.2,
"plugins"=[
["Pluginother",0.8],
["Pluginother2",1.0],
],
'copyright' = [
"type"=>1, // Установка ссылки. 0-нет, 1-по желанию, 2-обязательно
"link"="https://linkautor.ru",
"name"="Link Autor",
],
'settings' = [
"count"=>50,
'type' = ['typeA','typeB'],
],
];
Последний раз редактировалось biket
6 Янв 2023
Комментарии:



biket (7 Янв 2023):
Saint,
Система то что на скрине выпущена или в разработке?
biket, Всё это так давно выпущено / сделано, что я уже сам не помню как всё работает . у меня был отдельный сайт с документацией . но я его где-то похерил . я знаю что он где-то на пк есть , но ещё не нашел . потерял его во время глобальной очистки на 6-7 ТБ данных .Saint,
Система то что на скрине выпущена или в разработке?
______________________
Я есть сущность



Автор темы
MarkPrior (17 Янв 2023):
А на кого это всё направлено будет? Какая ЦА?
Это будет подобие умершей DCMS 7, где ЦА бывшей шестёрки попросту не осилили код, или JohnCMS, которая живёт лишь за счёт энтузиазма её разработчика, но с почти нулевой ЦА? И всё так же из-за «сложного» для понимания ньюфагом кода.
«Сложных» систем навалом, но нет ничего, что могло бы быть на +/- высоком уровне качества и при этом с предельно простым для понимания ньюфагом кода. На данный момент ясно, что ориентир на пародию на WP в мелких масштабах, но не учитывается то, что уже есть и сам WP, из которого хоть социальную сеть делай, но до конца в коде порой даже профи не разберутся.
Поэтому прежде нужно определить ЦА и уже от этого отталкиваться.
——
Информацию о модулях по классике храните в json. От просмотра извне защитить несложно.
MarkPrior, Пародию вордпресса писать нет смысла. Ее уже писали и не раз. Даже бывший разраб социала. Я описал чисто систему модулей. Чтобы движком пользовались ее недостаточно. Целевая аудитория - люди, которые хотят создать сайт с функциоалом, который уже реализован в движке. Собственно так и было - что с Dcms-Social, что с вордпрессом. Есть основной функционал, а дальше хочется его переделать под свое. И вот тогда потребуются дополнительные модули.А на кого это всё направлено будет? Какая ЦА?
Это будет подобие умершей DCMS 7, где ЦА бывшей шестёрки попросту не осилили код, или JohnCMS, которая живёт лишь за счёт энтузиазма её разработчика, но с почти нулевой ЦА? И всё так же из-за «сложного» для понимания ньюфагом кода.
«Сложных» систем навалом, но нет ничего, что могло бы быть на +/- высоком уровне качества и при этом с предельно простым для понимания ньюфагом кода. На данный момент ясно, что ориентир на пародию на WP в мелких масштабах, но не учитывается то, что уже есть и сам WP, из которого хоть социальную сеть делай, но до конца в коде порой даже профи не разберутся.
Поэтому прежде нужно определить ЦА и уже от этого отталкиваться.
——
Информацию о модулях по классике храните в json. От просмотра извне защитить несложно.
______________________
Установи себе подпись: Ссылка

А на кого это всё направлено будет? Какая ЦА?
Это будет подобие умершей DCMS 7, где ЦА бывшей шестёрки попросту не осилили код, или JohnCMS, которая живёт лишь за счёт энтузиазма её разработчика, но с почти нулевой ЦА? И всё так же из-за «сложного» для понимания ньюфагом кода.
«Сложных» систем навалом, но нет ничего, что могло бы быть на +/- высоком уровне качества и при этом с предельно простым для понимания ньюфагом кода. На данный момент ясно, что ориентир на пародию на WP в мелких масштабах, но не учитывается то, что уже есть и сам WP, из которого хоть социальную сеть делай, но до конца в коде порой даже профи не разберутся.
Поэтому прежде нужно определить ЦА и уже от этого отталкиваться.
——
Информацию о модулях по классике храните в json. От просмотра извне защитить несложно.



Автор темы
Структура движка.
Файл index.php:
include /sys/PluginsSystem.php
Файл PluginsSystem.php:
Организация/установка модулей. То, о чем я писал в посте. Список подключаемых модулей можно хранить в отдельном файле plugins.php ну или в ini/json файле. Это не так важно.
include all plugins
Собственно регистрация/авторизация так может быть модулем. Можно сделать стстемные модули, которые нельзя будет отключить (как минимум из админки)
______________________
Установи себе подпись: Ссылка



Автор темы
Сибирский (10 Янв 2023):
biket, по пункту 6 посоветовать могу только после как увижу структуру ядра. Если линейный вывод то возможно ни чего не подскажу. WP скорей всего оставил сисетму хуков из-за соображений совместимости. Идеальный вариант структуры, который я вижу, это так: запуск двига просто определяет авторизацию пользователя и является ли тот админом, все остальное подключается как модули но только при необходимости. Вывод страницы осуществляется только по окончании работы скрипта, до этого вся страница содержится в определенном классе. Такой подход позволит менять все что угодно в любое время. Модуль это отдельная папка в определенном месте или местах, тут как угодно. Для составления модуля задать некоторые правила. Дать возможность публиковать модуль прям со своего сайта.
вопрос по json что ini это нужно еще будет возиться с их защитой от открытия в браузер положить их в папку /.config, да и нет там такой важной инфы, которую нельзя разглашать
Сибирский, Так и надо делать. Тока систему хуков так же можно использовать. Она есть во многих движках. В различных вариациях.biket, по пункту 6 посоветовать могу только после как увижу структуру ядра. Если линейный вывод то возможно ни чего не подскажу. WP скорей всего оставил сисетму хуков из-за соображений совместимости. Идеальный вариант структуры, который я вижу, это так: запуск двига просто определяет авторизацию пользователя и является ли тот админом, все остальное подключается как модули но только при необходимости. Вывод страницы осуществляется только по окончании работы скрипта, до этого вся страница содержится в определенном классе. Такой подход позволит менять все что угодно в любое время. Модуль это отдельная папка в определенном месте или местах, тут как угодно. Для составления модуля задать некоторые правила. Дать возможность публиковать модуль прям со своего сайта.
вопрос по json что ini это нужно еще будет возиться с их защитой от открытия в браузер положить их в папку /.config, да и нет там такой важной инфы, которую нельзя разглашать
______________________
Установи себе подпись: Ссылка

biket, по пункту 6 посоветовать могу только после как увижу структуру ядра. Если линейный вывод то возможно ни чего не подскажу. WP скорей всего оставил сисетму хуков из-за соображений совместимости. Идеальный вариант структуры, который я вижу, это так: запуск двига просто определяет авторизацию пользователя и является ли тот админом, все остальное подключается как модули но только при необходимости. Вывод страницы осуществляется только по окончании работы скрипта, до этого вся страница содержится в определенном классе. Такой подход позволит менять все что угодно в любое время. Модуль это отдельная папка в определенном месте или местах, тут как угодно. Для составления модуля задать некоторые правила. Дать возможность публиковать модуль прям со своего сайта.
вопрос по json что ini это нужно еще будет возиться с их защитой от открытия в браузер положить их в папку /.config, да и нет там такой важной инфы, которую нельзя разглашать