2015-06-10 1 views
0

Я пытаюсь, чтобы expressionengine проверял поле канала для слова, и если это слово будет найдено, оно отобразит содержимое другого поля.ExpressioneEngine содержит оператор не работает

В этом случае я хочу, чтобы он искал {links-title} для слова «Добровольца», и если будет найдено слово «Волонтер», оно отобразит содержимое {links-branch}.

Вот код, который я пытаюсь использовать:

{exp:channel:entries channel="locations-links"} 
{if links-title *= "Volunteer"} 
{links-branch} 
{/if} 
{/exp:channel:entries} 

Эта страница: https://ellislab.com/expressionengine/user-guide/templates/conditionals.html#contains-operator говорит содержит оператор = но когда я использую его, страница отображается полностью пустым. Кажется, что этот оператор просто не работает. Если я использую ==, это работает, но в этом случае {link-title} должно быть «добровольцем» точно и ничего больше.

Кто-нибудь знает, что здесь происходит?

+0

"содержит" оператор был добавлен в [EE 2.9] (https://ellislab.com/expressionengine/user-guide/about/changelog.html#version-2-9-0) , Какую версию вы используете? – AllInOne

ответ

0

На самом деле ваш вопрос должен быть задан на expressionengine.stackexchange.com. В любом случае, какую версию EE вы используете? Обработка условностей сильно изменилась в более поздних версиях, и вы используете документы из последней версии EE. Если на вашем сайте не работает EE 2.10, лучше проконсультироваться с документами для используемой версии.

0

Иногда вам нужно поместить фигурные скобки вокруг имени переменной. Попробуйте это:

{exp:channel:entries channel="locations-links"} 
{if "{links-title}" *= "Volunteer"} 
{links-branch} 
{/if} 
{/exp:channel:entries} 
Смежные вопросы