PowerCMS X Q&A

PowerCMS Xを用いてWebサイトを構築する際の技術的なヒントや解決策をご紹介します。

regex_replaceを使用すると「<mt:if>タグが閉じられていません」等のエラーが表示されてテンプレートが保存できません

regex_replaceで検索を行うパターンや置換文字列の指定に<>"を含めることはできません。これらの文字を含めるとテンプレートのパース時にエラーが発生して正しい解釈ができなくなるため、「<mt:if>タグが閉じられていません」等の意図しないエラーが発生する原因となります。

検索を行うパターンや置換文字列の指定に<>"を含めたい場合は、MTSetVarBlockで一旦変数に格納してregex_replaceの属性値に渡します。

<mt:setvarblock name="replace_pattern"><span>([^>]+)<\/span></mt:setvarblock>
<mt:entrytext regex_replace="'$replace_pattern',''\$1" />

関連するQ&A