2015-10-13 66 views
2

我對OC 2.X相當陌生,我注意到我正在對網站進行更改,但他們並未出現。當我在系統/修改文件夾中進行更改時,出現了更改。我認爲這個文件夾是新的東西,與vqmod無關。我認爲這是一個基本上優先於核心文件的問題。Opencart系統/修改文件夾如何工作?

不幸的是,當我安裝了一個插件,它也重建了該文件夾,所以我失去了所有的變化(我假設發生了什麼)。

我想知道這是如何工作的整體?我必須爲每一個我想做的改變做一個新的擴展?

我無法找到一個清晰簡潔的解釋來解釋它爲開發人員的觀點。

回答

4

可以說ocmodvqmod相同,但它在某些方面有所不同,並且在opencart 2.0及更高版本中默認情況下會有所不同。每次對模塊進行任何更改以查看其效果時,都必須重置修改緩存。像vqmodocmod也會生成放置在修改文件夾中的緩存文件。並且此文件夾中的文件將先於原始文件。正如我認爲你修改修改文件中的文件,你可能會失去它們,如果你從管理面板清除修改緩存。

您可以查看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; 
}