2014-02-25 27 views
2

我的Prestashop出現問題,我想在不使用CMS的情況下在模塊中創建網頁。模塊控制器重定向到404 Prestashop

但是,當我想用​​這個URL來訪問控制: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 &網址

Page: produitsmarchands - productlist 
URL: product-list 

回答

5

你有幾個基本的錯誤。

首先,您不應該使用FrontController,而應該使用ModuleFrontController。既然你擴展了一個模塊,而不是一個完全獨立的新控制器。

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

YourModuleNameYourControllerNameModuleFrontcontroller

YourModuleName =你的模塊

YourControllername =控制器的名稱,並應設在yourmodule /控制器/前

最後,但名稱並非最不重要的,這是完全錯誤的

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

您應該使用這個

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

這樣,你的文件將位於yourmodule /視圖/模板/前

如果你還遵循了所有這些準則,你應該能夠設置一個友好的URL在首你moduelController - > SEO & URL

BR的

+0

它仍然沒有工作,我已經編輯我的第一篇文章,所以你可以看到我的變化。 –

+0

http://mydomain.com/comparateur/product-list,試試這種方式 – user2831723

+0

相同的消息「此頁面已移動」,404再次 –