根据每个JavaScript的登录状态进行重定向

时间:2012-11-23 作者:swapnil

我想检查用户是否已登录。如果他是,我想把他转到A页,如果他不是,我想把他转到B页。

重定向应该在单击按钮后根据JavaScript进行,因此我需要JavaScript中可用的状态或URL。如何将这些数据从WordPress转换成JavaScript?

1 个回复
最合适的回答,由SO网友:fuxia 整理而成

测试用户是否登录使用is_user_logged_in().

重定向访问者使用wp_redirect($location, $status = 302).

您可以将两者结合使用:

<?php

$location = \'http://localhost\';

if ( is_user_logged_in() )
    $location = admin_url( \'/\' );

wp_redirect( $location );
在JavaScript中(排序):

add_action( \'wp_footer\', \'wpse_73701_button\' );

function wpse_73701_button()
{
    $location = is_user_logged_in() ? admin_url( \'/\' ) : \'http://localhost\';

    print "<button onclick=\'window.location.href=\\"$location\\"\'>Click!</button>";
}
您也可以创建JavaScript变量并在脚本中使用它们:

<script>
var isLoggedIn = <?php print is_user_logged_in() ? \'true\' : \'false\'; ?>;
var redirectTo = \'<?php print is_user_logged_in() ? admin_url( \'/\' ) : \'http://localhost\'; ?>\';
</script>

结束

相关推荐

我可以用什么替换‘.get_bloginfo(’url‘)。’用来返回当前URL而不是家庭地址?

我正在使用Any Mobile Theme Switcher 可在完整主题和移动主题之间自动切换的插件。唯一的问题是,“切换到移动站点”和“切换到完整站点”链接会将您带到主页,而不是当前页面。相关的代码位似乎是这样的:function show_theme_switch_link_func( $atts ){ $desktopSwitchLink = get_option(\'show_switch_link_for_desktop\'); glo