我想在prestashop上创建一个新页面。我不想使用CMS来创建页面,我基本上需要一个全新的页面。
我曾尝试复制当前的.tpl并重命名它们 - 但我永远无法导航到它们 - 访问新模板的URL是什么?
E.g. say my site is www.xyz.com the "my account" template, sits under template/customer/my-account.tpl this my account page is normally accessed at xyz.com/my-account
我想要一个新的但相似的页面 - 所以我复制了这个模板,将其重命名为my-account-new并更改其中的内容,为什么不能通过更改URL以my-account-结束来访问新模板新的 - 我刚拿到404.
我错过了什么? 谢谢 :)
答案 0 :(得分:0)
您可以在自定义模块中添加新的前端控制器: 模块名/控制器/前/ ControllerName.php
然后你的新控制器是一个应定义如下的类:
Module::getInstanceByName('<ModuleName>');
class <ModuleName><ControllerName>ModuleFrontController extends ModuleFrontController
然后添加方法
public function initContent(){
parent::initContent();
$this->setTemplate('<templateFolder>/<templateName>');
}
现在可以转到index.php来导航到模板?fc = module&amp; module = ModuleName&amp; controller = ControllerName
因此,在此示例中,将每个ModuleName替换为自定义模块的名称,将ControllerName替换为控制器的名称(例如MyCustomModule和MyCustomController)。
模板将位于您的主题文件夹中,例如您可以在themes / ThemeName / templates / customer / customAddress.tpl中添加customAddress
在这种情况下,对setTemplate的调用将变为:
$this->setTemplate('customer/customAddress');
我希望这会有所帮助。