WordPress コメントを会員にのみ表示するように設定する方法

WordPress サイトからログインユーザーのみコメントをつけられるように設定することができます。 コメントを会員のみ見ることができ、非会員、すなわち非ログインユーザーには隠したい場合があります。 その場合テーマファイルを直接変更したり、CSSを使用して、非ログインユーザーがコメントのリストを見ることができないように設定することができます。

WordPress コメントを会員にのみ表示できるように設定する方法(非ログインユーザーにコメントを非表示に)

WordPressでログインつまり会員のみコメントを付けられるようにするには、 WordPress 管理者ページ>設定>ディスカッションに移動し、 その他のコメントを設定 セクションの「ユーザーがコメントするには、登録してログインする必要があります。 オプションをチェックします。

WordPress コメント - 会員のみコメント作成できるように設定する

会員のみコメントのリストを見ることができるようにするオプションはありません。 会員のみコメントを見ることができようにして非会員(非ログインユーザー)が見ることができないようにしたい場合は、以下の二つの方法で可能です。

comments.phpファイルを変更する

テーマフォルダ内の comments.php ファイルを編集して、コメントの内容を会員にのみ表示するようにすることができます。

この作業をするには、まず、 チャイルドテーマを作成するようです。 チャイルドテーマ(子テーマ)を作成し作業しなければ、今後のテーマを更新すると、追加または変更が初期化されます。

元のテーマ(親テーマ)内 comments.php ファイルをPCにダウンロードした後、ダウンロードしたファイルをチャイルドテーマのフォルダにアップロードします。

次に comments.php ファイルを開いて、会員にのみ表示しようとする部分のすぐ上に次の行を追加します。

<?php if (is_user_logged_in()): ?>

そしてメンバーにのみ表示したい部分を見下に次の行を追加します。

<?php endif; ?>

例: Enfold テーマ

例えば、 Enfold(Enfold)テーマの場合 comments.php ファイルの次の部分を探します。

			<ol class="commentlist" id="comments">
				<?php
					/* Loop through and list the comments. Tell wp_list_comments()
					 * to use avia_inc_custom_comments() to format the comments.
					 * If you want to overload this in a child theme then you can
					 * define avia_framework_comment() and that will be used instead.
					 * See avia_framework_comment() in includes/loop-comments.php for more.
					 */
					wp_list_comments( array( 'type'=> 'comment', 'callback' => 'avia_inc_custom_comments' ) );
				?>
			</ol>

上記のコード部分のすぐ上と下に を追加します。

WordPress コメントを会員にのみ表示するように設定する方法

実際のコメントリストの部分は、テーマごとに少しずつ差があるが、通常 commentlist 또는 comment-listで検索して簡単に見つけることができるでしょう。

ほとんどのテーマで上記のような方法でコメント内の特定の部分を会員にのみ表示することができます。 しかし、場合によっては、うまくいかない場合もあります。 例えば、 Avada (Avada)テーマの特定のデモでは、上記の方法でできないことがあります。 Avada テーマでは、新しく導入されたレイアウトテンプレートを使用してコメント部分を制御できます(「Avada テーマのレイアウト(Layout)を使用して、サイトのすべてのセクションカスタムする"参照)。

カスタムCSSを使用する

簡単な方法でCSSコードを使用して非会員がコメントの一覧を表示することができないように隠すことができます。 通常、次のようなCSSコードが正常に動作しています。

/* WordPress 댓글 리스트를 로그인 ユーザー에게만 표시하기 */
/* How to hide comments to non logged users in WordPress */

.commentlist {
  display:none;
}

.logged-in .commentlist {
  display:inline;
}

このブログで使用された GeneratePress テーマの場合は、次のようなコードを使用することができます。

/* GeneratePress 테마에서 WordPress 댓글 목록을 회원에게만 표시하기 */
/* How to hide comments to non logged users in WordPress GeneratePress theme */

.comment-list {
  display:none;
}

.logged-in .comment-list {
  display:inline;
} 

コメントを非会員が見ることができないように非表示に特定の文にコメントが付いた場合、コメント数は表示されコメントの内容は表示されません。 次のようなコードをテーマ関数ファイルに追加して、ログインする必要がコメントを見ることができる内容のメッセージを出力することができます。

add_action( 'comment_form_before', 'my_pre_comment_text' );

function my_pre_comment_text() {
echo '<div class="mytext"><p>※댓글을 보려면 로그인하세요.</p></div>';
} 

もう少し精巧にするには、非ログインユーザーにのみ、上記のメッセージが表示されるよう、以下の条件を追加することができます。

if ( !is_user_logged_in()) { ... }

参照

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

2のコメント

  1. お問い合わせください
    ティートリーのブログを開始した任意の知識がなくて始めたこれまで WordPressブログコーチングれるでしょうか?

コメントを残す

*電子メール情報は公開されません。