问题描述
我想构建一个插件,从查询字符串中获取某些 url 参数,为同一页面创建一个新的查询字符串。我遵循了专业的 WordPress 插件开发书,但我不知道使用哪个钩子来执行此操作。这是我的动作功能:
add_action( 'init', 'tccl_redirect' );
function tccl_redirect() {
header ( "Location: http://www.mysite.com/$mypage?$newparam=$newvalue" );
?>
哪些钩子适合标头重定向?
最佳解决方案
像 kaiser 回答 template_redirect
钩子确实适合重定向。
还应该使用 wp_redirect()
功能,而不是设置标题。
次佳解决方案
我会说 template_redirect
。但是看看 Action Reference 。
例子
不要忘记 exit()
重定向。
/**
* This example redirects everything to the index.php page
* You can do the same for the dashboard with admin_url( '/' );
* Or simply base the redirect on conditionals like
* is_*() functions, current_user_can( 'capability' ), globals, get_current_screen()...
*
* @return void
*/
function wpse12535_redirect_sample() {
exit( wp_redirect( home_url( '/' ) ) );
}
add_action( 'template_redirect', 'wpse12535_redirect_sample' );
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。