Как бы вы обрабатывали расширения / плагины в Zend Framework? - PullRequest
0 голосов
/ 12 февраля 2011

Для одного из моих клиентов мне нужно разработать CMS. Например, мне нужно иметь следующие функции:

  1. Скины (макет и расширения)
  2. Возможность загружать zip-архивы и обрабатывать их (они содержат изображения)
  3. Классические страницы (статьи аля WordPress, Joomla)
  4. Контактная форма
  5. Каталог
  6. корзина

Я привык к Zend Framework, поэтому я хотел бы разработать его с использованием Zf.

Мне бы хотелось иметь очень модульное приложение, и я надеюсь, что мой опыт работы с Modx, Wordpress, Joomla, Magento поможет мне избежать плохого дизайна.

Мне бы хотелось иметь минималистичную базовую систему, в которую я мог бы подключать расширения / плагины и иметь возможность настраивать их, используя определенные соглашения.

Например, мне бы хотелось, чтобы даже одна из моих «основных» функций была одним из этих расширений.

Моя функция может иметь:

  1. Интерфейс администратора
  2. Пользовательский / стандартный скин / темы
  3. Модель
  4. Любые необходимые светильники
  5. Файлы конфигурации (xml / ini)
  6. Контроллеры
  7. Просмотры

Итак, мой вопрос: как бы вы справились с таким дизайном? Это хорошо?

Мне интересно, как я зарегистрирую расширение для моего приложения, как я буду использовать его в своих макетах, контроллерах.

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

Я уже решил использовать ZF 1.1 / 2, Doctrine 2, jQuery / Dojo (пока не знаю, я действительно не знаю Dojo)

1 Ответ

0 голосов
/ 13 февраля 2011

К сожалению, я не могу ответить на все ваши вопросы. Однако, если вы не знаете, с чего начать, я бы порекомендовал взглянуть (если это возможно) на Методы Pro Zend Framework: создание полноценного проекта CMS . Книга не идеальна, она не охватывает плагины или расширения, но она дала мне некоторую информацию и основную идею о том, как создать CMS с использованием ZF. Одной из наиболее интересных вещей, которые я узнал из этой книги, было использование шаблона Node в качестве структуры данных для CMS и его использование в ZF, а также создание скинов макета. Кроме того, вы можете взглянуть на код существующих систем CMS ZF, таких как TomatoCMS и Magento .

...