4

カスタム投稿タイプのアーカイブと単一の投稿をパスワードで保護する簡単な方法はありますか?

単一の投稿を保護するパスワードに関するこの記事を見つけましたが、アーカイブループでまだ失われています. ユーザーがログインするまで、パスワードボックスのみを表示したいと思います。

https://wordpress.stackexchange.com/questions/4952/forcing-all-posts-associated-with-a-custom-post-type-to-be-private

ありがとう、

4

2 に答える 2

7

アーカイブをパスワードで保護する唯一の方法は、カスタム投稿タイプのデータを取得するテンプレートを作成し、それをパスワードで保護できるページに関連付けることです。 http://codex.wordpress.org/Page_Templates

そのページがパスワードで保護されたら、投稿 ID を見つけて、次のように single-{your_custom_post_type}.php に適用します。

<?php
if ( !post_password_required('{protected_post_id}') ) : ?>

//protected content here

<?php else:
    //show the password form of the protected page
    echo get_the_password_form('{protected_post_id}');                 

endif; ?>

これにより、カスタム投稿タイプのすべての投稿をパスワードで保護する必要がなくなります。

于 2014-11-18T21:50:04.243 に答える
2

single.php単一のページの場合、次の行に沿って何かを編集して追加するだけです。

<?php

if ( is_user_logged_in() ) {
  // Show Post to Logged in User
} 
else {
  //Show password field
}

?>

あなたが言及したように、カスタム投稿タイプまたはアーカイブテンプレートを使用している場合は、上記と同じ方法を適用できますsingle-[custom-post-type-name].phpまたはarchive.php

于 2014-05-17T14:40:33.013 に答える