Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Как реализовать систему модулей/хаков?
Форумы портала PHP.SU » PHP » Программирование на PHP » Как реализовать систему модулей/хаков?

Страниц (1): [1]
 

1. Nestor - 29 Мая, 2010 - 14:34:30 - перейти к сообщению
Почти дописал финальную первую версию двига.
Осталось одно - сделать систему модулей/хаков.
Мне очень понравилась идея с WP - хуки и фильтры.Думал сделать подобную.
Интересно ваше мнение.Кто как бы это сделал?
2. Ch_chov - 29 Мая, 2010 - 15:15:39 - перейти к сообщению
Наверно, все зависит от концепции CMS. Если она ориентирована на быстродействие, то хуки, да и вообще систему модулей нужно проектировать соответственно.

Например, в дрюпале даже ядро работает на модулях, при этом модули могут "порождать" свои собственные хуки. Т.е. можно делать модули к модулям. Или даже модули к модулям модулей... Радость

Такая конструкция позволяет получить гибкую сверх универсальную систему, которая позволяет строить сайты практически любого направления (блоги, порталы, форумы, интернет магазины, социальные сети и т.д.).

Однако, это всё это снижает производительность системы.
Куча лишних инклудов, запросов к БД и т.д.
3. JustUserR - 30 Мая, 2010 - 13:14:39 - перейти к сообщению
Nestor пишет:
Осталось одно - сделать систему модулей/хаков.
Мне очень понравилась идея с WP - хуки и фильтры.Думал сделать подобную
Все зависит от того что именно вы хотите получить от новых модулей и каким образом они должны работать - если дополнительные модули просто обеспечивают некоторые внешние возможности то можно сделать некий API вашей CMS - который позволяет при написании модуля обращаться к таблицам пользователей и настроек и тд а также к интерфейсу дизайна для вставки модуля как некоторого блока - но в таком случае модуль будет именно внешней единицей и особенно не может модифицировать CMS а может только добавлять функциональные возможности Если же вам нужны модули которые могут менять внутреннюю работу CMS то это огранизуется несколько по-другому - но подкючения такого внутреннего модуля в отличие от внешнего может потенциально сломать вашу CMS - поэтому нужно предусмотреть отдельный интерфейс управления модулями на который бы они влять не могли

 

Powered by ExBB FM 1.0 RC1