Я разрабатываю модуль с контроллером, который предназначен для чтения id_cart и выполнения некоторых действий. Но я не могу вызвать Controller, он всегда возвращает ошибку 404.
Модуль:
<?php if (!defined('_PS_VERSION_')) exit; class CartPortkey extends Module { public function __construct() { $this->name = 'cartportkey'; $this->tab = 'checkout'; $this->version = '1.0.0'; $this->author = 'Me and nobody else'; $this->need_instance = 0; $this->ps_versions_compliancy = array('min' => '1.6', 'max' => _PS_VERSION_); $this->bootstrap = true; parent::__construct(); $this->displayName = $this->l('My Module Name'); $this->description = $this->l('My Module Description.'); $this->confirmUninstall = $this->l('Estás seguro de desinstalar?'); } }
контроллер
<?php if (!defined('_PS_VERSION_')) exit; class CartPortkeyFrontController extends ModuleFrontController { public function init(){ parent::init(); $id_cart = (int)Tools::getValue('id_cart'); $this->context->cookie->id_cart = $id_cart; $link_order = $this->context->link->getPageLink('order'); Tools::redirect($link_order); } public function initContent() { parent::initContent(); } } ?>
Я пытаюсь использовать этот URL: http://localhost/shop/myshop1/index.php?fc=module&module=cartportkey&controller=cartportkeyfrontcontroller&id_cart=2
Я должен указать, что я включил myshop1
где shop
является основным, а myshop1
– одним из 3-х магазинов.
Структура папок:
+ cartportkey -- +controllers -- -- +front -- -- -- CartPortKeyController.php -- cartportkey.php
Я убедился, что модуль установлен и активен во всех магазинах.
У вас неправильное соглашение об именах контроллеров.
Вам необходимо объявить класс переднего контроллера следующим образом.
ModuleNameControllerFileNameModuleFrontController extends ModuleFrontController
Итак, теперь ваш класс контроллера должен быть объявлен как
CartPortKeyCartPoortKeyControllerModuleFrontController extends ModuleFrontController
Затем загрузите контроллер следующим URL-адресом
http://localhost/shop/myshop1/index.php?fc=module&module=cartportkey&controller=cartpoortkeycontroller&id_cart=2