当查看任何页面时,我需要确保用户ID在自定义数据库表中,如果该ID不存在,我想将用户注销,不允许他查看任何内容。我还想在登录页面上显示一条自定义消息,说“您无权查看此博客。”
我尝试使用某些wp logout / redirect函数执行此操作,但我希望在wp站点的所有页面上都自动执行此操作。此外,我不知道如何将自定义消息发送到登录页面。我想我可以设置一个POST值或类似的东西,并修改登录页面以检查该值是否存在。
任何有关如何正确的帮助或提示将不胜感激。
答案 0 :(得分:3)
尝试以下
将以下代码放在主题模板中。
//Logic for checking whether the ID exists or not
if(empty($id)){
wp_logout();
}
将以下内容放入function.php
中 //When the user is logged out redirect him/her to the login page with a custom parameter
add_action('wp_logout','go_home');
function go_home(){
wp_redirect( '/wp-login.php?action=logout&custom-logout=yes' );
exit();
}
//If the custom parameter is set display the message on the login screen
if(!empty($_GET['custom-logout']) && strtolower($_GET['custom-logout']) == "yes"){
function custom_login_message() {
$message = '<p class="message">Add your message here...</p><br />';
return $message;
}
add_filter('login_message', 'custom_login_message');
}