[email protected] Posted April 4, 2013 Share Posted April 4, 2013 Buenas , estoy siguiendo las instrucciones de como crear un modulo en prestashop 1.5.4 de la documentacion de Prestashop, en la seccion de crear una nueva pagina. http://doc.prestasho...splayingtheform -Tengo el modulo en /modules/ -y los archivos de la nueva pagina en /modules/controller/front/ el caso es que se me instala el modulo todo bien pero al hacer enlace con la nueva pagina me sale este error Class 'ModuleFrontController' not found, no se si es que estan las instrucciones un poco confusas o es que a partir de un modulo no se puede hacer una pagina nueva. SALUDOS Link to comment Share on other sites More sharing options...
Victor Castro Contreras Posted April 26, 2013 Share Posted April 26, 2013 (edited) El problema está en la documentación. En la documentacion dice que en el archivo mymodule.php añadas el siguiente código: public function hookDisplayLeftColumn($params) { $this->context->smarty->assign( array( 'my_module_name' => Configuration::get('MYMODULE_NAME'), 'my_module_link' => $this->context->link->getModuleLink('mymodule', 'display') ) ); return $this->display(__FILE__, 'mymodule.tpl'); } public function hookDisplayRightColumn($params) { return $this->hookDisplayLeftColumn($params); } public function hookDisplayHeader() { $this->context->controller->addCSS($this->_path.'css/mymodule.css', 'all'); } El problema está en: 'my_module_link' => $this->context->link->getModuleLink('mymodule', 'display') la verdadera sentencia debe ser: 'my_module_link' => Context::getContext()->link->getModuleLink('mymodule', 'display') en resumen: coloquen esta linea de código: public function hookDisplayLeftColumn($params) { $this->context->smarty->assign( array( 'my_module_name' => Configuration::get('MYMODULE_NAME'), 'my_module_link' => Context::getContext()->link->getModuleLink('mymodule', 'display') ) ); return $this->display(__FILE__, 'mymodule.tpl'); } public function hookDisplayRightColumn($params) { return $this->hookDisplayLeftColumn($params); } public function hookDisplayHeader() { $this->context->controller->addCSS($this->_path.'css/mymodule.css', 'all'); } ADJUNTO MODULO FUNCIONAL mymodule.zip Edited April 26, 2013 by Victor Castro Contreras (see edit history) Link to comment Share on other sites More sharing options...
[email protected] Posted April 26, 2013 Author Share Posted April 26, 2013 Voy a probarlo. Muchas gracias amigo. SALUDOS Link to comment Share on other sites More sharing options...
Pepe Palo Posted April 27, 2013 Share Posted April 27, 2013 Gracias, yo también me estaba peleando con el error Saludos, Link to comment Share on other sites More sharing options...
Chirby Posted June 13, 2013 Share Posted June 13, 2013 Hola, a mi está solución no me a modificad nada.. sin url amigables, en mi Cuenta el modulo de productos favoritos. localhost/index.php?fc=module&module=favoriteproducts&controller=account con url amigables sin hacer ese cambio mi url es: http://localhost/module/favoriteproducts/account con el cambio que has comentado es exactamente la misma http://localhost/module/favoriteproducts/account Pero sigue sin estar bien del todo, me voy al BackOffice>Preferencias> SEO y URL y le doy a a añadir nueva: elijo del desplegable : favoriteproducts-acount y en reescritura pongo: productos-favoritos La url que me genera está mal, me pone el trozo de la url amigable bien, pero a mayores sigue añadiendome el resto de la url como si no fuera amigable: http://localhost/productos-favoritos?module=favoriteproducts&controller=account'>http://localhost/productos-favoritos?module=favoriteproducts&controller=account hasta http://localhost/productos-favoritos va bien, es mas si borro a mano en la barra de direcciones el resto carga la página que tiene que cargar.. pero alguien sabe a que puede ser debido???' Link to comment Share on other sites More sharing options...
Victor Castro Contreras Posted June 13, 2013 Share Posted June 13, 2013 Descarga el módulo: http://www.estore.etechnology.pe/modulos-gratuitos/my-module-ps-15-free---2.html Te ayudará mucho Link to comment Share on other sites More sharing options...
Chirby Posted June 13, 2013 Share Posted June 13, 2013 ya lo tengo así es lo que explico en el Context: pero nada.... Link to comment Share on other sites More sharing options...
Victor Castro Contreras Posted June 13, 2013 Share Posted June 13, 2013 Postea el código por que no te estoy entendiendo nada. Link to comment Share on other sites More sharing options...
Chirby Posted June 13, 2013 Share Posted June 13, 2013 (edited) en mi tpl tengo esto: <li class="favoriteproducts"> <a href="{$link->getModuleLink('favoriteproducts', 'account')|escape:'htmlall':'UTF-8'}" title="{l s='My favorite products' mod='favoriteproducts'}" class="icon-heart"> {l s='My favorite products' mod='favoriteproducts'} </a> </li> Así sin más la url que me deja es: http://localhost/mmw...roducts/account yo no la quiero así entonces me voy al BackOffice>Preferencias> SEO y URL y le doy a a añadir nueva: elijo del desplegable : favoriteproducts-acount y en reescritura pongo: productos-favoritos La url que me genera está mal, me pone el trozo de la url amigable bien, pero a mayores sigue añadiendome el resto de la url como si no fuera amigable: http://localhost/pro...troller=account y en el favoriteproducts-account.php esta: Tools::redirect(Context::getContext()->link->getModuleLink('favoriteproducts', 'account')); Edited June 13, 2013 by Chirby (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts