WordPress コメントフォームを簡潔にする

WordPress ブログを運営される方が、訪問者が電子メールフィールドのために不便してコメントをつけないとね。 私も、他のサイトに電子メールなどの情報を入力する手間をかけますのでコメントをよくつけなくなるようです。

これにより、電子メールフィールドをなくせばコメントがたくさん走るでしょうか? 期待ほど増加するようではないが、コメントフォームに入力した情報を最小化すると、若干のコメント増加は期待できそうです。 現在 WordPress コメントフォームには、次のように、名前フィールド、電子メールフィールド、ウェブサイトフィールド、および[Save my name, email, and website in this browser for the next time I comment]チェックボックスが表示されます。

WordPress コメントフォーム

「Save my name...」の部分はハングル版で「後で名前、電子メールアドレス、ウェブサイトのアドレスをこのブラウザに保存する「または」次回のコメント作成のために、このブラウザに名前、電子メール、およびウェブサイトを保存します「に翻訳して表示することができます。

WordPress コメントフォームを簡潔にする(シンプルなコメントフォーム)

電子メールフィールドとウェブサイトフィールドを削除する方法を昨年このブログで取り上げたことがあり、「Save my name, email, and website in this browser for the next time I comment」のフレーズを削除する方法は数日前に説明したことがあります。

訪問者がコメントして「ウェブサイト」フィールドに実際のウェブサイトのアドレスを入力すると、SEO(検索エンジン最適化)にも役立ちます。 特に、訪問者が多くのサイトにコメントして自分のホームページのURLを入力すると、他の訪問者がコメントを読みながらホームページのアドレスをクリックして自分のサイトに流入する可能性があります。

コメントフォームからコメント欄と名前を除くすべてのフィールドを削除したい場合は、まず WordPress 管理者ページで 設定>ディスカッションに移動して、「コメントを書いた人の名前と電子メールを必ず残す必要があります」のチェックを外すようにします。

WordPress コメント名前フィールドと電子メールフィールドの選択フィールドに置換

次にテーマの関数ファイル(チャイルドテーマの使用)に、次のコードを追加します。

// '다음 번 댓글 작성을 위해 이 브라우저에 이름, 이메일, 그리고 웹사이트를 저장합니다' 문구 제거
// Remove the phrase 'Save my name, email, and website in this browser for the next time I comment'

add_filter( 'comment_form_default_fields', 'tu_comment_form_hide_cookies_consent' );
function tu_comment_form_hide_cookies_consent( $fields ) {
 unset( $fields['cookies'] );
 return $fields;
}

// 웹사이트 필드 제거, Remove Website field
function disable_website_field($fields)
{
if(isset($fields['url']))
unset($fields['url']);
return $fields;
}

add_filter('comment_form_default_fields', 'disable_website_field');

// 이메일 필드 제거, Remove Email field
function my_remove_email_field_from_comment_form($fields) {
if(isset($fields['email'])) unset($fields['email']);
return $fields;
}
add_filter('comment_form_default_fields', 'my_remove_email_field_from_comment_form');

これにより、次の図のようにコメント入力フィールドと名前フィールドのみが残ります。

WordPress コメントフォーム

この状態でテストすると、コメントシステムはうまく機能しますが、問題は名前フィールドが必須ではないため、訪問者が名前を入力せずに「入力」をクリックしてもコメントが正常に公開されることです。 この問題を解決するには、次のコードをテーマ関数ファイルに追加して、名前フィールドを必須フィールドにするようにします。

// 이름 필드를 필수로 만들기, Make the Name field required
function require_comment_name($fields) {
 
if ($fields['comment_author'] == '')
wp_die('Error: please enter a valid name.');
 
return $fields;
}
add_filter('preprocess_comment', 'require_comment_name');

今テストする必要に応じてコメントシステムが機能しています。 Newspaper テーマでテストしてみるとうまく動作することを確認しました。 参考までに、上記のコードを入れる代わりにテーマフォルダ内のコメントテンプレートファイル(comments.php)から直接対応するフィールドを削除することも可能です。 この場合、チャイルドテーマを作成作業と今後のテーマが更新されても、変更が維持されます。

Newspaper テーマの場合、最近更新され、テーマのすべての機能がtagDiv Composerに移動しました。

したがって Newspaperでチャイルドテーマが正しく動作せず、tagDiv Composerプラグインフォルダ内のファイルを探して修正する必要があります。 例えばコメントテンプレートファイルのパスは、 / WP-コンテンツ/plugins/td-composer/legacy/common/wp_booster/comments.phpです。 このファイルでは、次のコードを検索して削除するとコメント欄とメールフィールドのみが残ります。

		        'email'  =>

			        '<div class="comment-form-input-wrap td-form-email">

			            <input class="" id="email" name="email" placeholder="' . __td('Email:', TD_THEME_NAME) . ( $req ? '*' : '' ) . '" type="text" value="' . esc_attr(  $commenter['comment_author_email'] ) . '" size="30" ' . $aria_req . ' />

			            <div class="td-warning-email-error">' . __td('You have entered an incorrect email address!', TD_THEME_NAME) . '</div>

			            <div class="td-warning-email">' . __td('Please enter your email address here', TD_THEME_NAME) . '</div>

			         </div>',



		        'url' =>

			        '<div class="comment-form-input-wrap td-form-url">

			            <input class="" id="url" name="url" placeholder="' . __td('Website:', TD_THEME_NAME) . '" type="text" value="' . esc_attr( $commenter['comment_author_url'] ) . '" size="30" />

                     </div>',

                'cookies' => '<p class="comment-form-cookies-consent"><input id="wp-comment-cookies-consent" name="wp-comment-cookies-consent" type="checkbox" value="yes"' . $consent . ' />' .

                    '<label for="wp-comment-cookies-consent">' . __td( 'Save my name, email, and website in this browser for the next time I comment.' ) . '</label></p>',

