miniShop2: привязка производителей к ресурсам Решено


Всем доброго времени суток!

Первый раз взялся за MiniShop и возник вопрос: в настройках производителя можно привязать его к конкретному ресурсу (см. прикрепленное изображение). Скажите пожалуйста что это дает? Можно ли через эту привязку как-то выводить на странице этого ресурса инфу про этого производителя не пользуясь дополнительными сниппетами?

Заранее благодарю за ответ.
12 февраля 2018, 16:37    Павлик   
0    175 0

Комментарии ()

  1. Баха Волков 12 февраля 2018, 17:17 # 0
    Какую информацию хотите вывести?
    1. Павлик 12 февраля 2018, 17:20 # 0
      Ту что находится в карточке производителя.
      1. Баха Волков 12 февраля 2018, 18:11 # 0
        Думаю что без сниппета никак
        1. Павлик 12 февраля 2018, 18:16 # 0
          Хм. А зачем тогда нужна эта привязка?
    2. Александр Мельник 12 февраля 2018, 19:41 # 0
      Вы можете скажем создать ресурс на сайте, на котором выведете список всех производителей.
      А при клике на них переходить на привязанный к каждому производителю ресурс для более детальной информации.
      1. Павлик 12 февраля 2018, 19:46 # 0
        Вот! А как выводить информацию о конкретном производители на посвященном (привязанном) ему ресурсе? Нужно ли писать самому какой-нибудь сниппет или благодаря привязке производителя к ресурсу можно эту информацию вывести как-то проще?
        1. Александр Мельник 12 февраля 2018, 19:52 # 0
          Я думаю стандартного pdoResources будет достаточно
          [[!pdoResources?
          	&class=`msVendor`
          	&tpl=`chunk`
          	
          ]]
          В чанк chunk будет передана [[+resource]] или {$resource} в зависимости от того какой синтаксис вы используете.
          Она содержит id прикрепленного ресурса и вы можете сделать из нее ссылку в chunk так {$_modx->makeUrl($resource)}
          1. Павлик 12 февраля 2018, 20:27 # 0
            А какие тогда использовать в чанке плейсхолдеры чтобы отразить информацию о производителе которая записана в его карточке?
            1. Александр Мельник 12 февраля 2018, 20:39 # 0
              Вызовите pdoResources не указав имени шаблона.

              [[!pdoResources?
              	&class=`msVendor`
              	&tpl=``
              	
              ]]
              
              И на экран будут распечатаны все плейсхолдеры, которые вы можете использовать.
              1. Павлик 12 февраля 2018, 20:54 # 0
                У меня при таком выводе сниппета на экране появляется только слово «array».
                1. Александр Мельник 12 февраля 2018, 21:08 # 0
                  Откройте базу данных и посмотрите как называются столбцы таблицы, в которой хранятся производители.
                  Или как вариант сохраните результат вызова сниппета в переменную fenom, а затем распечатайте ее на экран.

                  Вот так выглядит ссылка на логотип производителя [[+logo]]
                  Вот так на название — [[+name]]
                  1. Павлик 12 февраля 2018, 23:48 # 0
                    Что-то похоже я чего-то не не понимаю. Что нужно чтобы было на странице конкретного производителя чтобы эти плейсхолдеры работали? Если я просто поставлю [[+name]] мне имя производителя не выведется
                    1. Баха Волков 13 февраля 2018, 03:10 # 0
                      Александр вас не понял
                      1. Баха Волков 13 февраля 2018, 06:14 # 0
                        Правильно, ничего и не выведется. Для того чтобы вывести данные, нужен сниппет, ну или плагин (зачем-то). Привязка нужна лишь для того хранения ссылки на ресурс в таблице минишоп.

                        Вариантов несколько:

                        1) Не рекомендуемый. Добавляйте/дублируйте информацию о производителе с помощью TV

                        2) Вариант «не очень». Воспользоваться pdoResources и с помощью where достать данные

                        3) Рекомендуемый. Простой сниппет который будет брать инфу из таблицы минишоп
                        1. Павлик 13 февраля 2018, 12:28 # 0
                          А можете мне дать ссылку на материал где написано как создавать такие сниппеты? Повторюсь: я новичок
        2. Павлик 16 февраля 2018, 14:52 # 0
          Короче тут действительно без специальных сниппетов никак не обойтись
          1. Алексей Ерохин 16 февраля 2018, 15:10 # 0
            Вам почти все правильно подсказали
            [[pdoResources? &class=`msVendor` &limit=`1` &sortby=`id` &where=`{"resource":[[+modx.resource.id]]}` &tpl=``]]
            
            Результат:
            file.modx.pro/files/6/0/b/60b37ffe8a457f7292c2dd71d39a212d.png
          2. Ishvan 21 февраля 2018, 11:56 # 0
            Создать свой вопрос мне карма на сайте на позволяет. поэтому вопрос задам здесь. у меня в minishop2
            вот так выводятся
            <link rel="canonical" href="https://site.eu/https://site.eu/"/>
            <link rel="next" href="https://site.eu/https://site.eu/?page=2"/>
            
            мне объясняли что за этот вывод отвечает pdopage, но как исправить это я не понимаю.
            да еще некоторые предполагают что виной «base href» он у меня такой
            <base href="[[++base_url]]" />
            Заранее спасибо.
            1. Павлик 21 февраля 2018, 12:43 # 0
              А что у вас выводится такими ссылками?
              1. Ishvan 21 февраля 2018, 12:44 # 0
                я адрес сайта просто убрал
                1. Павлик 21 февраля 2018, 12:48 # 0
                  А вызов сниппета можете опубликовать?
                  1. Ishvan 21 февраля 2018, 13:08 # 0
                    это вывод автоматом видимо делается я его в том месте не запускаю
              2. Ishvan 21 февраля 2018, 13:07 # 0
                перенес modx.pro/help/14701/
              Вы должны авторизоваться, чтобы оставлять комментарии.