Перейти к содержимому



Подключение модулей

#1 surfer

surfer
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71
0

Отправлено 11 Ноябрь 2009 - 13:22

думаю над тем как вообще подключать и отключать из системы модулит.е. на прямую мне кажется не совсем оптимально, кто какими способами пользуется посоветуйте!

пока я вижу что должна быть отдельная таблица для модулей, при прослушивании GET запроса идет обращение к ней и если ок, подключаем нужный модуль.

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

единственное я пока вижу это в сам скрипт модуля добавить такую функцию.

 

 

  • 0

robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85
Советую обратить внимание на следующее:
  1. Подключение дополнительных модулей
  2. Как обезопасить подключающий скрипт от атаки
  3. Нужна помощь. Есть ли такой модуль или компонент?
  4. Много плагинов на сайте хорошо или плохо?
  5. Как сделать блоги пользователей на сайте вордпресс?

#2 Евгений

Евгений
  • Неактивные
  • 481 сообщений
  • Репутация: 0

Отправлено 11 Ноябрь 2009 - 16:10

пользуемся поиском

http://www.masterweb...hp?showtop...
  • 0

#3 surfer

surfer
    Topic Starter
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 11 Ноябрь 2009 - 16:45

это я давно прочитал, но там нет на мои вопросы, если вы внимательно прочитаете их :)
  • 0

#4 ZiTosS

ZiTosS
  • Неактивные
  • 5 148 сообщений
  • Репутация: 8

Отправлено 11 Ноябрь 2009 - 19:30

sc2r2bey,
Скажи мне, зачем таблица с модулями?
Я бы сделал модуль в формате MVC и просто регистрировал бы его в системе с помощью функции ядра. К примеру как в Smarty сделано.
Затем если ядро в каком-то месте послало запрос на выполнение того-или иного модуля, он исполняется и вставляется если нужно, это всё от модуля зависит. Примерно так.
  • 0

#5 surfer

surfer
    Topic Starter
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 11 Ноябрь 2009 - 22:05

не совсем понятно, можно более развернуто?
  • 0

#6 Евгений

Евгений
  • Неактивные
  • 481 сообщений
  • Репутация: 0

Отправлено 12 Ноябрь 2009 - 13:10

Скажи мне, зачем таблица с модулями?

мне кажется для того чтобы в админке можно было выбрать тип страницы, либо это обычная текстовая страница, либо это новостная лента и т.д.
  • 0

#7 surfer

surfer
    Topic Starter
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 12 Ноябрь 2009 - 19:27

Да правильно для того, чтоб можно было управлять из админки!
  • 0

#8 ZiTosS

ZiTosS
  • Неактивные
  • 5 148 сообщений
  • Репутация: 8

Отправлено 16 Ноябрь 2009 - 00:40

sc2r2bey, управлять модулем из админки и так можно. Вот тот же самый модуль Joomla, все его настройки прописаны в XML файле, а Joomla просто цепляет их и в админке присутствует возможность смены параметров. А вообще если вы заговорили про таблицу модулей, то в ней вы бы не смогли нормально хранить настройки всех модулей. Каждый модуль имеет свою специфику.

мне кажется для того чтобы в админке можно было выбрать тип страницы, либо это обычная текстовая страница, либо это новостная лента и т.д.

Зачем себе усложнять жизнь, я же написал про MVC. Естественно таблица с модулями будет нужна только для состояний(включен/выключен, позиция в блоке)
MVC сама по себе определяет что должен делать модуль. А ядро только подключает этот модуль в нужном месте.

Как это организовать, надо думать долго и кропотливо. Я конечно могу предложить один вариант, но он не идеален. Просто стоит написать функцию, которая будет вызывать функцию имя которой будет в переданном параметре. Что-то подобное. А вызываемая функция будет исполнять то для чего предназначен-тот или иной модуль. Но как видите это примитивно и с таким же успехом мы могли бы писать просто вызов функции, но смотрите, здесь уже проглядывается структуризация. Все модули подключаются через определённый вызов(функцию).
  • 0

#9 surfer

surfer
    Topic Starter
  • Заблокированные
  • 1 956 сообщений
  • Репутация: 71

Отправлено 16 Ноябрь 2009 - 13:45

да я тоже отталкиваюсь от Joomla т.к. начианл с нее и мне кажется она очень хорошая CMS, там действительно есть XML который единожды используется при инсталляции, т.е. он он парсится и выполняются нужные запросы, я XML не знаю, и пока не считаю еще одну технологию изучать, надо в PHP набить еще руку. Возможно XML заменить обычным txt файлом и его парсить.
таблица модулей нужна для управления ими, как Вы правильно подметили вкл-выкл, подключение к меню, а конфигурации это одельная таблица. Мы с Вами одинаково думаем, все как в Joomla. Единственное у меня гораздо меньше опыта и знаний, я могу гепотетически предположить но не всегда знаю как грамотно реализовать.
возможно все примитивно, но и начинать надо с простого и постепенно наращивать мощность.

Все модули подключаются через определённый вызов(функцию).


вот здесь хотелось бы поподробнее остановиться, раскрыть тему!
  • 0

#10 ZiTosS

ZiTosS
  • Неактивные
  • 5 148 сообщений
  • Репутация: 8

Отправлено 16 Ноябрь 2009 - 22:34

sc2r2bey, Вообщем в аттаче сделал наработку.
В файле config.php просто подключаются классы(директория, подключение модулей, модуль, контекст)
Класс _InsertModules используется для подключения модулей из папки указанной в первом параметре функции jinsert()
Вообщем многое расписано в комментариях, щас некогда расписывать. Как я уже и сказал примитив присутствует, конечно же структура должна быть намного сложнее и гибче.

Прикрепленные файлы

  • Прикрепленный файл  site_module.zip   238,54К   Количество загрузок: 113

  • 0

robot

robot
  • Пользователь PRO
  • 2 652 сообщений
  • Репутация: 85


Оформление форума – IPBSkins.ru