SeeToo

Динамичное формирование блока
Автор дополнения
Владимир Кисилица
Пакетов
2
Закачек
380
Обычно отвечает в течение нескольких дней
Автор дополнения
Пакетов
2
Закачек
380
Обычно отвечает в течение нескольких дней
Версия 1.1.1-pl
Дата выпуска 05.01.2018
Загрузки 86
Просмотры 5 688
Внимание, этот компонент требует версию PHP 5.3 или выше! Если ваш сайт использует PHP ниже требуемого, установка этого дополнения может его сломать.
Внимание, этот компонент требует версию MODX не ниже 2.3 !

Компонент работает с использованием компонента pdoTools. Основу составляет сниппет SeeTooResources, который является оберткой для pdoResources, поэтому принимает все основные параметры этого сниппета.


Например. Представим, что есть некий блог, со статьями. В конце каждой статьи, нам нужно выводить блок «Смотрите также» с 4 статьями, которые нужно сортировать по количеству переходов. Для этого и предназначен данный компонент.


Рассмотрим порядок действий для данного примера.


Задаем параметры для вывода статей, так как бы мы задавали для сниппета pdoResources. Например:


    [[!SeeTooResources?
        &parents = `7` // ID раздела со статьями
        &limit = `4`
        &tpl = `article.item`
    ]]

На данном этапе, при каждой загрузке статьи, будут выводиться 4 случайных потомка раздела c id равным 7. По умолчанию поле parents равно 0.


Так как это может вызвать большую нагрузку на БД, мы можем включить кеш на 10 минут, или на 1 час, или на любое другое значение:


    [[!SeeTooResources?
        &cache = `1`
        &cacheTime = `3600`
        
        &parents = `7`
        &limit = `4`
        &tpl = `article.item`
    ]]

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


    [[!SeeTooResources?
        &cache = `1`
        &cacheTime = `3600`
        &minCount = `20`

        &parents = `7`
        &limit = `4`
        &tpl = `article.item`
    ]]

Теперь, статьи у которых количество переходов, равно или больше 20, будут выводиться первыми, с сортировкой по этому количеству, остальные статьи, если еще не достигнут лимит вывода, будут выводиться случайно



Подсчетом количества переходов занимается плагин SeeToo, который получает HTTP_REFERER для определения ресурса, с которого был выполнен переход, Вы можете его отключить и реализовать свою логику



Для удобства управления работой данного компонента, в каждый ресурс добавляется вкладка SeeToo, в которой выводится таблица связанных ресурсов. В этой таблице можно редактировать количество переходов, менять связанный ресурс, удалять, отключать записи. Используется удобный селект из minishop2 для выбора ресурсов.






Обсуждение компонента в сообществе MODX.PRO.

1.1.1-pl (05.01.2018)

Fixed

  • Fix plugin SeeToo for nested links
  • Lexicon keys for russian language

1.1.0-pl (24.01.2017)

Added

  • Turn on/off option "useRandom" for print random resources.
  • "seetoo_exclude_where" system setting for base excluder.
  • Class "SeeTooExcluder" that use "seetoo_exclude_where" system setting for exclude resources.
  • logic for exclude resource that use in "error_page", "site_unavailable_page", "unauthorized_page" system settings.
  • logic for customize excluder class, like miniShop2 or mSearch2.

1.0.4-pl (18.09.2016)

  • Fix error finding table.

1.0.3-pl (18.09.2016)

  • Fix printing debug information into error.log
  • Added system setting for filtering resources by MIME type

1.0.2-beta (02.07.2016)

  • Fixed check remote referrer
  • Added unsigned attribute to "view" field on table "see_too_resources"

1.0.1-beta (02.07.2016)

  • Fixed error on table "see_too_resources"

Последние обсуждения в сообществе MODX.pro