我当前正在使用wp_safe_redirect()
在连接到template_include
滤器我想在这里做条件语句,以确定是否应根据用户能力加载模板。如果没有,则重定向到主页。看起来是这样的:
public function my_load_template( $page_template ) {
if ( is_singular( \'my_cpt\' ) && is_user_logged_in()
&& current_user_can( \'update_core\' ) ) {
return plugin_dir_path( dirname( __FILE__ ) ) . \'public/templates/single-my_cpt.php\';
}
else {
wp_safe_redirect( home_url() );
exit;
}
}
挂钩使用
add_filter( \'template_include\', my_load_template\' );
如果它重定向,我会收到一个浏览器错误,说该站点“重定向了你太多次”我怀疑这可能是在筛选期间运行重定向的结果。
我希望尽早对用户能力进行有条件的检查。那么什么时候可以安全地进行重定向呢?我是否应该在单帖子模板中进行功能检查和重定向?