簡體   English   中英

模塊控制器重定向到404 Prestashop

[英]Module Controller redirects to 404 Prestashop

我的Prestashop有問題,我想在不使用CMS的情況下在模塊中創建網頁。

但是當我想通過使用此網址訪問控制器時: http : //example.com/comparateur/module/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和URL

Page: produitsmarchands - productlist
URL: product-list

您有一些基本錯誤。

首先,您不應該使用FrontController,而應該使用ModuleFrontController。 由於擴展模塊不是完全獨立的新控制器。

接下來的事情是你的課堂是錯誤的。 它應該與此類似。

YourModuleNameYourControllerNameModuleFrontcontroller

YourModuleName =模塊名稱

YourControllername =控制器名稱,應位於yourmodule / controllers / front中

最后但並非最不重要的一點是,這是完全錯誤的

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

你應該用這個

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

這樣,您的文件將位於yourmodule / views / templates / front中

而且,如果您已遵循所有這些准則,則應該可以在“首選項”->“ SEO和URL”中為您的moduelController設置一個友好的URL。

BR的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM