Контроллер модуля перенаправляет до 404 престашоп

StackOverflow https://stackoverflow.com//questions/22009125

  •  21-12-2019
  •  | 
  •  

Вопрос

У меня проблема с моим престашом, я хотел бы создать веб-страницу в модуле без использования CMS.

Но когда я хочу получить доступ к контроллеру с помощью этого URL: http://example.com/ Сравнитель / модуль / produitsmarchand / productlist

У меня есть это сообщение, и когда я нажимаю на ссылку, у меня есть ошибка 404

[Debug] This page has moved
Please use the following URL instead: http://example.com/comparateur/index.php?controller=ProductList&module=ProduitsMarchand
.

Мой контроллер выглядит так

class ProduitsMarchandProductListModuleFrontController extends ModuleFrontController {

    public $php_self ="ProductList";
    /**
     *  Initialize controller
     *  @see FrontController::init()
     */
    public function init() {
        parent::init();
    }

    /**
     *  Assign template vars related to page content
     *  @see FrontController::initContent()
     */
    public function initContent() {
        parent::initContent();

        $this->setTemplate("ProductList.tpl");
    }
}
.

Настройки> SEO & URLS

Page: produitsmarchands - productlist
URL: product-list
.

Это было полезно?

Решение

У вас есть несколько фундаментальных ошибок.

Прежде всего, вы должны использовать FrontController, а скорее ModulefonontController.Поскольку вы расширяете модуль, а не полный сереоратный новый контроллер.

Следующая вещь - это то, что ваш класс не так.Это должно быть чем-то похожее на это.

YourModuleNameyourControlLernamemoduleFrontController

YourModuleName= Название вашего модуля

YourControllername= имя вашего контроллера и должен быть расположен в вашем Module / Controllers / Front

и последнее, но не менее важное значение совершенно не так

$this->setTemplate(__FILE__.'/../../../views/templates/front/ProductList.tpl');
.

Вы должны использовать это

$this->setTemplate('ProductList.tpl');
.

Таким образом, ваш файл будет расположен в YourModule / представления / шаблоны / спереди

И если вы следовали всем этим рекомендациям, вы должны быть в состоянии установить дружественный URL для вашего модификационного контроля в настройках -> SEO & URL

br's

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top