Prestashop 1.7-向子主题添加自定义挂钩
如何修改子主题的挂钩?我使用经典主题作为父母 这是子主题的theme.yml:Prestashop 1.7-向子主题添加自定义挂钩,prestashop,prestashop-1.7,Prestashop,Prestashop 1.7,如何修改子主题的挂钩?我使用经典主题作为父母 这是子主题的theme.yml: parent: classic name: steel display_name: steel version: 1.0.0 assets: use_parent_assets: false global_settings: hooks: modules_to_hook: newHook: - ps_languageselector image_types:
parent: classic
name: steel
display_name: steel
version: 1.0.0
assets:
use_parent_assets: false
global_settings:
hooks:
modules_to_hook:
newHook:
- ps_languageselector
image_types:
cart_default:
width: 125
height: 125
scope: [products]
small_default:
width: 98
height: 98
scope: [products, categories, manufacturers, suppliers]
medium_default:
width: 452
height: 452
scope: [products, manufacturers, suppliers]
home_default:
width: 250
height: 250
scope: [products]
large_default:
width: 800
height: 800
scope: [products, manufacturers, suppliers]
category_default:
width: 141
height: 180
scope: [categories]
stores_default:
width: 170
height: 115
scope: [stores]
正如您所看到的,我已经覆盖了父主题的hooks数组-删除了所有默认值,并添加了我创建的新主题。我还向tpl文件添加了hook标记-{hook h='newHook'}。顺便说一下,我还必须复制image_types数组,否则会出现错误-我也必须复制它吗?有点多余
问题是-模板根本不会改变。在“管理”面板的“位置”页面中,还列出了所有旧挂钩
我试图将shop设置为classic template,然后将其设置回child one以重新加载,但没有起到任何作用。我还使用了重置为默认值按钮
我还试图修改父主题的theme.yml,也没有改变任何东西
实施:
我检查了ps_hook db表,新的hook在那里。但正如您在上面的配置中所看到的,语言选择器应该出现在其中。但事实并非如此。它也出现在“位置管理”页面上,但仅当我选中“显示非位置挂钩”时才会出现
而且-它不会在父主题上工作-任何分配给新钩子的模块都不会出现。修改旧挂钩效果很好。我找到了解决方案
似乎前端显示的每个钩子都需要以display开头的名称。我的不是那样的