Пользовательское представление ленты новостей |
К числу самых примечательных отличий пользовательской части компонента Weblinks от административной его части относится представление ленты новостей. В базовом компоненте Weblinks имеется возможность реализовать ленту новостей в представлении единственной категории. Лента новостей позволяет подписаться на данный пункт меню и автоматически получать обновления по мере смены страницы. Такая возможность встроена в Joomla, а следовательно, ввести ленту новостей в любой компонент не составит особого труда. Напомним, что в экранной форме Edit Menu Item (Редактирование пункта меню) имеется возможность отображать ссылку на ленту подачи информации. Если проанализировать исходный код метода // добавить альтернативную ссылку на ленту подачи информации Если для данного элемента выбрать отображение ссылки на ленту подачи информации, то в конечном итоге будут созданы две ссылки: одна — для подачи информации в формате RSS 2.0, а другая — в формате Atom 1.0. Для маршрутизации, как и прежде, используется метод Следует заметить, что в данной ссылке формат указывается следующим образом: f ormat=f eed. При загрузке URL это значение вводится в запрос. Когда для этого URL создается объект документа, то вместо обычного объекта типа JDocumentHTML фактически создается объект типа JDocumentFeed. В методе По своему содержимому файл view. feed. php похож на файл view. html. php. Прежде всего следует заметить, что в нем объявляется тот же самый класс Webl inks View-Category, что и в файле view. html. php, только информация в нем представлена в другом формате, и поэтому у этого класса такое же самое имя. Но в любом цикле запроса загружается только один из этих классов. У данного класса имеется единственный метод display () с очень простым исходным кодом. Сначала в нем получаются объекты приложения и документа и устанавливается URL для ссылки на ленту подачи информации с помощью методов Далее из модели получаются требующиеся элементы и их категория. К этим элементам происходит поочередное обращение в цикле, и для каждого из них формируется отдельный URL. Кроме того, из заглавия элемента удаляется любой присутствующий в нем код HTML, а дата преобразуется в строковый формат. После этого создается новый объект типа JFeedltem и в него вводится новая информация. И наконец объект типа JFeedltem вводится в документ с помощью метода addltem () из класса JDocumentFeed. Вот, собственно, и все. Все специальное форматирование, требующееся для лент новостей, выполняется автоматически в классах JDocumentFeed и JFeedltem. Этим же способом ленту новостей можно добавить в любой другой компонент.
Понравился материал? Пригодилась информация? Плюсани в социалки!
Теги:
|
Похожие новости | |
|