【问题标题】:How to reset cache and override in a PrestaShop custom module?如何在 PrestaShop 自定义模块中重置缓存和覆盖?
【发布时间】:2020-12-29 00:10:36
【问题描述】:

我正在开发一个 PrestaShop (1.7.6) 模块,该模块使用 ps_emailsubscription 本机模块的覆盖。

但是,当我将模块升级到新版本时,我更改了覆盖功能,我知道当模块中有覆盖时,此覆盖仅在模块安装期间复制到根覆盖文件夹.

有没有办法指定存在新版本的覆盖并强制更新?

另外,在同一过程中,有没有办法在升级过程中强制清除缓存?

【问题讨论】:

    标签: php prestashop prestashop-1.7


    【解决方案1】:

    您必须编写“覆盖检查”例程并在新模块版本发布的 upgrade.php 文件中调用它。

    如果您需要清除所有缓存,您可以调用这些核心方法:

    Tools::clearSmartyCache();
    Tools::clearXMLCache();
    Media::clearCache();
    

    但这可能非常耗时,具体取决于商店的缓存大小。

    如果您只需要刷新覆盖,我建议您只删除 /var/cache/prod 中的 class_index.php 文件。

    【讨论】:

    • 很抱歉我的回复延迟。那么,没有内置的方法来检查或删除覆盖吗?我必须编写逻辑并在必要时取消链接()吗?删除 class_index.php 的同上?谢谢你的回答。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多