我在这个主题上找到的每一篇文章和帮助文档都集中在WordPress的内置功能上,使用页面->可见性设置,这对于真正的页面保护来说是非常有限和无用的。
我希望员工在我使用Profile Press完成的用户中注册他们自己的个人登录,登录时,我可以将他们重定向到特定页面-很简单。
问题首先出现在人们试图直接访问受保护的页面时,以便解决此问题:
我复制了Page Template
并将其重命名Protected Page Template
我添加了一些代码functions.php
:
function check_is_logged_in( ) {
global $post;
if ( !is_user_logged_in () && get_page_template_slug($post->ID)==\'page-protected.php\' ) :
wp_redirect( home_url().\'/log-in/\', 302 );
exit;
endif;
}
add_action( \'get_header\', \'check_is_logged_in\' );
这部分解决了我的问题,因此,如果有人试图直接访问页面,他们会被重定向,现在,我只需将页面模板设置为
Protected Page Template
- 固定的
但是
现在我已经安装了PressApps知识库插件,我希望它也有密码保护,但是,get\\u page\\u template\\u slug()返回empty
不包括在内。
我是否可以使用和测试其他值来标识页面模板或页面类型?