有一些用WordPress建站的朋友,希望网站上某些内容不公开,仅对授权人士开放,这是可以实现的。
不少朋友已经知道在WordPress网站里,可以对某篇文章设置密码查看。但如果想加密多篇文章/或者某一类甚至多类文章呢?很显然,文章一多,逐篇文章去设置密码不现实。如何解决?请看下面的解决方案,不用安装任何插件。
直接将如下代码添加到function.php中:
function protect_category_posts_with_password() {$protected_category_id = 5; // 将数字5改成你的 category ID$password = 'your-password'; // 换成你的密码if (is_single() && has_term($protected_category_id, 'category')) {if (!isset($_POST['post_password']) || $_POST['post_password'] !== $password) {echo '<form method="POST" action=""><label for="post_password">Enter the password to view this post:</label><input type="password" name="post_password" id="post_password" required><input type="submit" value="Submit"></form>';exit;}}}add_action('template_redirect', 'protect_category_posts_with_password');
之后再查看这个分类下的文章时,就会要求输入密码了。即使是网站注册用户查看这些加密文章,也要输入密码。
有的朋友可能还需要将这个功能拓得更深,比如让管理员或编辑权限登录网站后,不必输入密码就能查看这些文章;又或者是让已输入过密码的用户在一定时间内再读该类别下的其他文章,不用再次输入密码...都是可以做到的。为此文付费的朋友,我将会给到对应代码。
“ 你为我的专业而付费,你的客户也会为你的专业买单 ”
- 往期内容

