サポート » プラグイン » WP-Members(メンバーシップ):コメントの表示制御

  • お世話になります。

    WP-Members プラグインの「プロダクトを有効化する」をオンにして、メンバーシップ(仮にVIPとします)を設定しました。現在、サイトの登録ユーザーは12名おり、この中の3名にVIPメンバーシップを割り当て(有効化)しています。

    特定の投稿ページをVIPメンバーだけが閲覧できるようにし、それ以外の登録ユーザーには「このページは閲覧できません」と表示されるようにできました。
    ところが、そのページについたコメントがすべての登録ユーザーから見えてしまいます。
    (見えるだけで、VIPメンバー以外はコメントの投稿ができません)

    アクセス制限を設定したページは、コメントも含めてVIPメンバーしか見ることができないようにすることはできるでしょうか?

    WordPress 5.4.2
    PHP 7.4.1
    WP-Members 3.3.4.3

    お知恵を貸していただけましたらありがたいです。よろしくおねがいします。

1件の返信を表示中 - 1 - 1件目 (全1件中)
  • こんにちは

    下記のようなコードではどうでどうでしょう?

    テーマの functions.php:

    function my_wpmem_has_comment_access( $post_id ) {
    	// if ( ! function_exists( 'wpmem_user_has_access' ) ) { return false; }
    
    	// 投稿のプロダクトを取得する。
    	$post_products = get_post_meta( $post_id, '_wpmem_products', true );
    	if ( $post_products ) {
    		// ユーザーがプロダクトにアクセスできるかどうか。
    		if ( wpmem_user_has_access( $post_products ) ) {
    			$access = true;
    		} else {
    			$access = false;
    		}
    	} else {
    		// プロダクトなし。
    		$access = true;
    	}
    
    	return $access;
    }

    テンプレート:
    comments_template();

    if ( my_wpmem_has_comment_access( get_the_ID() ) ) {
    	comments_template();
    }
1件の返信を表示中 - 1 - 1件目 (全1件中)
  • トピック「WP-Members(メンバーシップ):コメントの表示制御」には新たに返信することはできません。