Контактная информация

По всем интересующим вас вопросам связывайтесь при помощи контактной информации приведенной на этой странице!

telegram: @Accusser
skype: metsof
email: accusser@gmail.com

В социальных сетях...

Форма обратной связи

Авторизация

MODX Articles дополнение для вывода статей

Сайдбар

Articles что это такое?

Articles - это тип пользовательского ресурсa для MODX 2.2 (и более новых версий), который добавляет пользовательский ресурс Статья (Article Resource) в MODX, что обеспечивает простое ведение блогов, комментирование, архивирование, создание тегов и другие возможности в MODX в виде единообразного интерфейса.

Системные требования

  • MODX Revolution 2.2.0 или более новая версия. Обратите внимание, для работыArticles 1.5+ требуется Revolution 2.2.1-pl.
  • PHP5 или более новая версия.
  • MODX работающий на MySQL, sqlsrv пока не поддерживается.

История создания

Articles написан Shaun McCormick как класс (Custom Resource Class) для блоггинга и новостных событий, впервые опубликован 29 ноября 2011. Обзор функций, планируемых для добавления в Articles, можно найти с помощью Roadmap.

Загрузка

Вы можете загрузить ПО с помощью менеджера MODx Revolution, используя Package Management, или из хранилища дополнений MODx.


Создание блога с помощью Articles

Допустим у вас уже установлена MODx Revolution 2.2, дополнение Articles (особенностью которого является автоматически установка getPage, tagLister, Archivist и прочего.) Далее приступаем к работе над блогом...

Создаем блог

Сделать блог достаточно просто – нажимаем правой кнопочкой мышки на документе в дереве ресурсов слева в менеджере и выбираем "Create". Жмем "Create Articles Here" Создать статьи здесь.

Покажется окошко создания контейнера Articles Container, который и есть по сути блог, способный располагать любым количеством статей (записей блога), а это нам и необходимо.

Закладка Статьи

Таким образом перед нами появляется новое окошко редактора, как изображено на фото: Вы можете ставить такие поля на начальной вкладке.

1. Container Title – подзаголовок вашего контейнера или же блога.

2. Container Alias – наш ЧПУ (имя) контейнера. В случае если этот контейнер располагается в корне сайта и определено имя как "blog", то адрес блога будет отображен как www.mysite.com/blog/

3. Description – краткое описание блога.

4. Menu Title – заглавие вашего блога, представленное пунктом меню. По-умолчанию, в случае если вы ничего не отметили, то он будет равен названию странички - pagetitle.

5. Link Attributes - всевозможные HTML атрибуты ссылки для демонстрации в ссылке меню, когда блог отражается в меню.

6. Hide from Menus – в случае если поставлена галочка, то ваш блог не будет представлен в любом меню вашего вебсайта.

7. Published – если установить эту опцию, ваш блог будет сразу же опубликован.

Продолжаем и даём нашему контейнеру статей название к примеру "My Blog" или же псевдоним "blog". Далее жмем вкладку "Template".

Вкладка Template

Эта вкладка складывается из характеристик шаблонизации вашего блога, к примеру: выбор применяемого шаблона и остальные функции вывода

Поля этой вкладки:

1. Uses Template – является шаблоном блога. Дополнение Articles гарантирует обычный шаблон, однако вы в силах его поменять на собственный.
2. Content – содержание или же контент блога – тут вы можете изменить как поле будет рендерится в шаблоне контейнера статей.
3. Article Template является шаблоном по-умолчанию ваших статей (может под каждую статью переназначен).
4. Article Row Chunk это чанк с помощью которого выводятся посты на фронтальную страницу или страничку архива. В дополнении Articles имеется собственный чанк.
5. Articles Per Page – число отображаемых записей блога, десять по-умолчанию.

Далее, у вас есть возможность установки поля "Template" в "sample.ArticlesContainerTemplate" или же в "sample.ArticleTemplate".


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

