ModX Revo — Проверка на пустое значение TV MIGx

У меня на одном из интернет-магазинов галерея фотографий товара сделана с помощью компонента MIGx. Сделано удобно, поддерживается мультизагрузка фотографий, для каждого товара автоматически создается папочка по номеру его ID под фотки.

Выводятся фотографии с помощью сниппета getImageList. Все здорово, работает за исключением тех случаев, когда фотографии к товару не загружены. В таком случае просто ничего не выводится и с этим можно смириться, если верстка страницы при этом не ломается. Либо поправить верстку, чтобы не ломалась. Но мне присра захотелось, чтобы при отсутствии фотографий выдавалась заглушка nofoto.jpg. И сразу скажу, привычных темплейтов для вывода при отсутствии результата выборки сниппета getImageList не предусмотрено. В русскоязычном интернете я тоже не нашел решения. Пришлось обратиться к буржунету.

Там нашлось решение, от разработчика этого компонента Bruno17, основаное на phx (который в REVO идет «из коробки», и всю логику шаблонов удобно делать с помощью него) такое:

Т.е. надо использовать вывод результата работы сниппета getImageList через плейсхолдер, который мы перед выводом проверяем на пустоту.

Вероятно способ рабочий, но у меня не заработало (вернее оно работало, но не правильно, с глюками), вероятно т.к. я вызов этого сниппета делал из под работы getProducts обернутого в pdoPage для пагинации товаров.

Тогда стал искать решение дальше. И нашел его. Оказывается любому сниппету можно через phx добавит значение по умолчанию. В моем случае решение такое:

 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *