我有PrestaShop 1.7.2.0。在PrestaShop后台创建替代订单
我需要在创建新订单的后台自定义页面。我想改进产品组合选择,因此只是页面的一部分。
在URL我看到...controller=AdminOrders&addorder...
,所以我猜控制器
/controllers/admin/AdminOrdersController.php
随着文件搜索,我发现呈现页模板必须
/admin753xeprta/themes/default/template/controllers/orders/form.tpl
我的问题是:
- 我应该如何定制这些文件?在我的安装中重写它们还是创建一个可以执行它的模块(如果允许)更好?
- 我应该在哪里放置自定义文件?我尝试了很多地方,没有成功。我越来越疯狂的文件夹结构,尤其是因为它似乎随每个PS版本而改变,并且PS文档分布在各种版本特定的章节中...
- With AdminOrdersController.php我想我可以派生类和重载那些我需要的方法。但我想知道是否在form.tpl的情况下,我应该覆盖整个文件(复制它,并更改我需要的部分)。
Thanks @Indrė,我试图将自定义文件放在您建议的位置,但似乎PrestaShop不会受到这些覆盖的影响。我也清理/应用程序/缓存。还有什么要做的吗? – bluish
你究竟放置什么以及在哪里? –
我将'/ admin/themes/default/template/controllers/orders/form.tpl'复制到'/ modules/mymodule/override/controllers/admin/templates/orders/form.tpl'中,并改变了我感兴趣的部分。 我创建了文件'/ modules/mymodule/override/controllers/admin/AdminOrdersController.php',子类化原始类并覆盖我感兴趣的那些方法。 现在我想知道如果你的意思是覆盖根文件夹('/ override')或覆盖文件夹,但在模块('/ modules/mymodule/override')中。我理所当然地认为他们都是压倒一切的正确场所,我错了吗?谢谢@Indrė! – bluish