Как вывести сначала последнюю опубликованную статью, а затем 2 случайные с помощью Ditto или Doclister так, чтобы первая статья не дублировалась?

Для решения данной задачи мы можем использовать плагин Ditto или Doclister совместно с кодом MODX.

Первым делом, убедитесь, что у вас установлен и активирован один из плагинов Ditto или Doclister. Затем создайте новую страницу или откройте существующую страницу для редактирования в режиме кода.

Для вывода последней опубликованной статьи воспользуйтесь следующим кодом на странице MODX:

[[!Ditto?
  &parents=`[[*id]]`
  &sortBy=`publishedon`
  &sortDir=`DESC`
  &limit=`1`
]]

В этом коде мы используем плагин Ditto и его параметры для получения последней опубликованной статьи на текущей странице MODX. Значение [[*id]] заменяется на идентификатор текущей страницы.

Далее, для вывода двух случайных статей, не включая первую статью, используйте следующий код:

[[!Ditto?
  &parents=`[[*id]]`
  &excludeDocs=`[[+ditto.id]]`
  &sortBy=`RAND()`
  &limit=`2`
]]

В этом коде мы снова используем плагин Ditto и его параметры. Параметр excludeDocs используется для исключения первой статьи, полученной ранее. Параметр sortBy устанавливает случайный порядок отображения статей.

Если вы предпочитаете использовать плагин Doclister, код будет немного отличаться. Вы можете использовать следующий код:

[[!DocLister?
  &parents=`[[*id]]`
  &orderBy=`createdon`
  &sortby=`DESC`
  &tpl=`@CODE:[[+pagetitle]]`
  &limit=`1`
]]

Для вывода двух случайных статей, не включая первую, используйте следующий код:

[[!DocLister?
  &parents=`[[*id]]`
  &idType=`parent`
  &display=`random`
  &tpl=`@INLINE <li>[[+pagetitle]]</li>`
  &limit=`2`
]]

Обратите внимание, что параметр idType устанавливается в значение "parent", чтобы выводить статьи только родительской страницы.

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