正确使用 template_redirect 和 template_include

正确使用 template_redirect 和 template_include

template_redirect 是非常常用的一个 WordPress 接口,当然运行的时候,WordPress 已经运行了主循环,所有的对象都已经被实例化了,但是还没有把结果输出到浏览器。这是最后一个 hook 可以将用户导向其他的地方了,当然也是需要所有查询对象都实例化之后重定向的最好地方。但是这个 hook 最好不要用于加载一个其他模板文件。

下面是一些我们常见到的代码:

这样的用法的最大问题是,其他在这之后使用 template_redirect Hook 的代码将不会运行。这样会导致站点被出租哦或者导致一些非常奇怪的 bug,如果你要加载一个其他模板,建议你使用这个 filter Hook:template_include。

同样的效果,但是不会影响其他插件或者主题的代码,他们的区别应该很容易区分:

template_redirect 用于 redirects(重定向)。
template_include 用于 includes(加载)。

版权声明
转载请注明本文地址:https://www.e363.com/564.html
THE END
喜欢龙网的内容,就支持一下吧!
点赞21赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容