2017-05-29 9 views
0

私が取り組んでいるWordpressのプラグインは、Twigのテンプレート言語を使用しています。twigとwordpress sanitize &二度

カテゴリのリストをテンプレートに出力したいと考えています。私は各用語出力したい、小枝テンプレートで

$terms = get_terms('groups');

:私はそうのようなWPのデータベースからそれらを得る

{% for term in terms %} 
    <a href="{{ term.slug }}">{{ term.name }}</a> 
{% endfor %} 

問題がある、私のterm.name Sの1は「HIVあります& AIDS 'となり、get_terms()とTwigの両方によって消毒され、結果として「HIV & amp;エイズ'。

私はget_terms()段階の後に、それをきれいにpreg_replaceを使用して試してみた:

for($i = 0; $i < count($terms); $i++) 
{ 
    $terms[$i].name = preg_replace('/amp;/', '', $terms[$i]); 
} 

ページ上の用語のひとつのセットがあるとき、これはOKですが、実際に私が持っている他のいくつかの場所がありますページの見出しやページの内容に複数回などの用語を表示します。

WordpressとTwigが&(アンパサンド)文字を2回消毒するのを防ぐ「正しい方法」がありますか?

おかげ

答えて

0

あなたが小枝にあるような値を表示したい場合は、あなたはrawフィルタを使用することができます。デフォルトのすべての値はエスケープされます。

{{ term.name|raw }} 

参照:Twig raw filter

+0

のAch!もっと簡単に - ありがとう:) –