Jump to content

créer son controller pour un module


Recommended Posts

Bonjour à tous,

Je suis en train de code mon module d'avis, pour lequel j'aimerais avoir une page mondomain.com/avis référencant tous les avis.

Pour cela j'ai pensé à

  • l'intégrer sur une page CMS en y insérant un nouveau hook, et un système de pagination
  • créer un nouveau controller

Si l'intégration au CMS serait la plus simple

  • l'url aurais alors une forme de type /cms/11-avis
  • Je bute sur le système de pagination

 

Raison pour laquelle je pense m'orienter sur un nouveau controller

malheureusement je ne trouve pas de documentation pour celà? Auriez vous un lien, un tuto, ou module d'exemple pour cela?

Merci

Link to comment
Share on other sites

Étant partie sur la voie du controller dédié j'ai créer un controller dans le module

class AvisControllertModuleFrontController extends ModuleFrontController
{
	public function initContent()
	{
		parent::initContent();	

    /** string Internal controller name */
    public $php_self = 'avis';

	public function initContent() {    
		parent::initContent();    
		new ProductComments();
		die('test!');    
	}

}

 

Puis dans Seo & Url ajouté ma page et Vidé le cache

Mais quand j'appel:

index.php?controller=Avis

J'arrive sur une 404?

 

Auriez vous une idée?

Link to comment
Share on other sites

Je te remercie

Et le Fichier dois s'appeler

/modules/avis/controllers/Avis.php

ou

/modules/avis/controllers/avis.php

 

pour  les routes de SEO&URL

l

Page (avis -> aviscontroller)
Titre de la page avis
Meta description avis
Meta mots-clés avis
URL réécrite avis

 

Link to comment
Share on other sites

@doekia

je suis navré j'ai un nouveau soucis:

 

	public function initContent()
    {
    	       parent::initContent();

        
    	$pc = new ProductComment();
            $this->context->controller->addCSS(_PS_MODULE_DIR_ . 'productcomments/css/productcomments.css', 'all');
        
        $note = 4.5;
		$arr = array('note' => $note, 'vote' => 3333, 'site' => 'Programmation');
        
        $smarty->assign('myArray', $arr);

Quand j'essaye d'assigner à smarty j'ai le msg:

Quote

otice: Undefined variable: smarty in /var/www/html/presta_/modules/avis/controllers/front/test.php on line 40

Fatal error: Uncaught Error: Call to a member function assign() on null in

Je comprends pas mon erreur?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...