vQmod中是否可以检查类中是否存在方法。只有它不存在才会进行更改。
目前我有一个简单的vqmod导致另一个扩展的问题,该扩展也会进行相同的更改并导致重复的方法错误。
<file name="catalog/model/tool/image.php">
<operation>
<search position="after"><![CDATA[
class ModelToolImage extends Model {
]]></search>
<add><![CDATA[
public function get($filename) {
if (!file_exists(DIR_IMAGE . $filename) || !is_file(DIR_IMAGE . $filename)) {
return;
}
if (isset($this->request->server['HTTPS']) && (($this->request->server['HTTPS'] == 'on') || ($this->request->server['HTTPS'] == '1'))) {
return HTTPS_IMAGE . $filename;
} else {
return HTTP_IMAGE . $filename;
}
}
]]></add>
</operation>
</file>
还有什么方法可以优先考虑一个vqmod而不是另一个vqmod。我之前需要2个vqmod文件才能获得vqmod的代码吗?
答案 0 :(得分:1)
如果方法不存在,则无法添加。诀窍是“劫持”原件,或重命名原件。至于优先级,它们会被解析为a到z,所以如果你想首先应用它,将其命名为按字母顺序排在另一个之前,或者只是将aaa添加到名称