**[[質問箱5/192]] [#r21cdd0a]
|RIGHT:70|LEFT:410|c
|~カテゴリ|セキュリティ・スパム・悪戯対策|
|~サマリ|コメントの名前にもNGワードを適応したい|
|~バージョン|1.5.0|
|~投稿者|[[とーげ]]|
|~状態|質問|
|~投稿日|&new{2015-08-23 (日) 21:23:31};|
***質問 [#pc70f347]
コメントの名前欄に特定の文字列(管理人など)が含まれていた場合、
別の文字列(警告文など)に置換したいです。


自分は凍結したページへのコメントで
default.ini.phpのユーザー定義ルールで指定したadmin=>管理人
といった風にするつもりなのですが、
ユーザー定義ルールに管理人を入れてしまうと他のページでも変換されてしまうので…

同じような内容の[[質問箱4/404]]を見て名前欄へのNGワードを試そうとしてみたのですが、知識が足らず上手くいきませんでした。

どのようにすれば実現できるか教えてほしいです。

***回答 [#q13f93b8]
- plugin/comment.inc.php を改造する方法が考えられます
 $_name = (! isset($vars['name']) || $vars['name'] == '') ? $_no_name : $vars['name'];
 $_name = ($_name == '') ? '' : str_replace('$name', $_name, PLUGIN_COMMENT_FORMAT_NAME);
の間に、
 $_name = (! isset($vars['name']) || $vars['name'] == '') ? $_no_name : $vars['name'];
 $_name = str_replace('管理人', '禁止名です', $_name);  // 警告文に置き換え
 $_name = str_replace('admin', '管理人', $_name);       // 管理人用の名前
 $_name = ($_name == '') ? '' : str_replace('$name', $_name, PLUGIN_COMMENT_FORMAT_NAME);
のように、プラグインの中で置き換えれば&commentフォームからの書き込みだけに反応します。
  --  &new{2015-08-24 (月) 04:20:44};

#comment

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.3+ © 2001-2020 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.044 sec.

OSDN