Взгляните на поле "Content". В этот момент оно выглядит таким образом:

[[+articles]]
[[+paging]]

У вас есть возможность изменить его для реструктуризации размещения и разметки записей блога как в зависимости от пагинации (разбиения на странички). У вас есть возможность вставлять HTML разметку и теги MODX.

Далее жмём вкладку "Advanced Settings".

Advanced Settings

Тут ряд полей в единичных вертикальных вкладках:

1. Настройки архивов

Archive Listing Chunk – чанк для отражаемого месяца/года.
Archive Listings to Show – численность отображаемых месяц/годов.
Archive By Month – помесячная или же по годовая архивация. Yes – архивировать ежемесячно.
Archive CSS Class - CSS класс, который применяется для вывода каждого архива.
Archive Alternate CSS Class - CSS класс, используемый к любому парному ряду архива.

2. Настройки тегов

Tag Listing Chunk – чанк предназначенный для вывода тегов на страничках вывода.
Tag Listings to Show – численность тегов для вывода популярных тегов.
Tag CSS Class - CSS класс списка тегов.
Tag Alternate CSS Class - CSS класс парного ряда в списке тегов.

3. RSS опции

RSS Alias (Permalink) – псевдоним для фида RSS, который прикрепляется к ссылке на блог. Может быть как списком, разбитым запятыми. К примеру, в случае если вы поставите его в "rssfeed.rss", то ссылка вашего блога mysite.com/blog/rssfeed.rss продемонстрирует RSS фид.
Number of RSS Items – численность заключительных выводимых RSS объектов в RSS ленте.
RSS Feed Chunk – чанк предназначенный для шаблонизации RSS ленты.
RSS Item Chunk – чанк каждого объекта в RSS ленте.

Для более доскональной информации по опциям комментирования посмотрите документацию Quip.

Опять, в случае если вы собираетесь изменить предоставляемые чанков, то не забывайте, что нужно сделать сначала их копию и избрать иной чанк, чем попросту отредактировать чанк-образец, так как они перезапишутся при обновлении.

Выводы

Далее жмите "Save" и у вас готов свой функционирующий блог! Потом "View" для просмотра блога. Далее вы увидите таблицу, в которой есть возможность редакции и создания новых статей блога.

Получение данных Articles из других расширений

Articles является Ресурсом (Resource) MODX, что позволяет легко использовать его с другими расширениями MODX. Обратите внимание на один важный момент: параметр Articles "hidemenu" по умолчанию задан как 1 (не отображается в меню). Это сделано для того, чтобы предотвратить отображение в меню сайта (представьте сайт с 10 000 Articles – меню получается слишком большим).

К примеру, вызов getResources захватывает последние 8 Articles и помещает в ваш контейнер с ID 10:

[[getResources?
  &parents=`10`
  &tpl=`myTpl`
  &showHidden=`1`
  &limit=`8`
]]

Это все, что нужно сделать!

Сниппет Articles

Articles 1.4+ включает сниппет "Articles", что позволяет использовать специфические Articles-плейсхолдеры как контейнеры в любых Ресурсах на сайте. К примеру, разместите этот вызов на главной странице, объект - Container с ID 10:

[[Articles? &container=`10`]]
   [[+latest_posts]]

В результате увидим последние сообщения Articles для этого контейнера. Сниппет делает доступными все плейсхолдеры в Шаблоне по умолчанию:

•    [[+latest_posts]] – Отображает виджет “Последние сообщения” в правой части Шаблона – примера.
•    [[+latest_comments]] - Отображает виджет "Последние комментарии" ” в правой части Шаблона – примера.
•    [[+comments_enabled]] – Значение может быть 1 или 0, в зависимости от того, нужно ли отображать комментарии для данного контейнера.
•    [[+tags]] – Отображает список наиболее часто используемых тегов в вашем блоге.
•    [[+archives]] – Отображает список сообщений за последние месяцы (или годы) в архивном формате.

