特定のhtmlタグを通過させるために、defaultのようにphp smartyでstrip_tagsを使用する方法はありますか?
stip_tags($a.message,'<p><div>');
smarty に相当するものは何ですか?
{$a.message|strip_tags}
私は少し遅れていることを知っていますが、これを行う必要があり、Smarty プラグインを書きたくない人のために:
Smarty では、このように PHP からメソッドを「借用」できます。
それ以外の:
{$a.message|strip_tags}
使用する
{strip_tags($a.message,"<br><div>") nofilter}
注:設定した場合は、 nofilter引数のみが必要です。$smarty->escape_html = true;
私は Smarty 2.6.26 を使用してstrip_tags
おり、保持するタグを指定する引数を使用しています。
これを試して:
PHP:
$string = "<b>not bold</b><iframe>iframe goes away</frame> <p>paragraphed</p>
<div style='color:green'>div kept.</div>";
$smarty->assign('string', $string);
テンプレートでは:
{$string|strip_tags:"<p><div>"}
<p>
削除され<div>
ません。
ドキュメントによると、保持するタグを指定することはできません。ただし、自分用のプラグインを簡単に作成できます: http://www.smarty.net/docs/en/plugins.writing.tpl