We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 31022
    • 328 Posts
    Andrey_V, я неоднозначно выразил свою мысль, прошу прощения. В своем посте я имел ввиду себя в первую очередь и нисколько не пытался принизить ваши умения и опыт. Это у меня с программированием никак не ладится. Вот недавняя тема, в которой я задаю довольно отстраненные вопросы: http://modxcms.com/forums/index.php/topic,31717.0.html Ваше замечание про ТЗ -- именно то, что я пытался выразить, говоря, что нужен опыт для работы с кем-то. Вот и все.

    Сейчас посмотрел на сайте по сортировке. У меня сделан tv типа DropDown-лист, в котором выводится сниппетом Related список фабрик производителей сортированный по pagetitle. НО! Как это сделано -- не понял. То есть, вроде бы явных указаний как сортировать этот список я не нашел.
      • 1607
      • 72 Posts
      А это в файле related.php.
      Здесь идут параметры:
      -----------------------------------------------------------
      $parents = isset($parents)? $parents : 0;
      $sortBy = isset($sortBy)? $sortBy : "pagetitle"; // pagetitle || longtitle || ID
      $sortDir = isset($sortDir)? $sortDir : "ASC"; // ASC || DESC
      $depth = isset($depth)? $depth : 1; // Number of levels deep to retrieve documents
      $display = isset($display)? $display : "all"; // number of documents
      $rowTpl = isset($tpl)? $modx->getChunk($tpl) : ’||[+pagetitle+]==[+id+]’;
      $tag = isset($tag)? "$tag" : "";
      $topLevel = isset($topLevel)? "$topLevel" : 2;
      $noneOption = isset($noneOption)? "$noneOption" : 0; // show ’None’ option by default
      $ultimateParent = $modx->runSnippet("UltimateParent", array("id"=>$id, "topLevel"=>$topLevel));
      $inherit = isset($inherit)? "$inherit" : 0; // default: child documents with same template inherit selected parent’s value
      -----------------------------------------------------------
      Строку выделил.
      Если не установлена сортировка, то используется по умолчанию: pagetitle
      А можно вместо него поставить longtitle или ID
        • 1607
        • 72 Posts
        Я может быть как-то неудачно формулирую свой запрос. Вот я сделал TV (например: proverka), в котором сохраняется id документа.
        Теперь делаю запрос DITTO:
        ---------------------------------------------------
        [!Ditto? &tags=`[*id*]` &tpl=`catalog_1` &parents=`114` &depth=`10` &display=`all` &hideFolders=`1`!]
        ---------------------------------------------------
        Все работает нормально.
        теперь добавляю: sortBy с использование TV
        ---------------------------------------------------
        [!Ditto? &sortBy=`proverka` &tags=`[*id*]` &tpl=`catalog_1` &parents=`114` &depth=`10` &display=`all` &hideFolders=`1`!]
        ---------------------------------------------------
        Сортирует по id связанного документа.
        А надо как-то поменять (преобразовать, связать, вычислить - как угодно) параметра на pagetitle. Чтобы можно было в таблице сортировать и по pagetitle основного документа и по pagetitle связанного - в зависимости от выбора пользователя.
          • 1788
          • 1,103 Posts
          Quote from: Andrey_V at Jan 06, 2009, 11:17 AM
          А надо как-то поменять (преобразовать, связать, вычислить - как угодно) параметра на pagetitle. Чтобы можно было в таблице сортировать и по pagetitle основного документа и по pagetitle связанного - в зависимости от выбора пользователя.
          Примерно так:
          http://ditto.modxcms.com/files/snippet-ditto-php.html#orderBy
          &orderBy=`pagetitle DESC, proverka DESC` сортировка.

          Создать TV для сортировки и дать выбор пользователю. Сохранять переменную в сессию, иначе при листании страниц будет сброс сортировки по дефолту.
            • 16545
            • 358 Posts
            12 постов назад писал тоже самое.
            Именно orderBy, почему-то для меня работает более корректно в таких же нестандартных случаях.