We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 31022
    • 328 Posts
    *бъется головой об стол: "Пхп! Учить! Надо! Было!"

    Господа, прошу помощи. Вкратце, нужно вытащить alias у самого верхнего документа. Через нахождение этого алиаса я показываю на сайте картинку соответствующего раздела. Как вытащить алиас самого документа я знаю: $alias = $modx->documentObject[’alias’]; А вот как вытащить alias верхнего элемента -- нет. Попробовал опереться на код, представленный здесь на форуме. Примерно такой изначальный код:
    <?php
    $p = mysql_fetch_assoc(mysql_query("SELECT `pagetitle`, `parent` FROM `".$modx->db->config['table_prefix']."site_content` WHERE `id` = ".$id.""));
    if ($p['parent']) echo mysql_result(mysql_query("SELECT `pagetitle` FROM `".$modx->db->config['table_prefix']."site_content` WHERE `id` = ".$p['parent'].""),0);
    else echo $p['pagetitle'];
    ?>


    Переделал так:

    $palias = mysql_query("SELECT `alias` FROM `".$modx->db->config['table_prefix']."site_content` WHERE `id` = ".$id."");
    return $palias;


    А вызываю так:
    [!ParentAlias? &id=`[[UltimateParent? &topLevel=`1`]]` !]

    И не работает. Данный код, вместо осмысленных "company", "contacts" и пр. выдает "Resource id #12" или "Resource id #13" и в том же духе.

    Расскажите, если не сложно, как это реализовать можно? Как вытащить alias у рутового документа?
      • 897
      • 1,620 Posts
      поищите в репозитарии GetField

      будет у вас примерно так

      [[GetField? &docid=`[[UltimateParent]]` &field=`alias`]]
      
        "Und wenn du lange in einen Abgrund blickst, blickt der Abgrund auch in dich hinein."

        Не используйте Revo для "просто сайтов". Используйте Evo

        Who can defeat the Russian bear?
        • 31022
        • 328 Posts
        Алексей, спасибо! Работает! Самое смешное, что GetField у меня уже есть и я с ним уже работал. Но вот на сей раз мысля не дошла. Просто думал в сторону прямого запроса к БД: быстрее получится. Ну раз уж так работает, то и пусть пока работает.

        Спасибо!