サポート » プラグイン » WP-Members カスタム投稿の記事一覧などの対応について

  • 解決済 makintarou

    (@makintarou)


    下記内容でサイトを作成しております。

    • WordPress:5.3
    • 使用テーマ:BizVektorバージョン: 1.12.4
    • PHP 7.3

    カスタム投稿で、お知らせ会員用お知らせの2つ作成しています。

    お知らせは記事一覧ページと記事の個別ページがあり、会員用お知らせは一覧のみで、リンク先はすべてPDFが表示するので記事の個別はありません。

    会員用お知らせを閲覧する際にログイン画面を表示するために、プラグインWP-Membersを使用しています。ログイン(サイトURL/login)の固定ページを作成しています。

    投稿、固定ページの内容をブロックは「ブロックしない」に、「WP-Members の設定に追加」の会員用のお知らせにチェックをして、内容をブロックしています。

    この設定の場合、記事の個別ページはログインを求められますが、記事一覧や年別アーカイブなどはそのまま表示しています。記事一覧や年別アーカイブなどのページ表示の際もログイン画面を表示するために下記内容をfunction.phpに記載しました。

    function un_logged_in_user_redirect() {
        if( ! is_user_logged_in() && is_single() || is_archive() || is_singular( 'カスタム投稿 会員用お知らせ' ) ) {
            wp_redirect( '/rm-login' );//
            exit();
        }
    }
    add_action( 'template_redirect',  'un_logged_in_user_redirect' );

    上記内容で、会員用お知らせの一覧や年別アーカイブなどログインページに移動しログイン画面を表示するのですが、別の問題と疑問が発生しました。

    1. ログインページに移動するようにはなったが、ログイン後、会員用お知らせ一覧などのページに移動しようとすると、リダイレクトでログインページに戻される
    2. ログイン後、元のページ記事一覧からログインしたなら記事一覧へもどる方法はないだろうか
    3. 会員用お知らせのみにしたつもりだが、もう一つのカスタム投稿お知らせまでログインページに移動してしまう

    以上の問題を解決する方法がありましたら、教えていただけますでしょうか。
    よろしくお願いいたします。

    • このトピックはmakintarouが4年、 4ヶ月前に変更しました。
4件の返信を表示中 - 1 - 4件目 (全4件中)
  • こんにちは

    1.

    演算子の優先順位ではないでしょうか。

    if( ! is_user_logged_in() && ( is_single() || is_archive() || is_singular( 'カスタム投稿 会員用お知らせ' ) ) ) {

    参考ページ: https://www.php.net/manual/ja/language.operators.precedence.php

    2.

    wp_redirect( '/rm-login' );//

    wp_redirect( '/rm-login?redirect_to=' . esc_url( $_SERVER["REQUEST_URI"] ) );

    3.

    if( ! is_user_logged_in() && is_single() || is_archive() || is_singular( 'カスタム投稿 会員用お知らせ' ) ) {

    if ( ! is_user_logged_in() && ( is_post_type_archive( 'カスタム投稿 会員用お知らせ' ) || is_singular( 'カスタム投稿 会員用お知らせ' ) ) ) {

    ではどうでしょうか?

    トピック投稿者 makintarou

    (@makintarou)

    ありがとうございました。

    教えていただいた内容で、お知らせはログイン画面にならず、会員用お知らせのみログイン画面になり、ユーザー名とパスワード入力後、アクセスしたページに移動するようにできました。

    本当にありがとうございました。

    解決したらトピックのステータスを「解決済み」に変更しておいてくださいね。
    https://ja.wordpress.org/support/topic/質問ルール/

    トピック投稿者 makintarou

    (@makintarou)

    すいません。

    解決済みに変更しました。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「WP-Members カスタム投稿の記事一覧などの対応について」には新たに返信することはできません。