Также в сниппете Articles можно использовать свойство &placeholderPrefix для добавления префикса вышеописанным плейсхолдерам, что позволит делать множественные вызовы сниппета Articles на одной странице.

Оформление Articles MODX Revolution

Расширение Articles полностью построено в соответствие философией MODX – контент всегда должен быть отделен от кода, поэтому разметка Articles может быть полностью отредактирована, дополнена или изменена. Это достаточно просто: просто продублируйте Шаблон (Templates) и измените его.

Создание дубликата Sample Templates

Для начала продублируем два шаблона , "sample.ArticlesContainerTemplate" и "sample.ArticlesTemplate". Затем переименуйте их так, как вам заблагорассудится. Назовем их соответственно "BlogTemplate" и "BlogPostTemplate".


Если отредактировать не копию, а непосредственно sample Templates, то при обновлении Articles все изменения будут удалены!

Теперь перейдем в System Settings, найдем следующие установки и изменим их:

  • "articles.default_container_template" – Изменим на наш BlogTemplate
  • "articles.default_article_template" - Изменим на наш BlogPostTemplate

Эти установки задают шаблон по умолчанию для Containers и Articles согласно вашим изменениям.

Изменение шаблонов

Шаблон Container

Наш шаблон container, или "BlogTemplate", включает несколько плейсхолдеров, предоставленных Articles. Вот они:

[[+latest_posts]] – Отображает виджет "Последние сообщения" на правой стороне sample template.
[[+latest_comments]] - Отображает виджет "Последние комментарии" на правой стороне sample template.
[[+comments_enabled]] - Значение может быть 1 или 0, в зависимости от того, нужно ли отображать комментарии для данного контейнера.
[[+tags]] - Отображает список наиболее часто используемых тегов в вашем блоге..
[[+archives]] - Отображает список сообщений за последние месяцы (или годы) в архивном формате.

Вы можете перемещать это плейсхолдер для настройки нового шаблона так, как захотите!

Шаблон Article

Наш шаблон article, или "BlogPostTemplate", также включает несколько плейсхолдеров:

[[+latest_posts]] - Отображает виджет "Последние сообщения" на правой стороне sample template.
[[+comments]] – Комментарии для данного article, предусмотренные Quip, выводятся если включен режим их отображения.
[[+comments_count]] – счетчик количества комментариев текущего article (т.е для текущего сообщения). Рассчитывается на основе данных QuipCount.
[[+comments_form]] – Форма ответа, обеспечивается  Quip, выводится если [[+comments]]  enabled / включены.
[[*articlestags]] – Используется с выходным фильтром "notempty", может включать / отключать отображение плейсхолдера [[+article_tags]] (обратите внимание, используется символ * вместо +)
[[+article_tags]] – содержит список всех заданных тэгов данного article .
[[*articles_container]] - ID  Container , в котором находится  наш Article. Обратите внимание, используется символ * вместо +)

Если вы за пределами Article Template (Шаблона) и нужно отобразить число комментариев для данного сообщения (например, если вам надо отобразить число комментариев для каждого сообщения в списке "Последние сообщения"), то вы не можете использовать плейсхолдер [[+comments_count]]. Вместо него вы должны использовать QuipCount. Перейдите на страницу Components -> Quip и посмотрите на “нанизанные” имена, которые Articles автоматически дает каждому сообщению. Это происходит в соответствие с форматомt: article-b{page-id-of-blog}-{page-id-of-post}, например article-b12-37 .

Зная это, мы можем использовать QuipCount внутри вызова getResources для получения числа комментариев для каждого сообщения, например:


[[!QuipCount? &thread=`article-b9-[[+id]]`]]

В примере выше, блог – это страница с id 9.

Редактирование Чанков

Articles также включает несколько базовых чанков для отображения различных установок вашего Container (находятся на вкладке "Advanced Settings" при редактировании контейнера). Вы можете копировать данные чанки и использовать их при создании сайта.