Допустим, есть модуль с версией 0.1.
Этот модуль уже имеет переопределения, примененные, например, к классам / Cart.php.
Появляется новое требование, и мы вносим изменения в уже переопределенные классы / Cart.php.
Чтобы применить новое изменение, мы обновляем версию модуля до 0.2, но после обновления Prestashop не применяет новые переопределения. Я также попытался поместить сценарий обновления в папку обновления, которая, как я подтвердил, выполняется, но старое переопределение все еще там.
Как применить новые изменения без переустановки модуля?
В методе обновления вы можете запустить в последовательности uninstallOverrides и installOverrides, это приведет к установке состояния ваших переопределений в текущей версии.
Файл upgrade / upgrade-1.1.0.php:
function upgrade_module_1_1_0($module)
{
$module->uninstallOverrides();
$module->installOverrides();
return true;
}
Я думаю, что единственный способ — вручную удалить и скопировать новый файл переопределения в папку / переопределить, убедившись, что текущий перезаписанный файл действительно ваш (контрольная сумма md5 p.ex.).