Wordpress密码保护自定义帖子类型的存档和单个帖子

时间:2012-10-10 15:24:05

标签: wordpress password-protection custom-post-type

是否有一种简单的方法可以使用密码保护自定义帖子类型的存档和单个帖子?

我发现这篇文章是关于保护单个帖子的密码,但我仍然在归档循环中丢失了。我希望它只显示密码框,直到用户登录。

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

谢谢,

2 个答案:

答案 0 :(得分:4)

我发现快速密码保护存档的唯一方法是创建一个模板,该模板检索自定义帖子类型数据并将其与可以受密码保护的页面相关联。 http://codex.wordpress.org/Page_Templates

一旦该页面受密码保护,您就会找到帖子ID以将其应用于单个{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; ?>

这使您无需使用密码保护自定义帖子类型下的每个帖子。

答案 1 :(得分:1)

对于单个页面,您只需编辑single.php并添加以下内容:

<?php

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

?>

如果您提到自己使用的是自定义帖子类型或存档模板,则可以将上述方法应用于single-[custom-post-type-name].phparchive.php