Модуль предназначен для организации новостных лент, или любой другой информации со схожей системой вывода и обработки. Модуль новостей подразумевает возможную интеграцию с модулями «Рассылки» и «Рассылки RSS».
Для каждой записи, введённой в базу данных модуля, вы можете определить следующие параметры:
Следует отметить, что такие параметры как «признак попадания в рассылку» и «признак попадания в RSS рассылку» предназначены для возможности использования других модулей.
Как уже говорилось, модуль «Новостей» предназначен только для ввода новостей администратором сайта и их непосредственного вывода на сайте.
Модуль имеет достаточно много свойств, потому рассмотрим эти свойства по группам тех задач, на решение которых они нацелены.
Если в новостях планируется использовать изображения, которые необходимо выводить в ленте или в архиве новостей то, вам нужно обратить на первые четыре параметра (Таб. 1).
Название свойства | Варианты значения | Описание |
---|---|---|
Ширина большой картинки | Число, больше или равное 0 | Ширина и высота изображения в пикселях, которое будет создано из главного изображения (если оно указано), путём масштабирования. В алгоритме масштабирования сохраняются пропорции изображения, поэтому сформированная как минимум один из параметров (высота или ширина) будет иметь заданный размер. |
Высота большой картинки | Число, больше или равное 0 | Ширина и высота изображения в пикселях, которое будет создано из главного изображения (если оно указано), путём масштабирования. В алгоритме масштабирования сохраняются пропорции изображения, поэтому сформированная как минимум один из параметров (высота или ширина) будет иметь заданный размер. |
Ширина маленькой картинки | Число, больше или равное 0 | Ширина и высота изображения в пикселях, которое будет создано из главного изображения (если оно указано), путём масштабирования. В алгоритме масштабирования сохраняются пропорции изображения, поэтому сформированная как минимум один из параметров (высота или ширина) будет иметь заданный размер. |
Высота маленькой картинки | Число, больше или равное 0 | Ширина и высота изображения в пикселях, которое будет создано из главного изображения (если оно указано), путём масштабирования. В алгоритме масштабирования сохраняются пропорции изображения, поэтому сформированная как минимум один из параметров (высота или ширина) будет иметь заданный размер. |
Таб. 1: В таблице перечислены свойства модуля «Новости», которые управляют преобразованием «главного изображения».
К каждой новости, может быть добавлено одно «главное изображение». Именно из этого главного изображения и будут сформированы «большая» и «маленькая» картинки, указанных вами размеров. В дальнейшем, эти изображения используются в шаблоне, как две отдельные переменные. Например, «маленькое» изображение вы можете выводить в шаблоне ленты новостей, а «большое» изображение, при формировании полного текста новости.
У новости может быть только одно «главное» изображение, в двух (или одном) масштабах. Если необходимо больше изображений то их необходимо добавлять в полное описание новости, средствами встроенного редактора контента.
Следующие свойства управляют значениями по умолчанию свойство новости, при её создании, а так же задают количество новостей на страницу, отображаемых администратору сайта (Таб. 2).
Вы можете их настроить в соответствии от вашего конкретного случая. Например, если большинство новостей НЕ должны попадать в ленту новостей, то свойство «Значение признака «В ленту» удобнее будет снять, чтобы не делать этого у каждой вновь создаваемой новости.
Название свойства | Варианты значения | Описание |
---|---|---|
Значение признака «в рассылку» | Признак | Устанавливает значение по умолчанию, для признака попадания в рассылку, при добавлении новых новостей. |
Значение признака «В ленту» | Признак | Устанавливает значение по умолчанию, для признака попадания в ленту, при добавлении новых новостей. |
Значение признака «В RSS» | Признак | Устанавливает значение по умолчанию, для признака попадания в рассылку RSS, при добавлении новых новостей. |
Новостей на страницу для АИ | Число, больше 0 | Количество новостей на одной странице, в административном интерфейсе модуля, при просмотре списка. |
Таб. 2: В таблице перечислены оставшиеся свойства модуля «Новости» которые управляют значениями по умолчанию, а так же количеством новостей на одной странице административного интерфейса.
Модуль не имеет свойств, прописываемых к странице сайта.
Действие отвечает за формирование ленты актуальных новостей, представленного в виде небольшого списка (как правило, это от 3 до 5). Этот метод используется чаще всего на главной страницы, с тем, что бы посетитель сайта сразу видел все свежие новости.
При клике по новости из ленты посетитель должен направляться на страницу сайта, где вызывается действие «Сформировать архив», и происходит просмотр полного текста новости. В Таблице 3 представлен перечень параметр действия.
Название параметра действия | Описание |
---|---|
Шаблон | Выбирается один из файлов, который будет использоваться в качестве шаблона для формирования ленты. |
Количество новостей | Максимальное количество новостей отображаемых в ленте. |
Тип отбора | Указывается один из возможных способов формирования ленты новостей: не зависимо от даты; от текущей даты в прошлое; от текущей даты в будущее. |
Страница архива | Указывается идентификатор страницы сайта, на которой присутствует вызов действия «Сформировать архив» этого же экземпляра модуля. |
Таб. 3: Перечень параметров действия «Сформировать ленту».
Параметр «Тип отбора» управляет тем, какие новости будут считаться новыми и обрабатываться для формирования ленты.
Если выбрано значение «не зависимо от даты», то дата новостей ни как не влияет на формирование ленты. В ленту попадут заданное количество последних новостей, даже если их дата очень далеко в будущем.
При выборе значения «от текущей даты в прошлое» в ленту будет отобрано заданное количество новостей, начиная с текущей даты и более старые. То есть, если в модуле будут присутствовать новости будущих дат – они не попадут в ленту.
И в последнем случае, при выборе в качестве значения параметра «от текущей даты в будущее», в ленту будет отобрано заданное количество новостей, начиная с текущей даты и более новые. То есть, в новостную ленту попадет заданное количество новостей будущего, начиная от текущей даты. Этот способ удобно использовать для информирования об анонсах событий.
Следует упомянуть ещё один параметр, а именно «страница архива». В этом параметре необходимо определить страницу сайта, на которой будет вызываться действие «Сформировать архив». При использовании нескольких новостных лент (а значит и нескольких экземпляров модуля «Новости») ссылка должна быть именно на ту страницу, где вызывается СВОЁ действие «Сформировать архив».
Действие «Сформировать архив» строит список всех новостей, которые есть в базе модуля и разрешены к публикации. Кроме того, это же действие отвечает за просмотр пользователем полного текста новости, при выборе одной из доступных новостей. В Таблице 4 представлен перечень параметров, используемых для настройки действия.
Название параметра действия | Описание |
---|---|
Шаблон | Выбирается один из файлов, который будет использоваться в качестве шаблона для формирования списка новостей и текста полной новости. |
Количество новостей на страницу | Количество новостей в списке (архиве), отображаемых на странице. Если новостей больше, чем заданное число, то появляется интерфейс выбора конкретной страницы. |
Тип отбора | Указывается один из возможных способов формирования архива новостей: не зависимо от даты; от текущей даты в прошлое; от текущей даты в будущее. |
Вид страничной навигации | Определяет тип построения блока постраничной навигации в архиве новостей. Доступно два значения: блоками по N страниц; текущая страница всегда в центре блока из N страниц; где N – количество страниц в блоке, определяемое соответствующим параметром (ниже). |
Количество страниц в блоке. | Определяет число страниц в блоке постраничной навигации. |
Таб. 4: Перечень параметров действия «Сформировать архив».
Рассмотрим два последних параметра действия. В случае, когда страниц в архиве становится больше, чем значение параметра «количество новостей на страницу», то появляется блок постраничный навигации. Параметр «количество страниц в блоке» определяет, сколько ссылок на разные страницы будут одновременно доступны пользователю сайта.
Второй параметр, «вид страничной навигации», определяет то, как будет строиться этот блок. При значении параметра «блоками по N страниц», посетителю сайта будут показаны страницы с 1 по N. При большем количестве доступных страниц, пользователю сайта будет доступен переход к следующему блоку, а при клике в по страницам в рамках одного блока, этот блок никак не изменяется. Если же значения второго параметра установлено в «текущая страница в центре», разница заключена лишь в том, что при клике пользователя по конкретной странице, блок выбора страниц перестраивается таким образом, что бы выбранная страница была в центре блока.
Действие отвечает за вывод формы, в которой пользователь сайта может установить параметры, управления списком новостей, обрабатываемым действием «Сформировать архив». Данное действие может использоваться в любом месте сайта, однако на этой странице обязательно должен присутствовать вызов действия «Сформировать архив» данного модуля.
Действие использует всего один параметр, который представлен в Таблице 5.
Название параметра действия | Описание |
---|---|
Шаблон для вывода | Выбирается один из файлов, который будет использоваться в качестве шаблона для формы отбора. |
Таб. 5: Перечисление параметров действия «Сформировать форму отбора».
Внешний вид формы отбора, и то какой именно отбор будет использован, определяется в шаблоне, с помощью использования (или не использования) доступных переменных. Модуль может установить ограничить выборку новостей по архиву двумя способами:
Сначала рассмотрим блоки, которые используются в шаблонах действий «Сформировать ленту» и «Сформировать архив». Затем перейдём к рассмотрению блоков, используемых только в действие «Сформировать архив». И в саму последнюю очередь рассмотрим блоки действия «Показать отбор». О используемых только в действие «Сформировать архив». И в саму последнюю очередь рассмотрим блоки действия «Показать отбор».
В таблице 6, представлен перечень блоков, используемых в шаблонах построения ленты новостей, и архива новостей, то есть они являются общими для этих двух действий.
Заголовок блока | Прямые переменные | Переменные-блоки | Описание |
---|---|---|---|
@content | - | rows, pages | Основной блок, которым замещается метка в шаблоне, при вызове действия по формированию ленты. Использует переменную, которая будет заменена на блок @rows, столько раз, сколько новостей в ленте. (Переменная pages используется только в действии «Сформировать архив», при формировании ленты данная переменная игнорируется.) |
@no_data | - | - | Выводиться вместо блока @content в том случае, если не найдено ни одной новости для вывода. |
@rows | date, time, url, header, author description_short, description_full | image, source | Определяет внешний вид одной новости ленты. Использует достаточно много переменных, часть из которых заменяются другими блоками (image, source). |
@image | image_source, image_thumb, image_big, header | - | Выводиться вместо переменной image в блоке @rows, в том случае, если у новости есть главное изображение. |
@no_images | - | - | Выводиться вместо переменной image в блоке @rows, в том случае, если у новости не используется главное изображение. |
@source | source_url, source_name | - | Выводиться вместо переменной source в блоке @rows, в том случае если у новости определёна ссылка на источник и название источника новости. |
@source_no_url | source_name | - | Выводиться вместо переменной source в блоке @rows, в том случае если у новости определёно только название источника, а ссылка на сайт источника отсутствует. |
@source_no_all | - | - | Выводиться выводится вместо переменной source в блоке @rows, в том случае, если у новости не определёно ни название источника, ни ссылка на него. |
Таб. 6: Перечень всех блоков используемых для построения ленты новостей в действии «Сформировать ленту».
Теперь рассмотрим дополнительные блоки, которые обрабатываются только действием «Сформировать архив» для того, что бы сформировать навигацию по большому объёму информации в архиве. В Таблице 7 приведено описание блоков, которые используются для формирования постраничной навигации.
Заголовок блока | Прямые переменные | Переменные-блоки | Описание |
---|---|---|---|
@page_no | - | - | Выводиться вместо переменной pages в блоке @content (Таб. 6) в том случае, если в сформированном архиве нет необходимости использовать блок постраничной навигации. |
@page_template | - | first, backward, previous, pages_block, next, forward, last | Выводиться вместо переменной pages в блоке @content (Таб. 6) в том случае, если в сформированном архиве необходима постраничная навигация. Переменная page_block заменяется набором блоков @page_active и @page_passive (количество блоков соответствует количеству страниц в блоке) соединённых последовательно, между которым вставляется блок @delimiter. |
@page_first | url | - | Заменяется переменная first в блоке @page_template, в том случае, если мы находимся не на самой первой странице. Используется для формирования ссылки перехода к этой самой первой странице. |
@page_first_disabled | - | - | Заменяется переменная first в блоке @page_template, в том случае, если мы находимся на самой первой странице. |
@page_backward | url | - | Заменяется переменная backward в блоке @page_template, в том случае, если страниц так много, что они разбиты на несколько блоков и текущая страница не входит в первый из них. |
@page_backward_disabled | - | - | Заменяется переменная backward в блоке @page_template, в том случае, если страниц так много, что они разбиты на несколько блоков и текущая страница входит в первый из них. |
@page_previous | url | - | Заменяется переменная previous в блоке @page_template, в том случае, если существует более одной страницы и необходимо вывести ссылку на предыдущую страницу относительно текущей. |
@page_previous_disabled | - | - | Заменяется переменная previous в блоке @page_template, в том случае, если существует более одной страницы? но текущая страница является первой и значит, что предыдущей страницы нет. |
@page_next | url | - | Заменяется переменная next в блоке @page_template, в том случае, если мы находимся не на самой последней странице. Используется для формирования ссылки перехода к следующей странице, относительно текущей. |
@page_next_disabled | - | - | Заменяется переменная next в блоке @page_template, в том случае, если мы находимся на самой первой странице. |
@page_forward | url | - | Заменяется переменная forward в блоке @page_template, в том случае, если страниц так много, что они разбиты на несколько блоков и текущая страница в любом из них, кроме последнего. |
@page_forward_disabled | - | - | Заменяется переменная forward в блоке @page_template, в том случае, если страниц так много, что они разбиты на несколько блоков и текущая страница входит в последний из них. |
@page_last | url | - | Заменяется переменная last в блоке @page_template, в том случае, если мы находимся не на самой последней странице. Используется для формирования ссылки перехода к этой самой последней странице. |
@page_last_disabled | url, page | - | Заменяется переменная last в блоке @page_template, в том случае, если мы находимся на самой последней странице. |
@page_active | url, page | - | Используется для формирования переменной page_block в блоке @page_template, Формируется для страницы архива новостей, на которую может перейти пользователь (то есть не для текущей страницы). |
@page_passive | url, page | - | Используется для формирования переменной page_block в блоке @page_template, Формируется для страницы архива новостей, на которой сейчас находиться пользователь сайта (то есть не для текущей страницы). |
@page_delimeter | - | - | Используется для формирования переменной page_block в блоке @page_template, Разделяет блоки @page_active и @page_passive друг от друга. |
Таб. 7: Перечень блоков, используемых для формирования постраничной навигации внутри архива новостей.
Пусть вас не пугает объём блоков, все они достаточно просты для понимания. Прежде всего, следует обратить внимание на блок @page_template. Именно в нём вы определяете взаиморасположение элементов навигации по страницам. А за тем, в каждом из блоков определяете, как выглядит тот или иной элемент навигации (будь то ссылка на самую первую страницу, или переход к следующему блоку).
Если вы не хотите использовать все элементы навигации, то вам просто не надо использовать соответствующую переменную-блок в блоке @page_template.
Следует отметить, что при описании всех этих блоков используется термин «страницы», который обозначает не страницы сайта (те что представлены в структуре), а страницы архива новостей, на которые разбивается весь архив.
В Таблице 8 представлены остальные блоки шаблона, которые используются в действии «Сформировать архив» и предназначены для управления внешним видом полного текста новости, который формируется при клике по конкретной новости из архива или ленты.
Заголовок блока | Прямые переменные | Переменные-блоки | Описание |
---|---|---|---|
@fulltext | date, time, header, description_short, description_full, author, url_back | image, source | Основной блок, который заменяет метку, к которой привязано действие «Сформировать архив». |
@fulltext_image | image_source, image_thumb, image_big, header | - | Выводится вместо переменной image в блоке @fulltext, в том случае, если у новости есть главное изображение. |
@fulltext_no_images | - | - | Выводится вместо переменной image в блоке @fulltext, в том случае, если у новости нет главного изображения. |
@fulltext_source | source_url, source_name | - | Выводится вместо переменной source в блоке @fulltext, в том случае, если у новости есть название источника и ссылка на сайт источника. |
@fulltext_source_no_url | source_name | - | Выводится вместо переменной source в блоке @fulltext, в том случае, если у новости есть название источника, но нет ссылки на сайт. |
Таб. 8: Перечень блоков, используемых в действие «Сформировать архив», для вывода полного текста новости.
Заключительным набором блоков, которые нам необходимо рассмотреть являются блоки, используемые в шаблоне действия «Показать отбор». В Таблице 9 представлен перечень этих блоков.
Заголовок блока | Прямые переменные | Описание |
---|---|---|
@form | url, date_alone_name, date_start_name, date_stop_name | Блок содержит визуальное представление формы, в которой пользователь сайта осуществляет отбор новостей. Переменная url будет заменена адресом, на который отправляются данные. Остальные переменные заменяются именами используемых параметров. |
Таб. 9: Перечень блоков, используемых в действии «Сформировать форму отбора»
Для того, что бы было более понятно и наглядно, давайте сразу рассмотрим пример шаблона, в котором форма отбора реализована в виде простого текстового поля.
01. <!-- @form --> 02. <form action="%url%" method="GET"> 03. <fieldset> 04. <label for="date_alone">Дата:</label> <input id="date_alone" type="text" name="%date_alone_name%" value=""/> 05. <input type="submit" name="submit" value="Отбрать"/> 06. </fieldset> 07. </form>
В приведенном выше примере шаблона используется одно поле, имя которого задаётся переменной
Мы рассматриваем только прямые переменные, так как переменные-блоки заменятся блоками и уже были описаны выше. В Таблице 10 приведено описание переменных, используемых во всех блоках шаблонов.
Переменная | Блоки применения | Описание |
---|---|---|
date | @rows и @fulltext | Вводит дату новости в формате ДД.ММ.ГГ. |
time | @rows и @fulltext | Вводит время новости в формате ЧЧ:ММ. |
header | @rows, @image, @fulltext, @fulltext_image | Замещается заголовком новости. |
author | @rows и @fulltext | Заменяется строкой с автором, указанным в соответствующем поле. |
description_short | @rows и @fulltext | Замещается кратким описанием новости. |
description_full | @rows и @fulltext | Замещается полным текстом новости. |
url_back | @fulltext | Замещается адресом, с которого посетитель пришёл для просмотра полного текста новости. |
url | @rows | Замещается ссылкой, по которой должен перейти пользователь для просмотра полного текста новости. |
image_source | @image и @fulltext_image | Будет заменена путем до главного изображения исходного размера, которое было закачено при создании новости. |
image_thumb | @image и @fulltext_image | Будет заменена путем до большого варианта главного изображения, которое было создано для новости. Может быть пустой строкой, если в параметрах модуля, размеры этого варианта главного изображения установлены в нулевые значения. |
image_big | @image и @fulltext_image | Будет заменена путем до маленького варианта главного изображения, которое было создано для новости. Может быть пустой строкой, если в параметрах модуля, размеры этого варианта главного изображения установлены в нулевые значения. |
source_name | @source, @source_no_url, , @fulltext_source и @fulltext_source_no_url | Заменяется именем источника новости, указанного в соответствующем поле новости. |
source_url | @source, @source_no_url, @fulltext_source и @fulltext_source_no_url | Заменяется ссылкой на сайт в сети Интернет источника новости, указанного в соответствующем поле новости. |
url | @page* и @block* (все участвующие в формировании постраничной навигации). | Заменяется ссылкой для перехода к конкретной странице (в зависимости от используемого блока) |
page | @page* и @block* (все участвующие в формировании постраничной навигации). | Замещается номер страницы (в зависимости от используемого блока). |
Таб. 10. Перечень всех переменных, используемых в шаблонах модулей действий модуля новостей.