Как пользоваться VirtualPage

Простите за сеошный заголовок. Искал пошаговую инструкция и в сети и на modx.pro.
Поделитесь ссылкой пожалуйста, если есть статья, где подробно, описывается, процесс создания виртуальных страниц.
Имеем урл: сайт.ру/категория/товар
Хочу вынести отзывы о товаре на отдельную страницу сайт.ру/категория/товар/отзывы-о-товаре
Для отзывов использую easyComm

Есть еще задача посложнее, с которой, надеюсь VirtualPage справится.
В карточке товара, в характеристиках сделать, некоторые значения характеристик ссылкой.
Например: Цвет товара — красный (где красный, ссылка на виртуальную страницу, со всеми товарами сайта, красного цвета)
Если я не правильно планирую использовать для этого VirtualPage, просьба подсказать более правильное решение. Так-как такие перекрестные ссылки, тренд 2017-2018 года, я думаю кто-то, уже это делал и есть готовое решение, за которое я готов и заплатить.
Всем тепла в этом и следующем году
v2254303
30 декабря 2017, 07:51
modx.pro
4
2 229
+1

Комментарии: 2

Наумов Алексей
31 декабря 2017, 11:07
+1
Если url действительно сайт.ру/категория/товар, то вы можете написать правило:
/{category}/{product}/reviews
событие onHandleRequest, обработчик — например Ресурс. А на странице ресурса вызвать уже сниппет некий. Задача этого сниппета — найти product, и вызвать ecForm и ecMessages, передав им соответствующий thread.
    Сергей Шлоков
    31 декабря 2017, 14:06
    1
    +2
    Для любителей программного подхода.

    Берем modHelpers и делаем простейший роутер.
    1. Создаем страницу отзывов. На ней нужно вызвать сниппет, который выводит отзыв из БД.
    2. В плагине на OnHandleRequest (или OnPageNotFound) пишем
    # Срабатывает на адрес - site.ru/category/product/reviews
    if ($modx->context->key == 'mgr') return;
    // Форвардим на страницу отзывов
    if (request()->segment(3) == 'reviews') forward('id страницы отзывов');
    В сниппете получаем отзыв
    list($category,$product) = request()->segments();
    // Делаем запрос в базу по данным $category и $product.
    Вауля.

    П.С. Я таким образом формирую хлебные крошки для виртуальных страниц типа https://modzone.ru/blog/2017/10/.
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      2