We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 74
    • 74 Posts
    Структура:
    Папка 1
    - Папка 2
    -- Документ 3 с TV

    Код TV:
    @EVAL $parent=$modx->getParent($id=-1, 1, 'id'); return ($parent['id']);

    выдает значение Id родителя (Папка 2) в Документ 3.
    А как можно получить значение Id Папки 1 в TV Документа 3?

    Смотрел UltimateParent - там цикл for и перебор всех id - многовато действий, как для данного случая.
    Была мысль в документе добавить 2-ю TV, которая берет значение первой TV (Id родителя) и использует его для получения Id родителя родителя:
    @EVAL $mostparent==[*Id Папки 2*]; $parent=$modx->getParent($mostparent, 1, 'id'); return ($mostparent['id']);

    Или подход неверный?
    Растолкуйте
      • 785
      • 2,113 Posts
      Quote from: 2frags at Dec 19, 2008, 05:48 PM

      Или подход неверный?
      Код вообще непонятный, проблема решается как-то так:
      @EVAL $ParentIds = $modx->getParentIds($modx->documentIdentifier); return (end($ParentIds));
        Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
        Статьи о MODx, регулярно новые публикации
        • 74
        • 74 Posts
        Дя.. завязываю ночью вопросы задавать.
        AKots, спасибо!
        Для вывода ID парента парента - самое оно, только вместо END поставил NEXT.
        Правда не нашел как через ID вывести PAGETITLE, пришлось по-старинке:
        @EVAL $parent = $modx->getParent($id=-1,1,'id');
        $parentt = $parent[id]; 
        $parent2 = $modx->getParent($parentt,1,'pagetitle'); 
        return ($parent2[pagetitle]);
          • 23776
          • 4 Posts
          У меня тут вопросец возник:

          Есть такой вывод дитто

          [!Ditto? &startID=`7` &debug=`1`  &tpl=`news`  &display=`30`  &total=`1000` &depth=`2` &hideFolders=`1` &tplAlt=`news2` &interval=`2` &extenders=`details`  !]


          В чанке вызываю

          <div class="left_block">
          					<h3><span><strong>[*PARENT_TITLE*]</strong></span></h3>
          					<span class="bg_img"><a href="[~[+id+]~]"><img src="images_img/foto-1.jpg" alt="" /></a></span>
          					<h4>[+pagetitle+]</h4>
          					<p>[+introtext+]</p>
          </div>


          Содержимое TV параметра PARENT_TITLE

          @EVAL 
          $data = $modx->documentObject['id'];
          $parent=$modx->getParent($data, 1, 'pagetitle'); return $parent['pagetitle'];


          Я не как не могу застваить вывести название папки новостей (новости в разных разделах)

          Догадываюсь что я не правильно беру id текущего документа, только как взять его правильно не могу найти

          $data = $modx->documentObject['id'];
          


          Пробывал вывести вот так, но ничего не выводит (( :

          @EVAL 
          
          $parent=$modx->getParent($id=-1, 1, 'pagetitle'); return $parent['pagetitle'] ;
          


          Где может быть промах, подскажите ?
            • 28957
            • 122 Posts

            Я не как не могу застваить вывести название папки новостей (новости в разных разделах)

            А зачем для этого делать tv c eval, нужно использовать плагин Phx
            чтобы вывести ид родителя
            [+parent+]
            

            чтобы вывести ид дедушки
            [+parent:parent=`id`+]
            

            чтобы вывести заголовок прадедушки
            [+parent:parent=`id`:parent=`id`+]
            

            и дальще по рекурсии
            [+parent:parent=`id`:parent=`id`:parent=`id`+]
            

            причем можно получать не только id, а и любое другое поле из modx_site_content
            [+parent:parent=`id`:parent=`longtitle`+]
            




              suvit
              РROGWAY
              • 46404
              • 5 Posts
              снипетт с названием (parent_title)
              <?php
              // (c) badichan.com
              $page = $modx->getObject('modResource', $input);
              $id = $page->get('parent');
              $parent_page = $modx->getObject('modResource', $id);
              echo $parent_page->get('pagetitle');
              ?>
              чанк
              [[!parent_title? &input=`[[*parent]]`]] [ed. note: badichan last edited this post 12 years, 9 months ago.]