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
    Примерно так же. Вызов
    [[Ditto? &tpl=`ditto-Full` &paginate=`1` &orderBy=`menuindex ASC` &filter=`plotnost,@EVAL return $_POST['plotnost'];,1|odnorodnost,@EVAL return $_POST['odnorodnost'];,1|sizes,@EVAL return $_POST['sizes'];,1|musok,@EVAL return $_POST['musok'];,1`]]

    На странице форма для фильтра
    и для проверки сниппет:
    <?php
    echo "tvplotnost = ".$_POST['plotnost']."<br>tvodnorodnost = ".$_POST['odnorodnost']."<br>tvsizes = ".$_POST['sizes']."<br>tvmusok = ".$_POST['musok']."<br>";
    ?>

    Сниппет показывает присутствие переменных. Ditto же отсутствие документов.
    В фильтре пробовал вариации переменных с tv.
    Где собака порылась?
      • 785
      • 2,113 Posts
      Quote from: tius at Sep 08, 2008, 04:11 AM

      (ask: чек-бокс с единственной опцией yes).
      &filter=`tvask,’yes’,2`
      А почему tvask, если параметр ask?
        Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
        Статьи о MODx, регулярно новые публикации
        • 30122
        • 28 Posts
        Quote from: AKots at Sep 08, 2008, 05:01 AM

        Quote from: tius at Sep 08, 2008, 04:11 AM

        (ask: чек-бокс с единственной опцией yes).
        &filter=`tvask,’yes’,2`
        А почему tvask, если параметр ask?


        это я так, для проверки))
        в старых доках говорится, что надо обязательно ставить tv перед названием параметра, в новых доках, что не обязательно.
        но в любом случае - не работает.
          • 31792
          • 125 Posts
          Подскажите, плиз, как поступить.
          Есть подборка интервью с клоунами, заголовки типа: Олег Попов: "Я счастлив цирке"
          Нужно, чтобы все заголовки выводились на общую страницу - "Все интервью", но в алфавитном порядке: Попов Олег, Рудкин Юрий, Яковлев Иван (можно с их фразой, можно - без нее).

          Сделан сниппет Alfa:
          <?php
          function get_do_dvoet($string){
               return substr($string, 0, strpos($string,":"));
          }
          
          function get_do_nbsp($string){
               return substr($string, 0, strpos($string," "));
          }
          
          function get_pos_nbsp($string){
               $do_prob = substr($string, 0, strpos($string," "));
               return substr($string, strlen($do_prob));
          }
          
          $string= (isset($string))? $string: "Олег Попов: Я счастлив в цирке";
          $string=get_do_dvoet($string);
          echo get_pos_nbsp($string).' '.get_do_nbsp($string);
          ?>

          (где после $string: может отображаться набор цифр и символов - там в сниппете стоит "Олег Попов: Я счастлив в цирке")

          Чанк ditto_public:
          <div class="news">
          <span class="news_title">
            <a href="[(base_url)][~[+id+]~]">
            [!Alfa? &string=`[+pagetitle+]`!]
            </a></span><br />
            </div>
          <div>
            <p>[+introtext+]<br />
            <div class="more">[+link+]</div>
          </div>
          <hr />
          <p></p>

          Вывод на страницу:
          [!Ditto? &startID=`13` &tpl=`ditto_public` &sortBy=`createdon` &summarize=`10` &truncText=`0` &extenders=`summary` &paginate=`1`!]

          Но вместо Попов Олег выводится такая конструкция
          [!Alfa? &string=`Олег Попов: "Я счастлив в цирке"`!]

          Может, кто-то решал такую проблему?
            • 785
            • 2,113 Posts
            Quote from: volodka at Sep 08, 2008, 08:11 AM

            Может, кто-то решал такую проблему?
            В сниппете вместо echo поставьте return с теми же параметрами. То есть сниппет не должен сам что-то выводить, а должен возвращать сгенерированное значение. Если и после этого не заработает, надо дальше думать.
              Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
              Статьи о MODx, регулярно новые публикации
              • 19164
              • 1,215 Posts
              Т.к. сниппеты выполняются через eval, нет разницы, используете вы в коде return, print или echo.

              Скорее всего проблема в том что в некешируемом вызове ditto вызывается некешируемый вызов другого сниппета. Попробуйте [[Alfa? &string=`[+pagetitle+]`]]
                DirectResize 0.9 beta. PHPThumb, sets of configurations, configuration, binded to specific path. No backward compatibility. | DirectResize 0.9. PHPThumb, наборы параметров, параметры, привязанные к определенным путям. Без обратной совместимости.

                Unfortunately, DirectResize project is closed. If you want to continue development, PM me for access to project page on Google Code. К сожалению, проект DirectResize закрыт. Если вы желаете продолжить разработки, обращайтесь через ПМ для получения доступа к репозиторию на Google Code.

                [PLUGIN] DirectResize - as Maxigallery but for single images :: Download :: [url=http://modxcms.com/forums/index.php/topic,21490]
                • 31792
                • 125 Posts
                Попробовал [[Alfa? &string=`[+pagetitle+]`]].
                Выдет вместо страницы такой текст:

                Fatal error: Cannot redeclare get_do_dvoet() (previously declared in /home/z/zwezru/public_html/modx/manager/includes/document.parser.class.inc.php(769) : eval()’d code:2) in /home/z/zwezru/public_html/modx/manager/includes/document.parser.class.inc.php(769) : eval()’d code on line 2

                А echo менял на return - ничего не изменилось...
                  • 19164
                  • 1,215 Posts
                  Ошибку выдает, потому что дитто вызывается несколько раз, а в сниппете заново объявляется функция с таким же именем. Функции надо либо вынести в отдельный файл и использовать include_once, либо перед функциями проверять function_exists.
                    DirectResize 0.9 beta. PHPThumb, sets of configurations, configuration, binded to specific path. No backward compatibility. | DirectResize 0.9. PHPThumb, наборы параметров, параметры, привязанные к определенным путям. Без обратной совместимости.

                    Unfortunately, DirectResize project is closed. If you want to continue development, PM me for access to project page on Google Code. К сожалению, проект DirectResize закрыт. Если вы желаете продолжить разработки, обращайтесь через ПМ для получения доступа к репозиторию на Google Code.

                    [PLUGIN] DirectResize - as Maxigallery but for single images :: Download :: [url=http://modxcms.com/forums/index.php/topic,21490]
                    • 31792
                    • 125 Posts
                    короче, со сниппетом у меня ничего не выходит... А если альтернативный вариант? Например, использовать ля вывода статьи не заголовок документа ( Олег Попов: "Я счастлив в цирке"), а Аннотацию или Описание документа? introtext статей я все-равно оставляю пустым. Если туда вписать, к примеру, Попов Олег - может быть выведен на странице "Все статьи" именно текст "Попов Олег", являющийся гиперссылкой на полную версию статьи? И чтобы все фамилии на странице "Все статьи" были отсортированы по алфавиту?
                    Или это вариант - ерунда? Кто-то пробовал его применить?
                      • 30122
                      • 28 Posts
                      Quote from: tius at Sep 08, 2008, 04:11 AM

                      Здравствуйте.

                      осваиваю простейшую фильтрацию по тв-параметру (ask: чек-бокс с единственной опцией yes).
                      вызов дитто:

                      [[Ditto? &startID=`9` &sortBy=`createdon` &display=`all` &filter=`tvask,’yes’,2` &tpl=`Summary` ]]

                      но выводит все документы в директории. пробовала без ковычек в критерии, без tv в поле - одно и тоже. если ставлю 1 - то "документы не найдены", хотя в директории есть док-ты как с нажатым чек-боксом, так и без оного. радио-баттон yes||no дает тот же результат.

                      что не так?

                      заранее спасибо.


                      все оказалось до предельного просто. как всегда
                      тв чек-бокс с параметром yes==1
                      в ditto &filter=`ask,1,1`


                      но возник другой вопрос! =)
                      по RSS. следуя ману http://wiki.modxcms.com/index.php/Basic_RSS_feed, делаю новую некешируемую страничку с вызовом дитто
                      [[Ditto? &startID=`1` &format=`rss` &summarize=`20` &total=`20` ]]
                      в хидере основного шаблона ставлю
                      <link rel="alternate" type="application/rss+xml" title="ляляля" href="http://мойсайт.ру/index.php?id=37" />

                      проверяю (в опере): значок появился. кликаешь - спрашивает, подписываться ли? жмешь "да" и на этом все. ничего не грузится, в фиды новая подписка не добавляется. файрфокс говорит "загрузка не удалась".

                      впервые делаю rss на сайт. посему вопрос: как разрулить?
                      заранее спасибо