我是OC 2.X的新手,我注意到我正在对网站进行更改,但他们并没有出现.当我在系统/修改文件夹中进行更改时,出现了更改.我认为这个文件夹是新的,与vqmod无关.我认为它基本上优先于核心文件.
不幸的是,当我安装了一个插件时,它还重建了那个文件夹,所以我失去了所有的变化(我假设发生了什么事).
我想知道这总体如何运作?我必须为我想做的每一项改变做一个新的扩展吗?
我无法找到一个清晰简洁的解释,以解释开发人员的观点.
您可以说它ocmod是相同的,vqmod但它在某些方面有所不同,默认情况下在opencart 2.0及更高版本中提供.每次对模块进行任何更改以查看其效果时,都必须重置修改缓存.vqmod ocmod也喜欢生成放在修改文件夹中的缓存文件.此文件夹中的文件将优先于原始文件夹.我认为您正在修改修改文件中的文件,如果您从管理面板清除修改缓存,则可能会丢失它们.
您可以检查system/startup.php文件以获得更多理解.
// Modification Override
function modification($filename) {
if (!defined('DIR_CATALOG')) {
$file = DIR_MODIFICATION . 'catalog/' . substr($filename, strlen(DIR_APPLICATION));
} else {
$file = DIR_MODIFICATION . 'admin/' . substr($filename, strlen(DIR_APPLICATION));
}
if (substr($filename, 0, strlen(DIR_SYSTEM)) == DIR_SYSTEM) {
$file = DIR_MODIFICATION . 'system/' . substr($filename, strlen(DIR_SYSTEM));
}
if (is_file($file)) {
return $file;
}
return $filename;
}
Run Code Online (Sandbox Code Playgroud)