個人的には今後の参考するためのコードとファイルのパスをここに記載します。 この方法を使用すると、tagDiv Composerプラグインが更新されるたびに、この部分を検索して削除ヘジュオヤので好ましくありません。

最後に、

テストで、このブログのコメントフォームから電子メールフィールドとウェブサイトフィールド、そしてコメントクッキーのフレーズ(「Save my name...」)の両方を削除してみました。 これらのフィールドを削除しても、コメントがいつもよりも走りにくくなります。 有意な結果を得るためには、一定期間観察する必要がありますが、短期的には違いはありませんでした。

私のブログには、コメントが結構走る方だが、最近になって、目に見えて減っています。 何のコメントも多くのコメントお願いします。 (しかし、悪質な書き込みは止揚していただければ幸いです。笑)

アップデート

GeneratePress テーマを使用している場合」GeneratePress テーマコメントセクションレイアウトを変更する「を参照して、この記事のコメントセクションと同様にレイアウトを変更できます。

メモ:

一部の記事にはアフィリエイトリンクが含まれている場合があり、パートナーの活動で一定額の手数料を受け取ることがあります。

20のコメント

  1. こんにちは!投稿にコメントだけを残すとGoogleサーチコンソール > 改善事項 > ディスカッションフォーラム > 項目表示改善に問題が発生します。サイト運営にクリティカルなものではありませんが、改善したいと思います。一度見ていただけますか?

    スキーマが問題だと思います。

    ホームページの住所は下です。
    https://mooders.co.kr/hyundai-mobis-part/

    問題1番
    'Comment' オブジェクトは 'CreativeWork' オブジェクト内にネストする必要があります。

    問題2番
    「URL」フィールドがありません(パス:「author」)

    問題になるところのhtmlを上げたいのですが、入力できませんねㅜㅜ

    1. こんにちは、キム・チョルハン。

      次の記事では、「Comment」オブジェクトは「CreativeWork」オブジェクト内にネストする必要があります。問題の解決策が説明されています。

      https://yellowit.co.kr/%EA%B2%80%EC%83%89%EC%97%94%EC%A7%84-%EC%B5%9C%EC%A0%81%ED%99%94/%EC%9B%8C%EB%93%9C%ED%94%84%EB%A0%88%EC%8A%A4-%EA%B5%AC%EA%B8%80-%EC%84%9C%EC%B9%98%EC%BD%98%EC%86%94-comment-%EA%B0%9D%EC%B2%B4-creativework-%EC%A4%91%EC%B2%A9%EC%98%A4%EB%A5%98/

      'url'フィールドがありません(パス: 'author')問題も同様にスキーママークアッププラグインを使用して解決できるようです。

      あまり重要な問題ではないので無視しても問題はありませんが、解決したい場合はスキーママークアッププラグインをインストールして設定することを検討してください。

    1. コメントEメールフィールドとWebサイトフィールドを削除し、IPアドレスを保存しないように変更しました。

  2. こんにちは。 ワード様〜
    コンテンツの一番下のコメント入力ウィンドウでtextareaの高さを減らしたいです。
    開発者ツールを見ると、以下のようになりますが、rowを3に変更したい場合はどこで変更できますか?
    comment.phpファイルに関連内容が見つかりませんでした。

  3. テーマは OceanWPで使用中でテーマファイルエディタにある functions.php に入り、一番下に書いたが適用できないのに、もしかしたら詳しく説明できるでしょうか?

    初心者だからこそ難しいです。

    1. 上記の方法は他のテーマでも機能するようです。 時間になると WordPress OceanWP テーマで動作するかどうかを一度試してみましょう。 (いつ可能なのか正確に言うことはできませんが、To doリストに載せます。)

  4. テーマの関数ファイル functions.php の一番下に行ったのですが。 OceanWP テーマを使用していますが、もし解決方法を知っていますか?

  5. こんにちは、記事よく読みました。 私も Newspaper テーマを使用したか二、三ヶ月余りなってあれこれ機能を追加していますが、このブログのようにコメントインタフェースをハングルで出力するためにはどうすればいいですか?

    私 WordPress コメントメインフォームを利用しているが、インターフェースが英語のみ出て修正する部分を見つけることができないですね。

      1. すべてのフレーズを翻訳する必要はなく、必要な部分だけ翻訳となります。笑

        楽しい一週間過ごしてください。

  6. WordPress ブログ始めて間もない新入です。 ブログ見回すと読む価値文が本当に多いですね!
    本文の機能もとても興味深いが、肯定的な結果がついてこなかったなんて惜しいですねㅠㅠ

    確かにコメントを残すの方はメールフォームがかどう大きく拘らずコメントをナムギナます。

    1. ブログを訪問していただきありがとうございます。

      コメントフォームからメールフィールドをなくせば、より簡単にコメントを残すことができ、コメントが増加すると予想されたが、実際にはそうでなかった。〓〓

      WordPressと関連して気になる点がある場合はコメントに残してください。 その後、知っている範囲で回答させように努力します。

  7. 私もこのように簡単にしてみたいが、どうしてもリンクがある場合、より頻繁に見つかると思います。
    ピョンハギヌンこれはるかに良いようです。

    1. もう少しテストしてみコメントが有意に増加していない場合、再前の状態に戻す予定です。

      現時点で電子メールのフィールドとウェブサイトのフィールドを処分したしてコメントが増加ませんね。

コメントを残す

メールアドレスは公開されません。 必須フィールドは *と表示されます