OpenPNE設定についてat PHP
OpenPNE設定について - 暇つぶし2ch581:nobodyさん
08/02/09 01:29:55
>>580
>テンプレートもしくはSmarty周りをいじる
とりあえずなら、Smartyの構文を利用することで対応できるでしょうか?

Smartyのreplaceというオプションを使えば、実体参照(HTMLで特殊文字を記述するための符号)としてエスケープされている文字を、元の文字に戻すことができるはずです。
つまり、HTMLタグを有効にできるはずです。

/webapp/modules/pc/templates/fh_diary.tplを
/webapp_ext/modules/pc/templates/fh_diary.tplにコピーして
458行目の日記本文の出力部分を変更してみてください。

変更前:({$target_diary.body|nl2br|t_url2cmd:'diary'|t_cmd:'diary'})

変更後:({$target_diary.body|nl2br|t_url2cmd:'diary'|t_cmd:'diary'|replace:"<":"<"|replace:">":">"|replace:""":"\""})
= < を < に置換する+ > を > に置換する + " を " に置換するという処理を追加

(参考)置換する文字列について、replace修正子は正規表現が使えませんが、regex_replace修正子なら正規表現が使えます。

Smarty マニュアル - replace修正子
URLリンク(sunset.freespace.jp)

Smarty マニュアル - regex_replace修正子
URLリンク(sunset.freespace.jp)

テンプレートファイルの変更で対応できない場合は、SmartyでassignしているOpenPNEの共通処理部分を修正する必要があるかと思われます。
いずれにせよ、本来HTMLタグが使用できないようになっているOpenPNEの日記で、HTMLタグを有効にする場合はXSS対策にも気をつけた方が良いと思われます。
(=JavaScriptのコードが動作しないようにチェックする)

…うまくいったら、結果を報告していただけると参考になります。(^^)v


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch