WordPressですべての新しいコメントをごみ箱に移動する(カスタムコード)

Last Updated: 2025 年 03 月 25 日 댓글

この WordPress ブログには通常のコメントも時々走りますが、スパムコメントがたくさん走っていくつかの方法でスパムコメントに対応してきました。

  1. コメントの長さが短すぎるか長すぎる場合、コメントが実行されないようにコードを追加する
  2. すべての新しいコメントをゴミ箱に移動し、通常のコメントのみを復元し、残りのスパムコメントはすべて完全に削除します

しかし、 クラウドウェイズのBreezeプラグインでコメントステータスをチェックするコードにコメントをゴミ箱に移動させる場合を考慮せず、訪問者がコメントを登録すると致命的なエラーが発生する問題が発生しています。この問題を回避するために、単純なコードを作成してチャイルドテーマの関数ファイルに追加しました。

WordPressですべての新しいコメントをゴミ箱に移動する

この WordPress ブログで実行されている多くのスパムコメントは、コメントの内容が1〜2語で短くなったり、一部のコメントは逆に長すぎる場合があります。コメントが長すぎる場合は削除するのが面倒です。

だから私は、現在のコメントの単語数が5単語未満または250単語以上の場合、コメントが走らないようにコードを追加しました。

WordPress コメント単語数制限

このようにコメントの長さを制限すると、スパムコメントが大幅に短縮されるようです。

そして、通常のコメントは1日2~100件程度ですが、スパムコメントはXNUMX日XNUMX件以上が走るので、私はすべての新規コメントがゴミ箱に移動するように設定し、正常なコメントだけを復元した後、残りのコメントはすべて削除する方法で対処しています。

WordPress 通知パネル»設定»ディスカッション»許可されていないコメントキーワードから 点(.)と入力すると、新しいランニングコメントがすべてごみ箱に移動されます。

WordPress すべてのコメントをごみ箱に移動

Akismetなどのようなプラグインを使うよりもこの方法が個人的に便利で利用していましたが、 クラウドウェイズのキャッシュプラグインであるBreezeが更新され、この方法でコメントをごみ箱に送信すると、致命的なエラーが発生しました。

クラウドウェイズにライブチャットでカスタマーセンターに連絡し、すぐに問題を解決しました。どうやって解決したのか尋ねると、Breezeプラグインのpurge-cache.phpファイルを修正したという答えが聞こえました。

Please be informed that the issue was resolved by making some changes in the code of the breeze plugin, in file wp-content/plugins/breeze/inc/cache/purge-cache.php. Rest assured, the issue has been resolved now.

しかし、Breezeプラグインが更新されると、修正されたファイルがBreezeプラグインファイルに置き換えられ、問題が再び発生しました。

改訂されたpurge-cache.phpファイルに置き換えることで問題は解決しましたが、Breezeプラグインが更新されるたびにファイルを変更するのは面倒すぎるように見えるため、単純なコードでプラグインを作成して追加して一時的に問題を解決しました。

// 비로그인 ユーザー의 댓글을 휴지통으로 이동시키는 함수
function move_non_logged_in_comments_to_trash( $comment_id ) {
    // ユーザー가 로그인하지 않은 경우
    if ( ! is_user_logged_in() ) {
        // 댓글을 휴지통으로 이동
        wp_trash_comment( $comment_id );
    }
}

// 댓글이 제출될 때 함수를 실행하도록 후크에 연결
add_action( 'comment_post', 'move_non_logged_in_comments_to_trash' );

上記のようなコードを チャイルドテーマの関数ファイルに追加すると、非ログインユーザー(ゲスト)が送信したすべての新しいコメントがごみ箱に移動されます。

上記のコードをクラウドウェイズの担当者に送信してレビューをリクエストしたので、ログインユーザーと非ログインユーザーの両方に適用されるようにコードを変更することを提案しました。

function move_all_comments_to_trash( $comment_id ) { 
    wp_trash_comment( $comment_id ); 
} 

add_action( 'comment_post', 'move_all_comments_to_trash' );

状況によっては、これら2つのコードのいずれかを子テーマ(サブテーマ)の関数ファイル(functions.php)に追加すると、すべての新しいコメントがゴミ箱に移動されます。

もしクラウドウェイズのBreezeプラグインを使っていて、すべての新規コメントをゴミ箱に移動させたい場合 設定 » ディスカッションの "許可しないコメントキーワード「機能を使用する代わりに、上記のコードを使用しても致命的なエラーが発生する問題はありません。

今後Breezeプラグインで致命的なエラーが発生する問題を修正するように更新された場合は、この記事に記載されているコードを削除することができます。

最後に、

WordPress サイトの訪問者が増えると、スパムコメントも一緒に増加します。過去には主に英語、日本語、中国語など外国語でのコメントが多かったのですが、最近ではハングルでのコメントも増加しています。

特に、このブログには食べ物の確認に関する韓国語のコメントが着実に走っています。 먹튀 被害を防ぐ最も確実な方法…こんなコメントです。違法なサイトを宣伝するコメントのようです。

参照

ワードクラッカーのアバター画像

ワードクラッカー

プロの英国翻訳家。 WordPress 愛好家。 Naver カフェ 「ワープ社」 操作。

コメントを残す

コメント

カカオトーク相談 カトクサービス相談