Как вывести заголовок нужного ресурса?

я пробовал [[*pagetitle? &id=`4`]] — не работает

заранее извиняюсь за дурацкие вопросы
Андрей И.
26 апреля 2013, 16:49
modx.pro
6 851
0

Комментарии: 15

Андрей И.
26 апреля 2013, 20:53
0
Задача такая: хочу сделать главное меню, и включить туда некоторые ресурсы. И получается нужно вывести чтото типа этого
<ul id="navitab">
         <li><a href="[[++site_url]]">Главная</a></li>
         <li><a href="[[~4]]"> Заголовок ресрса с ID=4</a></li>
         <li><a href="[[~25]]"> Заголовок ресрса с ID=25</a></li>
</ul>
    Fedor
    26 апреля 2013, 21:39
    0
    Лучше попробуй для меню вот это — Wayfinder, в сети есть много примеров по использованию.
      Андрей И.
      26 апреля 2013, 21:41
      0
      Wayfinder посмотрю, но я пока что пытаюсь разобраться с синтаксисом.
      Хочу понять алгоритм работы.
      Вообще, так можно сделать в Modx Revo ??
        Сергей Шлоков
        30 апреля 2013, 08:50
        0
        В сети много сайтов про MODX для начинающих. Советую знакомство с системой начать именно с них. Тогда не будет возникать таких вопросов. Для меню лучше использовать Wayfinder и не изобретать велосипед. Именно для этого этот сниппет и был придуман. Поближе познакомится можно здесь:
        Как использовать Wayfinder
    Алексей
    26 апреля 2013, 22:20
    0
    rtfm.modx.com/display/ADDON/getResourceField
    Но каждый его вызов — это запрос в БД, поэтому подумайте, прежде чем делать таким способом меню.
      Андрей И.
      26 апреля 2013, 23:23
      0
      Спасибо и за это!

      Надеюсь, есть более элегантное решение?
      Андрей И.
      26 апреля 2013, 23:34
      0
      Я так понял, такую задачу можно решить только сниппетами. Системно это не предусмотрено.

      Вот, предложили еще такой, интересный вариант:
      компонент fastField
      конструкция такая:
      [[#1.pagetitle]]
      [[#1.tv.myTV]]
      [[#POST.name]] то же $_POST['name']
      [[!#get.name]] то же $_GET['name'] (применимо к $_GET, $_POST, $_REQUEST, $_SERVER, $_FILES, $_COOKIE, $_SESSION)

      еще есть фильтрация [[#3.pagetitle:ucase:default=`[[*pagetitle:ucase]]`]]
        Андрей И.
        26 апреля 2013, 23:46
        0
        Один недостаток fastField (причем значительный) — сайт стал сильно тормозить
          Виталий Киреев
          30 апреля 2013, 04:23
          0
          А можно поинтересоваться, какая конструкция приводит к тормозам? По всем тестам fastField работает быстрее getResourceField и кешируется лучше.
            Андрей И.
            30 апреля 2013, 09:09
            0
            [[#4.pagetitle]] — я пробовал это, сайт стал заметно медленнее работать, при минимуме HTML и CSS (js вообще нет)
              Виталий Киреев
              01 мая 2013, 15:08
              0
              Такая ссылка генерится порядка 0,01с, непонятно откуда могут быть тормоза :( Но, конечно, меню это не тот случай, где следует применять такие вещи.
        lu4she04
        26 апреля 2013, 23:46
        0
        Для меню конечно правильнее делать с помощью Wayfinder, но раз уж хочется так вручную каждый раздел выводить, то можно использовать getResourceField, и выводить так:
        <ul id="navitab">
                 <li><a href="[[++site_url]]">[[!getResourceField? &id=`1` &field=`pagetitle`]]</a></li>
                 <li><a href="[[~4]]"> [[!getResourceField? &id=`4` &field=`pagetitle`]]</a></li>
                 <li><a href="[[~25]]"> [[!getResourceField? &id=`25` &field=`pagetitle`]]</a></li>
        </ul>
          Андрей И.
          26 апреля 2013, 23:46
          0
          Спасибо с getResourceField уже разобрался
            Илья Уткин
            29 апреля 2013, 23:28
            0
            Кстати, если уж вы только начали разбираться с MODX, учитесь сразу вызывать сниппеты стандартно, то есть кешированными. Убирайте восклицательные знаки в вызове getResourceField (как и других сниппетов — Wayfinder, getResources и пр.). У MODX сильная система кеширования и если сниппеты вызываются так: [[snippet]], то повторного запроса не будет
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        15