|
|
|
| Я пишу документацию к системе. Требуется написать простой плагин, который бы наглядно показал, как легко и просто писать в этой системе плагины.
У меня проблема с выбором самого плагина и того, что он будет делать.
В этом веб-приложении плагин - это что-то типа подпрограммы, которая вызывается по наступлению определенного системного события.
В системе установлены такие события:
До добавления объекта
До обновления объекта
До печати готового документа
До сохранения в кэше
До удаления объекта
До формирования формы объекта
Обработка документа
После добавления объекта
После загрузки документа из кэша
После загрузки шаблона документа
После инициализации документа
После обновления объекта
После парсинга документа
После удаления объекта
После формирования формы объекта
Страница не найдена (404)
Т.е. выбираем определенное событие и цепляем к нему написанный плагин.
Тематически плагин может быть любой, т.е. для новостного сайта, для магазина, для портала, для ERP, система универсальная.
Требования - чтобы был простой и интересный. Обработка - на сервере(php).
Если у кого-то есть предложения, буду рада их услышать. | |
|
|
|
|
|
|
|
для: Лена
(04.02.2011 в 10:54)
| | Я бы подсознательно ожидал, чтобы в документации был описан плагин, связанный с обработкой документа (так как это событие находится в середине и производит впечатление кульминационного). Что обычно происходит в этот момент с другими документами системы (например, новостной страницей), т.е. что можно делать на этом этапе, а что нежелательно? | |
|
|
|
|
|
|
|
для: cheops
(04.02.2011 в 10:59)
| | >Что обычно происходит в этот момент с другими документами системы (например, новостной страницей), т.е. что можно делать на этом этапе, а что нежелательно?
Не совсем поняла вопрос.
Нужные документы сначала формируются, после выводятся в шаблоне. Система построена с использованием сниппетов (это что-то типа компонентов), которые подготавливают все, что пойдет в шаблон. Далее все переменные, которые были подготовлены, выводятся в шаблоне в виде плейсхолдеров - {+chunk+} - здесь chunk содержит динамические данные, которые подготовил сниппет. Может, добавить какое-то промежуточное звено, которое что-то делает, перед тем, как данные попадают в шаблон? | |
|
|
|
|
|
|
|
для: Лена
(04.02.2011 в 10:54)
| | После добавления объекта - это сохранение объекта?
если у вас используются дружественные url (как отдельное поле ввода) можно написать плагин который из заголовка страницы формирует псевдоним. как тут http://community.modx-cms.ru/tag/transalias/ | |
|
|
|
|
|
|
|
для: AlexSol
(04.02.2011 в 11:21)
| | А еще можно, чтобы он sitemap для Google готовил по всем страницам сайта и задача достойная и функциональность полезная. | |
|
|
|
|
|
|
|
для: cheops
(04.02.2011 в 11:29)
| | по-моему карту удобнее генерировать при непосредственном обращении к ней | |
|
|
|
|
|
|
|
для: AlexSol
(04.02.2011 в 11:50)
| | Собственно это файл специального формата, иногда очень большой по объему (так, что его требуется разбивать на части, также по определенным правилам). Может быть достаточно накладно формировать его в пиковые часы нагрузки при каждом обращении, если страниц много. | |
|
|
|
|
|
|
|
для: AlexSol
(04.02.2011 в 11:21)
| | >После добавления объекта - это сохранение объекта?
да.
Там алиасы уже ставятся прямо в форме добавления страницы.
Например, страница - pages_interface.html
pages_interface - уникальный идентификатор страницы, если в форме добавления есть алиас, то адрес страницы будет как alias.html. Т.е. модреврайт уже в системе есть.
Про наличие карты не знаю, надо спросить. | |
|
|
|