Модуль Pyrocms или виджет или плагин - PullRequest
3 голосов
/ 08 февраля 2011

Это сводит меня с ума!Я хочу включить простую контактную форму на главной странице сайта.Я не могу разобраться, если мне нужно построить модуль, виджет или плагин.Ни один из них, кажется, не совсем прав!Кажется, что модули работают только как отдельные страницы, например, существующий модуль контактов.Виджеты, кажется, только отображают данные (полученные из БД или какого-либо канала, например, твиттера), а плагин выглядит как библиотечный класс.Что мне больше всего нужно, так это модуль.Мне нужен контроллер (для отображения правильного представления и обработки данных из формы и представлений в зависимости от того, была ли отправлена ​​форма или нет. Моя проблема в том, что я не могу решить, как включить модуль в качестве раздела страницы(так же, как вы бы виджет) вместо отдельной страницы.

1 Ответ

7 голосов
/ 09 февраля 2011

Любой из них будет работать.

Модуль - это триада MVC, который может взаимодействовать с URL-адресом, отображать представления, иметь свои собственные модели, помощников, конфигурацию и т. Д.-veg.

Виджет - это просто самодостаточная интеллектуальная часть.Это означает, что для каждого экземпляра требуется несколько параметров из панели управления и выкладывается фрагмент HTML.

Плагин - это просто тег.Этот тег используется в шаблоне, на страницах, в новостях и т. Д. И также выплевывает кусок HTML.Плагин может иметь различные методы в классе, каждый метод будет отличаться тегом.

Я фактически сделал контактные формы как все эти типы аддонов, но тот, который я выбрал для PyroCMS v1.1 модульный плагин .Это означает, что для модуля есть виды, модели и т. Д., Но мы можем пропустить контроллер и просто создать плагин, подобный этому.

Этот плагин соответствует тегу:

{pyro:contact:form}

Топотому что он находится в контактном модуле, а метод - форма.Увидеть?:)

...