Отображение изображений в PyroCMS в зависимости от его {{ name }}-тега

Мне нужно отобразить некоторые изображения из папки в зависимости от ее {{ name }}.

Имена моих файлов выглядят так:

  • foo.jpg
  • foo_blur.jpg
  • бар.png
  • bar_blur.png

Теперь мне нужно что-то сделать с размытым-изображением. Это то, что я пробовал, но безуспешно:

{{ files:listing folder='1' }}
    {{ if { helper:strpos haystack='[[ name ]]' needle='_blur' } }}
        {{ files:image id='{{ id }}' }}
    {{ endif }}
{{ /files:listing }}

В настоящее время он просто ничего не делает. Кажется, что strpos всегда возвращает false. Любые идеи, что я делаю неправильно?


person yckart    schedule 24.09.2013    source источник


Ответы (2)


Вы должны использовать те же фигурные скобки для переменной name, что и для id:

{{ files:listing folder='1' }}
    {{ if { helper:strpos haystack='{{ name }}' needle='_blur' } }}
        {{ files:image id='{{ id }}' }}
    {{ endif }}
{{ /files:listing }}
person ljs.dev    schedule 24.09.2013
comment
Пробовал уже, это приводит к ошибке синтаксического анализа: You have a syntax error in your Lex tags. - person yckart; 25.09.2013

Получил сам, благодаря Леону Стаффорду:

Просто удалите квадратные скобки [[ ]] и окружающие его quotes.

{{ files:listing folder='1' }}
    {{ if { helper:strpos haystack=name needle='_blur' } }}
        {{ files:image id='{{ id }}' }}
    {{ endif }}
{{ /files:listing }}
person yckart    schedule 24.09.2013
comment
нет, спасибо мне, мое решение было неверным. но рад, что у вас получилось :) - person ljs.dev; 25.09.2013