我最终以一种我认为草率的方式做了这件事。在init
钩子我对照我的自定义模板检查WooCommerce模板,如果WooCommerce模板与我的模板不匹配,那么我将用我的模板替换WooCommerce模板。
add_action( \'init\', \'run_inital\' );
function run_inital(){
$wooThemePath = $woocommerce->plugin_path()."/templates/myaccount/dashboard.php";
$myThemeFile = file_get_contents(plugin_dir_path( __FILE__ )."/WooCommerce/dashboard.php");
$WooThemeFile = file_get_contents($wooThemePath);
if($myThemeFile != $WooThemeFile){
$Woo_Theme = fopen($wooThemePath, "w");
fwrite($Woo_Theme, $myThemeFile);
}
}
如果您想改进此代码段,应该检查文件大小是否不同,而不是比较内容。