如何在prestashop中生成模块控制器的链接?

Luc*_*lin 9 controller module hyperlink prestashop

在prestashop中生成模块控制器链接的确切方法是什么?另外,应该如何真正命名控制器的类以及url params应该如何镜像?

Luc*_*lin 27

您将使用Link类的实例.通常,您不必创建一个,只需使用context->link(例如,形成一个控制器$this->context-link).方法是getModuleLink(),所以:

$this->context->link->getModuleLink('module_folder_name','controller_name',array_of_params);
Run Code Online (Sandbox Code Playgroud)

注意命名:

  • 模块文件夹名称就是那个..

  • 控制器必须位于正确的路径中,例如module/controllers/front/controller.php

  • 文件名是操作,小写.类名是ModuleFolder + Action +"ModuleFrontController"

所以,例如:

模块目录: orderattachment

controller: orderattachment/controllers/front/pdf.php

控制器类:

class OrderAttachmentPdfModuleFrontController extends ModuleFrontController
Run Code Online (Sandbox Code Playgroud)

链接:

$this->context->link->getModuleLink('orderattachments', 'pdf', [params..]);
Run Code Online (Sandbox Code Playgroud)