我想知道在启用主题时是否可以配置一些商店的选项。
让我解释一下,我已经在主题zip的根目录中生成了一个config.xml来启用/禁用某些模块或挂钩。但我想做更多。
事实上,我希望能够在主题时启用CCC“将JavaScript移到最后”。
我看到一些主题(including the community theme)在主题文件夹中包含config.xml
。我经常看到像<ccc available="true" />
这样的东西。
但我不确定它能做什么。它有什么用吗?
我找不到该config.xml文件的任何参考,有没有办法实现我想要的?
使用最新的Prestashop 1.6。
答案 0 :(得分:0)
这些行检查配置值,但仅限于<ccc available="false" />
。
因此,如果您有<ccc available="true" />
,则表示您的主题与CCC
兼容,如果商店启用了CCC
则无关紧要。
如果将其设置为false
,安装程序将检查是否禁用了与CCC
相关的设置,否则会向用户发出错误,指出他们的CCC
配置无法正常工作以你的主题。
您可以看到功能定义here。
'ccc' => array(
'attributes' => array(
'available' => array(
'value' => 'true',
/*
* accepted attribute value if value doesn't match, prestashop configuration value must have those values
*/
'check_if_not_valid' => array(
'PS_CSS_THEME_CACHE' => 0,
'PS_JS_THEME_CACHE' => 0,
'PS_HTML_THEME_COMPRESSION' => 0,
'PS_JS_HTML_THEME_COMPRESSION' => 0,
),
),
),
'error' => 'This theme may not correctly use PrestaShop\'s "combine, compress and cache" options.',
'tab' => 'AdminPerformance',
)
因此,如果您在config.xml
<ccc available="false" />
中设置,则会检查check_if_not_valid
数组中的所有四个配置是否都设置为0,否则会抛出错误消息{{1} }。
至于在主题安装上配置设置,我没有看到使用xml配置的方法而不覆盖This theme may not correctly use PrestaShop's "combine, compress and cache" options.
类,但我猜你想要分发这个主题,所以覆盖不是一个选项。
您可以做的是安装一个简单的配置设置器模块以及挂钩到displayAfterThemeInstallation
的主题。
AdminThemesController