DLSiblings: кольцевая перелинковка для Evo

DLSiblings: кольцевая перелинковка для Evo

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

Краткое описание

DLSiblings — простой сниппет вывода соседних ресурсов для Evolution CMS (MODx Evo). DLSiblings предназначен для организации множественной кольцевой перелинковки страниц сайта. Основан на сниппете DocLister, поэтому можно использовать все возможности ДокЛистера.

Немного теории

Что такое множественная кольцевая перелинковка? Сеошники наверняка знают о ней. А для тех, кто не знает — это схема перелинковки страниц сайта, позволяющая неплохо поднять сайт по низкочастотным и СНЧ запросам.

Схема хороша тем, что работает даже на небольших выборках, примерно от 20-30 ресурсов. Кольцевая перелинковка известна давно, это классика, тем не менее работает и сегодня — я проверял неоднократно.

Подробнее о множественной кольцевой перелинковке читайте в моей статье: Схема перелинковки сайта под НЧ

Как работает сниппет

Сниппет DLSiblings — обертка для двух вызовов ДокЛистера. Первый вызов DL в режиме API выдает id всех ресурсов, участвующих в выборке. Для ускорения работы DL при этом вызове в выборке участвует только поле id.

Затем путем несложных арифметических операций вычисляем соседей, и делается второй вызов DL для сортировки и шаблонизации.

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

  • Для работы DLSiblings у вас должен быть установлен DocLister.
  • Требуется PHP не ниже версии 5.6.

Установка

  • Посмотреть сниппет можно на Гитхабе
  • Архив нужно скачать и установить через Extras ("Установка из архива").

Преимущества

Можно использовать все параметры, шаблоны, фильтры, prepare-сниппеты ДокЛистера.

Параметры сниппета

Основные

&renderSnippet

Какой сниппет сипользовать для вывода.

Возможные значения: DocLister или sgController

Значение по умолчанию: DocLister

&prevQty

Сколько выводить соседей-предшественников.

Возможные значения: целое число.

Значение по умолчанию: 2

&nextQty

Сколько выводить соседей-последователей.

Возможные значения: целое число.

Значение по умолчанию: 2

Параметры-исключения

Параметр &display из DocLister в DLSiblings не имеет смсыла, так как за кол-во выводимых соседей отвечают параметры &prevQty и &nextQty.

Остальные параметры

Все остальные параметры и шаблоны как в DocLister. Можно использовать унаследованные от DocLister (такие же, как у него): условия выборки &addWhereList и &filters, условия сортировки &orderBy, глубину выборки &depth, prepare-сниппеты и многие другие параметры и все шаблоны. Если в качестве сниппета вывода указан sgController, то соответственно можно использовать и все условия, параметры и шаблоны sgController.

Нужно лишь понимать, имеют ли смысл эти параметры в вызове. Например, если при вызове DLSiblings задать &idType=`documents` и &documents=`1,2,3` (всего 3 документа), а &prevQty и &prevQty задать по 4 (в сумме 8 соседей), то выводиться все равно будут только эти 3 документа. Смысла в таком сочетании параметров нет.

Шаблоны сниппета

Все шаблоны DLSiblings — точно такие же, как у DocLister. Плейсхолдеры в шаблонах - тоже точно такие же, как в DocListerЕсли в качестве сниппета вывода указан sgController, то шаблоны и плейсхолдеры - точно такие же, как в sgController.

Простой пример

[[DLSiblings?
   &idType=`parents`
   &parents=`[*parent*]`
&ownerTPL=`@CODE:<ul>[+dl.wrap+]</ul>` &tpl=`@CODE:<li><a href="[+url+]">[+tv.h1+]</a></li>` &prevQty=`2` &nextQty=`2` &tvList=`h1` ]]

В этом примере параметром &parents мы задаем выборку, в которой будем искать соседей — все документы, находящиеся в той же папке, что и текущий.

Из этой папки мы и выводим 2 предыдущих соседа и 2 последующих с простым шаблоном &tpl. Так как сортировка в ДокЛистере по умолчанию id DESC, то соседи ищутся по соседним ID.

Результатом работы будет список ссылок на статьи, соседние по ИД для текущей.

Простой блок перелинковки

Итог

Сниппет DLSiblings позволяет с минимумом усилий создать на сайте множественную кольцевую перелинковку, и поэтому может оказаться весьма полезен для улучшения позиций сайта по НЧ и СНЧ запросам.


Понравился материал? Поделись с друзьями!