We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 1788
    • 1,103 Posts
    Quote from: modx_user at Nov 30, 2010, 02:37 AM

    Прошу помочь,
    В карточке минерала, название которого начинается на букву А, хочу вывести список всех минералов на букву А.
    Соответственно в минерале с названием на букву Б хочу вывести соответствующий список минералов на букву Б.
    Имеется tv-параметр, где каждому минералу присваивается буква,
    Как-то так надо выводить, но не хватает мозгов:
    [!Ditto? &parents=`2` &depth=`10` &filter=`tvalphabet,tvalphabet-текущий,7` &display=`all` &tpl=`alpha_mineral3` &sortDir=`ASC` &sortBy=`pagetitle`!]
    Зачем здесь фильтр, если проще сделать вложеним папок:
    Минералы
    -А
    --Ааа
    --Абв
    -Б
    --Баа
    --Ббб
    Причем и не с дитто, а вайфандером сделать это.
      • 20050
      • 67 Posts
      Структура не алфавитная, а категорийная. Типа - класс, подкласс, семейство и нижнее - минерал.
        [!ditto? !][!ditto? !][!ditto &margaritto=`yes`!]
        • 20050
        • 67 Posts
        Wayfinder был бы выходом, если бы структура была алфавитная, а не категорийная.

        Логику структуры не поменять, приходится присваивать тв-параметр "Буква" и выводить по нему в дитто. Но вот как сделать, что бы выводить фильтр на ту букву, которая присвоена в данный момент текущей странице? Погляжу пока в сторону phx.
          [!ditto? !][!ditto? !][!ditto &margaritto=`yes`!]
          • 9085
          • 630 Posts
          Quote from: modx_user at Nov 30, 2010, 05:50 AM


          Логику структуры не поменять, приходится присваивать тв-параметр "Буква" и выводить по нему в дитто. Но вот как сделать, что бы выводить фильтр на ту букву, которая присвоена в данный момент текущей странице? Погляжу пока в сторону phx.

          Есть мнение, что phx - зло. smiley Не буду холиварить, с его помощью действительно должно быть просто.

          Без него можно сделать сниппет, который сформирует строку вида:
          echo '[!Ditto? &parents=`2` &depth=`10` &filter=`tvalphabet,'.$tvalphabet_current.',7` &display=`all` &tpl=`alpha_mineral3` &sortDir=`ASC` &sortBy=`pagetitle`!]';

          Решение, возможно, не очень корректное, но, работающее. (вместо $tvalphabet_current вставить текущую букву.. получить TV через API)
            Правильно заданный вопрос повышает вероятность получения нужного ответа.
            Что-то не работает? Загляните в лог ошибок!
            Есть проблема? "Локализуйте" её!
            Ответы на большинство вопросов по MODx | MODx RTFM | API Evo Revo | галопом по Европам Азиям smiley wikibooks(ru) Ditto(en) | Wayfinder e-book | Заметки и о MODx
            • 20050
            • 67 Posts
            Quote from: esche at Nov 30, 2010, 06:08 AM



            Без него можно сделать сниппет, который сформирует строку вида:
            echo '[!Ditto? &parents=`2` &depth=`10` &filter=`tvalphabet,'.$tvalphabet_current.',7` &display=`all` &tpl=`alpha_mineral3` &sortDir=`ASC` &sortBy=`pagetitle`!]';

            Решение, возможно, не очень корректное, но, работающее. (вместо $tvalphabet_current вставить текущую букву.. получить TV через API)

            Как получить именно текущую букву, текущее значение тв-параметра, присвоенное текущему продукту?
            Простите за, наверное, глупый вопрос.

            Ввести руками букву я могу. Но это не универсальное решение.
            Нужно либо значение тв, либо как-то брать первую букву pagetitle и выводить по ней.
              [!ditto? !][!ditto? !][!ditto &margaritto=`yes`!]
              • 9085
              • 630 Posts
              как получить значение TV
              Как получить pagetitle - $modx->documentObject[’pagetitle’]
              как получить первую букву или
              $test = "test";
              echo $test[0];
                Правильно заданный вопрос повышает вероятность получения нужного ответа.
                Что-то не работает? Загляните в лог ошибок!
                Есть проблема? "Локализуйте" её!
                Ответы на большинство вопросов по MODx | MODx RTFM | API Evo Revo | галопом по Европам Азиям smiley wikibooks(ru) Ditto(en) | Wayfinder e-book | Заметки и о MODx
                • 20050
                • 67 Posts
                Всё оказалось банально проще. Я сглупил. Всё время в фильтре вставлял [*tvalphabet*] и удивлялся почему сортировка не работает.


                [!Ditto? &parents=`2` &depth=`10` &filter=`tvalphabet,[*alphabet*],7` &display=`all` &tpl=`alpha_mineral4` &sortDir=`ASC` &sortBy=`pagetitle`!]
                
                


                esche, antey спасибо за участие!
                  [!ditto? !][!ditto? !][!ditto &margaritto=`yes`!]
                  • 17269
                  • 6 Posts
                  Подскажите, как сделать вывод документов с определенным параметром тв? можно ли через filtr это сделать, без дополнительных плагинов и танцов с бубном?
                    • 9085
                    • 630 Posts
                    Quote from: liveund at Dec 10, 2010, 02:31 AM

                    Подскажите, как сделать вывод документов с определенным параметром тв? можно ли через filtr это сделать, без дополнительных плагинов и танцов с бубном?
                    Танцы с бубном рулят!..
                    А по теме - попробуйте страницу чуть выше прокрутить... там как раз про &filtEr
                      Правильно заданный вопрос повышает вероятность получения нужного ответа.
                      Что-то не работает? Загляните в лог ошибок!
                      Есть проблема? "Локализуйте" её!
                      Ответы на большинство вопросов по MODx | MODx RTFM | API Evo Revo | галопом по Европам Азиям smiley wikibooks(ru) Ditto(en) | Wayfinder e-book | Заметки и о MODx
                      • 32297
                      • 13 Posts
                      Не пойму как вывести последний добавленный на сайт элемент с помощью ditto (или другой "динамический" вариант) , неужели можно это сделать только используя sql запросы и соотв. параметр &where=`` ? а то не хочется пока углубляться в базу данных modx что там как и тп tongue

                      Подскажите, пожалуйста, вариант решения.

                      PS В поиске найти ответ не сумел.