Wordpress钩子template_include替换指定别名页面的模板

最近有个Wordpress的插件项目中,多次需要用到插件目录的模板文件来替换主题目录的模板文件,比如本文要分享的,替换指定别名页面的模板。

用到了 wordpress 的 template_include 钩子,代码直接上:

/* Load page template 替换“指定页面”模板 */
add_filter( 'template_include', 'yang_load_page_template', 1 );
function yang_load_page_template($template_path){
	if( is_page('dazhuanpan') ){
		return DZP_DIR.'/template/dzp_index.php';
	} else {
		return $template_path;
	}
}

template_include 避免了 template_redirect 后边的引入无效的尴尬。