twig/wordpress 检查值是否在数组中

Jus*_*ney 0 wordpress twig timber

我正在测试我的树枝模板中的数组中是否存在一个值

<input type="hidden" name="s" value="{{ search_value }}">
  <label>
    <input type="checkbox"  
           name="cat[]" 
           value="3" 
           onchange="this.form.submit()"
           {% if 3 in cat  ? ' checked' : '' %} >
    <span>cbd</span>
  </label>
  {{ cat }}
Run Code Online (Sandbox Code Playgroud)

{{ cat }}在页面上的转储数组,我确定我的问题是一个愚蠢的语法错误。我得到的错误是

致命错误:未捕获的异常:模板意外结束。在....

如果我以这种方式包装,我会得到一个不同的错误

 {% (if 3 in cat)  ? ' checked' : '' %} >
Fatal error: Uncaught Exception: A block must start with a tag name.
Run Code Online (Sandbox Code Playgroud)

Yos*_*shi 5

使用适当的如果

{% if 3 in cat %}checked{% endif %}
Run Code Online (Sandbox Code Playgroud)

三元(搜索“三元运算符”):

{{ 3 in cat ? ' checked' : '' }}
Run Code Online (Sandbox Code Playgroud)

或缩短的三元:

{{ 3 in cat ? ' checked' }}
Run Code Online (Sandbox Code Playgroud)