[WordPress]コメントでHTMLを無効にする

Last Updated:2023年12月17日| | コメントを残す

WordPressのコメントフォームに見れば」次のHTMLタグと属性を使用できます。「のような案内フレーズが出てきます。 WordPressのコメントシステムには、いくつかのHTMLタグを使用することができます。

[WordPress]コメントでHTMLを無効にする

個人的にも WordPress サイトから「 ... 「タグをたくさん使う方ですが、スパマーがこのようなタグを使ってコメントをたくさん持っている場合や、このようなタグの使用を禁止したい場合があります。

HTMLタグが有効な場合、コードスニペット(Code snippet)を追加すると、正常に追加されません。 以前のテーマでは、Niceditというエディタをコメントフォームに接続させて、コードスニペットを簡単に追加できるようにしました(参照).

このエディタもそれなり大丈夫なようです。 基本エディタの代わりに CKeditorを使用しても、さまざまな機能を実装することができます。

WordPress コメントにHTMLタグを使用しないように設定する

今回は基本的な WordPress コメントエディタを使用することにし、代わりにHTMLを無効にしました。 コメントにHTMLを使用できないようにするには、次の関数を使用します。

//コメントが投稿されたときの動作
function plc_comment_post( $incoming_comment ) {
//コメントのすべてを文字通り表示
$incoming_comment['comment_content'] = htmlspecialchars($incoming_comment['comment_content']);
//一重引用符を除外 - WordPressでスパムとしてマークしています。
$incoming_comment['comment_content'] = str_replace( "'", ''', $incoming_comment['comment_content'] );
return($ incoming_comment);
}
//コメントが表示された後に動作
function plc_comment_display( $comment_to_display ) {
// Put the single quotes back in
$comment_to_display = str_replace( ''', "'", $comment_to_display );
return $comment_to_display;
}

今のHTMLコードをコメントに追加する無視されます。

HTMLコードがそのままコメントに表示されるようにする

実は私は、HTMLコードがそのままコメントに表示されることを望んでいる。 上記の方法の代わりに、次のフィルタを WordPress 関数ファイルに追加すると、HTMLタグが動作していませんが、文字通り表示されます。

add_filter( 'comment_text'、 'wp_filter_nohtml_kses');
add_filter( 'comment_text_rss'、 'wp_filter_nohtml_kses');
add_filter( 'comment_excerpt'、 'wp_filter_nohtml_kses');
// Source: stackoverflowの

しかし、コメントを承認して発行した場合、正常に動作していないようです。 時間が飛ぶときの方法を探さなければならないようです。 まず <>を使用して<...>を表示できます。

メモ:


コメントを残す

コメント