Не видит третий и четвертый уровень условия If
Делаю страницу галерей (изображений и видео), т.к это должны быть 5 разных страниц (главная страница, страница галереи изображений, страница галереи видео, страница просмотра видео, страница просмотра конкретной галереи) то я решил попробовать сделать условия через дополнение If используя параметры GET в урле. Собственно такой код:
[[!If? &subject=`[[!getAlbum]]` &operator=`notempty` &then=`
[[!Gallery? &checkForRequestTagVar=`1` &toPlaceholder=`Gallery` &useCss=`0` &containerTpl=`DemoGalleryAlbumTpl` &thumbWidth=`195` &thumbHeight=`140` &thumbTpl=`DemoGalItemThumb` &imageWidth=`800` &imageHeight=`800`]]
[[+Gallery]]
` &else=`
[[!If? &subject=`[[!getVideoUrl]]` &operator=`notempty` &then=`
<iframe width="800" height="440" src="[[!getVideoUrl]]" frameborder="0" allowfullscreen></iframe>
` &else=`
[[!If? &subject=`[[!getTypeGallery]]` &operand=`images` &then=`
<h1>Галерея изображений</h1>
<a href="[[!++site_url]]галерея.html">Открыть выбор галерей</a>
[[!GalleryAlbums? &toPlaceholder=`GalleryAlbums` &limit=`0` &albumCoverSort=`rank` &prominentOnly=`0` &rowTpl=`DemoGalAlbumRowTpl` &thumbWidth=`200` &thumbHeight=`200`]]
[[+GalleryAlbums]]
` &else=`
[[!If? &subject=`[[!getTypeGallery]]` &operand=`videos` &then=`
<h1>Галерея видео</h1>
<a href="[[!++site_url]]галерея.html">Открыть выбор галерей</a>
[[!getVideosAlbums]]
` &else=`
<h1>Главная галерея</h1>
[[$mainGallery]]
`]]
`]]
`]]
`]]
Прошу помочь как можно скорее. Комментарии: 7
Даже если бы это работало, выглядит просто ужасно. Вариантов для рефакторинга много, советую посмотреть в сторону Fenom.
Если я вижу использование сниппета IF — сразу делаю так
Уже давным-давно в Revolution есть нормальный шаблонизатор, решающий такие вопросы быстро и безболезненно. Но нет, мы будем вызывать корявые сниппеты.
Уже давным-давно в Revolution есть нормальный шаблонизатор, решающий такие вопросы быстро и безболезненно. Но нет, мы будем вызывать корявые сниппеты.
Плюс ко всему читаемость кода из-за этих корявых сниппетов резко падает, ровно как и производительность… Но, к сожалению, последнее время часто попадаются такие сайты, особенно когда заказчик решил сэкономить на разработчике.
Запомню, спасибо
Благодарю, совсем не давно начал писать на ModX, нашел первое что смог. Благодарен за совет
Вот чем чреват сниппет If: modx.pro/development/7162-example-fenom/#comment-50201
Есть такая проблема, что везде одни старые мануалы, и новички начинают с неактуальных вещей.
Мой совет — осваивай pdoTools, он позволяет делать очень много вещей (выводить меню, ресурсы, карту сайта, шаблонизатор и т.д.), а там и остальными разберёшься.
Мой совет — осваивай pdoTools, он позволяет делать очень много вещей (выводить меню, ресурсы, карту сайта, шаблонизатор и т.д.), а там и остальными разберёшься.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.