0

私がやろうとしているのは、小枝テンプレートを使用して、if ステートメントに基づいてマークアップを含める/削除することです。これは非常に単純に思えますが、私はPHP全体(および小枝)に非常に慣れていないため、なぜこれが機能しないのかわかりません...

{% set regions = ["en", "en-euw", "de", "es", "fr", "it", "en-eune", "pl", "ro", "el", "pt-br", "tr",      "ru", "mx" ] %}
{% if {{ locale.url_code }} is iterable %}
<p>lol bro</p>
{% endif %}

まず、{{ locale.url_code }} は配列内の言語コードの 1 つを出力しますが、配列にリストされているものよりも多くの言語コードがあります。

基本的に、適切な言語/地域コードを含む配列を設定しようとしています。{{ locale.url_code }} が「地域」配列内にある場合は、if ステートメントでマークアップを表示します。イテラブルがどのように機能するかは完全にはわかりません...しかし、それがこの機能を実現するための鍵になると思います。また、アレイを正しく設定しているかどうかも 100% 確信が持てません...

どんな助けや指示も大歓迎です。

ありがとう!

4

1 に答える 1

2

上記の回答は素晴らしい出発点でしたが、小枝テンプレート内で in_array を機能させることができませんでした。幸運なことに、いくつかの小枝のドキュメントをスキャンした後、奇妙なルビーのような構文で、必要なことを正確に実行できる包含演算子に関する規則を見つけました。以下の作業コードを参照してください。

{% set regions = ['en', 'en-euw', 'de', 'es', 'fr', 'it', 'en-eune', 'pl', 'ro', 'el', 'pt-br', 'tr', 'ru', 'mx' ] %}
{% if locale.url_code in regions %}
<p>lol bro</p>
{% endif %}

うまくいけば、これはこれを行う方法を探している人に役立ちます.

于 2013-06-03T22:41:12.453 に答える