如何将已注销的用户重定向到特定页面?

时间:2013-08-11 作者:Jornes

我在wordpress上有一个问题和一个技术问题。也就是说,我的网站上有一个登录表单,允许访问者登录以查看特殊内容。问题是,当他们登录时,我会设法将他们重定向到目标页面。当他们从会员区注销时,我不知道如何将他们发送到不同的目标页面。

在我的功能中。php文件,我有以下代码:

add_action(\'wp_logout\',create_function(\'\',\'wp_redirect(home_url());exit();\'));
如何添加我想要重定向到上面代码的页面url?我只是php的初学者。希望能得到一些指导。

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

home_url() 将接受将在创建URL时使用的参数。

最基本的解决方案是:

add_action(
  \'wp_logout\',
  create_function(
    \'\',
    \'wp_redirect(home_url("/path/to/page"));exit();\'
  )
);
site_url() 也将接受相同的参数,可能是(可能是)更好的选择。

我相信使用这两种方法中的任何一种都会使链接依赖于永久链接设置。我不认为这些函数会在不同的设置之间转换,尽管我还没有测试过。

我建议使用get_permalink() 具有明确的页面/帖子ID。

add_action(
  \'wp_logout\',
  create_function(
    \'\',
    \'wp_redirect("\'.get_permalink(1).\'");exit();\'
  )
);
请注意,您不需要home_url()site_url() 自从get_pemalink() 将生成完整的URL。

SO网友:hacksy

首先我认为

add_action(\'wp_logout\',create_function(\'\',\'wp_redirect(home_url());exit();\'));
可以替换成这样

function wpse_109694(){
   $redirect_to = home_url();
   wp_redirect($redirect_to);
   exit();
}

add_action(\'wp_logout\', \'wpse_109694\');
完成此更改后,您将看到要重定向到所选的另一个页面,只需编辑$redirect_to 变量设置为所需页面的url。

SO网友:Lloyd Mangin
add_action(\'wp_logout\',function(){wp_redirect(home_url());exit();});
结束

相关推荐

使用wp_reDirect和.htaccess重新路由搜索(并传递剩余的GET变量)

我想用wp_redirect() 将搜索重定向到我在中建立的格式.htaccess. 不幸的是,我在做这件事时遇到了一些问题。我需要将搜索重定向到一系列文件夹,然后将剩余参数附加到URL的末尾,最终结果如下所示:http://www.xxxxxxx.com/search/Used/MT/Billings/?s=BMW&z=59105&r=150&m=150000&pmin=1000&pmax=30000&submit=Refine 到目前为止,我