We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
  • Для примера мы хотим создать и управлять дополнительным полем для вставки изображения в документ.
    Это часто бывает нужным при создании новостной ленты, к каждой новости которой необходимо добавлять изображение.

    В MODx подобные дополнительные поля создаются с помощью Template Variables (TV).
    Итак, ниже описан процесс создания дополнительной переменной для данного случая:

    • Жмем Resources->Manage Resources, выбираем закладку Template Variables->New Template Variable
    • Называем новую переменную как хочется, например image в поле Variable Name
    • В Caption напишем краткое пояснение "Изображение"
    • Description - по желанию, например "Здесь Вы можете вставить рисунок"
    • В выпадающем списке Input Type  выбираем Image
    • Ниже в Template Access отмечаем чекбоксом тот шаблон, в котором хотим использовать дополнительно данное изображение
    • Сохраняем данные Save
    Дальше идем в шаблон, который отметили в Template Access, и в нужном месте прописываем код вставки рисунка, что-то вроде этого
    <img src="[*image*]" />
    Далее при заполнении информацией уже самих документов дополнительно в появившемся поле "Изображение" мы можем вставить сам рисунок. При нажатии на кнопку "Insert" появится Файл-браузер, куда мы легко можем поместить новый файл или выбрать уже существующий.

    Таким же образом могут создаваться переменные другого типа; также при необходимости мы можем создавать несколько дополнительных переменных для одного шаблона.

    P.S.: Я работаю с англоязычной версией MODx, поэтому привел здесь все названия на английском. Хотя не думаю, что это может создать большую проблему для понимания принципов работы smiley
      Разработка сайтов и программных модулей на MODX.
      Опыт работы на MODx с 2005 года. Высокое качество.
      Компания Baltic Design Colors: http://www.bdcolors.ru.
      • 33694
      • 742 Posts
      Остаётся неясным вопрос, зачем вставлять <img src="[*image*]" /> в шаблон, если рисунки мы хотим вставлять в документы-новости?
        • 33114
        • 518 Posts
        Quote from: [e
        Bu$ter link=topic=10292.msg70409#msg70409 date=1166809124]
        Остаётся неясным вопрос, зачем вставлять <img src="[*image*]" /> в шаблон, если рисунки мы хотим вставлять в документы-новости?
        доп. параметр типа image взят здесь для примера, понятно что картинки можно вставлять и в контент.

        хочу добавить руководство по созданию параметра типа radio options, который также часто полезен:

        - итак, задаем параметру тип radio options
        - в поле "Возможные значения" вписываем эти самые значения в таком виде:
        (допустим, нужно задать цвет отделки товара - красный, синий, зеленый, причем доп. параметр должен содержать соответствующий чанк {{красный}}, {{синий}}, {{зеленый}})
        красный={{красный}}||синий=={{синий}}||зеленый=={{зеленый}}

        - в итоге получаем радио-кнопки с выбором отделки
          http://modx.ru - российская поддержка MODx
          http://newscup.ru - экспериментальный проект
          http://yentsun.com - персональный сайт
          • 16234
          • 6 Posts
          Клево, спасибо!!! 

          Подумал, что с помошью Дитто и этого поля можно сделать какбы каталог изображений ( портфолио), т.е.
          я создал 2 параметра TV, один image, другой image_prev. Так вот, image_prev отвечает за превьюшку новости (новой работы), я хотел запихнуть его в Аннотацию документа и тамже написать небольшое пояснение, а в самом теле документа уже ставится image и бОльшее описание.

          сделал два чанка {{image}}  и {{image_prev}}, в которых, соответственно запихнул параметры TV, но вышел казус...
          в самом теле документа все отображается нормально, {{image}} выводится и все отлично, а вот в аннотации параметр {{image_prev}} выводится тоже, однако вместо картинки крестик (такое бывает когда путь не правильно указываешь), смотрим путь через *правый клик мышки -> свойства* и там написано: Адрес: http://test2.ru/, т.е. идет какая-то путанница с путями именно в поле Аннотация...
          В содержимом документа все отображается нормально, косяк только с аннотацией... wtf?
            • 16234
            • 6 Posts
            »îÔØ! ½ã ßÞÜÞÓØâÕ áÞÒÕâÞÜ åÞâì!
              • 33350
              • 3 Posts
              Quote from: Korym at Jan 07, 2007, 02:59 PM

              сделал два чанка {{image}} и {{image_prev}}, в которых, соответственно запихнул параметры TV, но вышел казус...
              в самом теле документа все отображается нормально, {{image}} выводится и все отлично, а вот в аннотации параметр {{image_prev}} выводится тоже, однако вместо картинки крестик (такое бывает когда путь не правильно указываешь), смотрим путь через *правый клик мышки -> свойства* и там написано: Адрес: http://test2.ru/, т.е. идет какая-то путанница с путями именно в поле Аннотация...
              В содержимом документа все отображается нормально, косяк только с аннотацией... wtf?

              Такая же проблема была и у меня. В самом документе все нормально, но с выводом списка в Ditto, вместо значения TV выводилось [(base_url)]. Решил написанием сниппета который берет значение TV напрямую из БД.
                • 32768
                • 4 Posts
                А как бы сделать что бы на разных страницах выводились разные TV. (в панели администратора).
                Например для группы документов - "товары" мне нужнен TV - "цвет", для группы документов - "фирмы" мне нужен TV -"адрес".
                Как сделать что бы при редактировании документов - товары, не выводился TV - "адрес". и наоборот..
                можно ли так сделать?
                  • 33350
                  • 3 Posts
                  Quote from: X-Sonic at May 14, 2007, 02:51 PM

                  А как бы сделать что бы на разных страницах выводились разные TV. (в панели администратора).
                  Например для группы документов - "товары" мне нужнен TV - "цвет", для группы документов - "фирмы" мне нужен TV -"адрес".
                  Как сделать что бы при редактировании документов - товары, не выводился TV - "адрес". и наоборот..
                  можно ли так сделать?

                  Помоему ничего сложного, надо сделать 2 разных шаблона для документов товары и фирмы, а этим шаблонам назначить соответствующие TV. Ну а если не хочется несколько шаблонов, то только написать свой чанк, которые возвращает [*tvColor*] или [*tvAddress*] в зависимости от вида документа. Но более правильно на мой взгляд 2 шаблона.
                    • 10897
                    • 7 Posts
                    Пишу сниппет, выводящий список документов особым образом. Хочу показать около каждого документа имя его автора. Автор хранится в TV [*author*]. Подскажите пожалуйста, каким API-вызовом узнать для документа с заданным id значение параметра [*author*]?

                    Заранее спасибо.
                      • 897
                      • 1,620 Posts
                        "Und wenn du lange in einen Abgrund blickst, blickt der Abgrund auch in dich hinein."

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

                        Who can defeat the Russian bear?