Как вывести блок новостей на главной?

Для вывода блока новостей на главной странице в MODX можно использовать несколько подходов. Рассмотрим два основных способа: с помощью сниппета и с использованием TV-параметра.

1. С использованием сниппета:
Шаг 1: Создайте новый сниппет в панели управления MODX. Назовите его, например, "NewsBlock".
Шаг 2: В разделе "Содержание" сниппета введите код, отвечающий за получение списка новостей с необходимыми параметрами. Например, вы можете использовать сниппет getResources, если он установлен на вашем сайте:

   [[getResources?
     &parents=`0`
     &tpl=`news_item_tpl`
     &limit=`5`
     &sortby=`publishedon`
     &sortdir=`DESC`
   ]]

Шаг 3: Создайте чанк (шаблон) с именем "news_item_tpl" для отображения каждой отдельной новости.
Шаг 4: В вашем шаблоне главной страницы добавьте вызов созданного сниппета:

   [[NewsBlock]]

Теперь на главной странице будут выводиться последние пять новостей.

2. С использованием TV-параметра:
Шаг 1: Создайте TV-параметр с именем, например, "NewsBlockIDs". Этот TV будет содержать идентификаторы страниц с новостями, которые вы хотите отобразить на главной странице, разделенные запятыми.
Шаг 2: В вашем шаблоне главной страницы добавьте код, который будет выводить новости на основе заданных идентификаторов:

   <?php
   $newsBlockIDs = $modx->getOption('NewsBlockIDs', $modx->resource->get('template'), '');
   $ids = explode(',', $newsBlockIDs);
   $news = $modx->getCollection('modResource', array('id:IN' => $ids));
   
   foreach ($news as $new) {
       // Здесь можно отобразить заголовок, анонс и прочую информацию
       echo $new->get('pagetitle');
       echo $new->get('introtext');
   }
   ?>

Теперь, добавив идентификаторы страниц с новостями в TV-параметр "NewsBlockIDs", вы сможете отобразить блок новостей на главной странице.

Конечно, эти подходы могут быть дополнены и настроены в соответствии с требованиями вашего проекта. Но основная идея заключается в том, чтобы использовать сниппет или TV-параметр для получения необходимой информации о новостях и отобразить ее на главной странице сайта.