如何使用‘wp_logout_url’在用户注销后刷新页面?

时间:2016-12-23 作者:Prasad Patel

我为自己的网站编写了一个插件,其中我遇到了一个问题,如“用户登录到网站后,如果他注销,然后再次单击浏览器后退按钮,则再次显示上一页,而不是登录页”。我正在尝试下面的代码,但它不起作用。

<script>
   window.onhashchange = function() {
     <?php if( ! is_user_logged_in()) { $this->tewa_login(); } ?>
   }
<script>
我的注销代码如下:

if ( is_user_logged_in() ) {
  $data .= \'<li><a class="add-new" href="\'. wp_logout_url() .\'" class="btn btn-primary" >\'.$this->icon_sign_out.\' Logout</a></li>\';
}
下面的代码是否有效?

function my_redirect(){
  <script>
     location.reload();
  </script>
 exit();
}
add_filter(\'wp_logout\',\'my_redirect\');
我认为这个问题完全不属于服务器的浏览器问题。我想只要刷新一下页面就可以了。我使用“wp\\u logout\\u url”进行用户注销。谁能告诉我怎么做?提前谢谢。

2 个回复
SO网友:dgarceran

尝试使用wp_redirect 注销后。这里有一个如何使用它的示例here.

add_action( \'wp_logout\', \'auto_redirect_external_after_logout\');
function auto_redirect_external_after_logout(){
  wp_redirect( \'http://redirect-url\' );
  exit();
}

SO网友:Yair Levy

如果要刷新(而不是重定向到其他页面),请使用“get\\u permalink()”

它在文档中。。。

<a href="<?php echo wp_logout_url( get_permalink() ); ?>">Logout</a>