buhoc Posted May 25, 2012 Share Posted May 25, 2012 (edited) A ver quén lo entiende: Instalo la planilla prestashop_new en mi hosting para realizar un trabajo y luego instalarlo en el servidor del cliente. Ahora resulta que el trabajo que hice en mi servidor se ve perfectamente en IE 9 y en el del cliente no, se desconfigura el Top menú. Ya he hecho todo lo posible, borrar, volver a instalar, cambiar el módulo...... Dejo los enlaces de la demo y del dominio: plantillas-prestashop.buhoc.com/02 www.qcompra.com Edited May 26, 2012 by buhoc (see edit history) Link to comment Share on other sites More sharing options...
nadie Posted May 25, 2012 Share Posted May 25, 2012 A ver quén lo entiende: Instalo la planilla prestashop_new en mi hosting para realizar un trabajo y luego instalarlo en el servidor del cliente. Ahora resulta que el trabajo que hice en mi servidor se ve perfectamente en IE 9 y en el del cliente no, se desconfigura el Top menú. Ya he hecho todo lo posible, borrar, volver a instalar, cambiar el módulo...... Dejo los enlaces de la demo y del dominio: plantillas-prestashop.buhoc.com/02 www.qcompra.com Revisa: http://www.prestashop.com/forums/index.php?/topic/158354-plantilla-145-error-en-menu-horizontal-se-desordena-con-internet-explorer-9/page__view__findpost__p__828301 Link to comment Share on other sites More sharing options...
buhoc Posted May 26, 2012 Author Share Posted May 26, 2012 Revisa: http://www.prestasho...post__p__828301 Es cierto Nadie, no me acordaba de este post. Me ha dado la pista de por donde ir, pero como la solución no estaba completa, sino que solo estaba identificada, voy a dar aquí los pasos para solucionarlo y así poder ayudar a quien lo necesite. El problema está en que el módulo tiene un fallo de programación, o no está programado de forma correcta. Hay que ir al archivo bloktopmenu.tpl y buscar la linea que he marcado en rojo: {if $MENU != ''} </div> <!-- Menu --> <div class="sf-contener clearfix"> <ul class="sf-menu clearfix"> {$MENU} {if $MENU_SEARCH} <li class="sf-search noBack" style="float:right"> <form id="searchbox" action="search.php" method="get"> <input type="hidden" value="position" name="orderby"/> <input type="hidden" value="desc" name="orderway"/> <input type="text" name="search_query" value="{if isset($smarty.get.search_query)}{$smarty.get.search_query}{/if}" /> </form> </li> {/if} </ul> <div class="sf-right"> </div> <script type="text/javascript" src="{$this_path}js/hoverIntent.js"></script> <script type="text/javascript" src="{$this_path}js/superfish-modified.js"></script> <link rel="stylesheet" type="text/css" href="{$this_path}css/superfish-modified.css" media="screen" /> <!--/ Menu --> {/if} Esto determina que el estilo del módulo se encuentra en esa dirección. Pero efectivamente al colocarlo aquí se ubica dentro de la etiqueta Body. Hay que eliminar esta linea y colocar en el archivo blocktopmenu.php, el siguiente código: Al final del archivo encontramos: public function hooktop($param) { global $smarty; $this->makeMenu(); $smarty->assign('MENU_SEARCH', Configuration::get('MOD_BLOCKTOPMENU_SEARCH')); $smarty->assign('MENU', $this->_menu); $smarty->assign('this_path', $this->_path); return $this->display(__FILE__, 'blocktopmenu.tpl'); } } ?> Tenemos que introducir: public function hooktop($param) { global $smarty; $this->makeMenu(); $smarty->assign('MENU_SEARCH', Configuration::get('MOD_BLOCKTOPMENU_SEARCH')); $smarty->assign('MENU', $this->_menu); $smarty->assign('this_path', $this->_path); if (Configuration::get('PS_CATALOG_MODE')) return ; Tools::addCSS(($this->_path).'css/superfish-modified.css', 'screen'); return $this->display(__FILE__, 'blocktopmenu.tpl'); } } ?> Para que coloque en su sitio el código, ahora parecera en Head, y lo veremos perfectamente en todos los navegadores. No olvideis forzar compilación, pues se ha modificado un archivo .tpl y gracias a smarty, si no forzmos compilación no veremos los cambios. Saludos. Link to comment Share on other sites More sharing options...
nadie Posted May 26, 2012 Share Posted May 26, 2012 Es cierto Nadie, no me acordaba de este post. Me ha dado la pista de por donde ir, pero como la solución no estaba completa, sino que solo estaba identificada, voy a dar aquí los pasos para solucionarlo y así poder ayudar a quien lo necesite. El problema está en que el módulo tiene un fallo de programación, o no está programado de forma correcta. Hay que ir al archivo bloktopmenu.tpl y buscar la linea que he marcado en rojo: {if $MENU != ''} </div> <!-- Menu --> <div class="sf-contener clearfix"> <ul class="sf-menu clearfix"> {$MENU} {if $MENU_SEARCH} <li class="sf-search noBack" style="float:right"> <form id="searchbox" action="search.php" method="get"> <input type="hidden" value="position" name="orderby"/> <input type="hidden" value="desc" name="orderway"/> <input type="text" name="search_query" value="{if isset($smarty.get.search_query)}{$smarty.get.search_query}{/if}" /> </form> </li> {/if} </ul> <div class="sf-right"> </div> <script type="text/javascript" src="{$this_path}js/hoverIntent.js"></script> <script type="text/javascript" src="{$this_path}js/superfish-modified.js"></script> <link rel="stylesheet" type="text/css" href="{$this_path}css/superfish-modified.css" media="screen" /> <!--/ Menu --> {/if} Esto determina que el estilo del módulo se encuentra en esa dirección. Pero efectivamente al colocarlo aquí se ubica dentro de la etiqueta Body. Hay que eliminar esta linea y colocar en el archivo blocktopmenu.php, el siguiente código: Al final del archivo encontramos: public function hooktop($param) { global $smarty; $this->makeMenu(); $smarty->assign('MENU_SEARCH', Configuration::get('MOD_BLOCKTOPMENU_SEARCH')); $smarty->assign('MENU', $this->_menu); $smarty->assign('this_path', $this->_path); return $this->display(__FILE__, 'blocktopmenu.tpl'); } } ?> Tenemos que introducir: public function hooktop($param) { global $smarty; $this->makeMenu(); $smarty->assign('MENU_SEARCH', Configuration::get('MOD_BLOCKTOPMENU_SEARCH')); $smarty->assign('MENU', $this->_menu); $smarty->assign('this_path', $this->_path); if (Configuration::get('PS_CATALOG_MODE')) return ; Tools::addCSS(($this->_path).'css/superfish-modified.css', 'screen'); return $this->display(__FILE__, 'blocktopmenu.tpl'); } } ?> Para que coloque en su sitio el código, ahora parecera en Head, y lo veremos perfectamente en todos los navegadores. No olvideis forzar compilación, pues se ha modificado un archivo .tpl y gracias a smarty, si no forzmos compilación no veremos los cambios. Saludos. Tenemos que introducir: public function hooktop($param) { global $smarty; $this->makeMenu(); $smarty->assign('MENU_SEARCH', Configuration::get('MOD_BLOCKTOPMENU_SEARCH')); $smarty->assign('MENU', $this->_menu); $smarty->assign('this_path', $this->_path); if (Configuration::get('PS_CATALOG_MODE')) return ; Tools::addCSS(($this->_path).'css/superfish-modified.css', 'screen'); return $this->display(__FILE__, 'blocktopmenu.tpl'); } } ?> Para que coloque en su sitio el código, ahora parecera en Head, y lo veremos perfectamente en todos los navegadores. No olvideis forzar compilación, pues se ha modificado un archivo .tpl y gracias a smarty, si no forzmos compilación no veremos los cambios. Saludos. Me alegro de que hayas podido resolver el problema. Recuerda que para cualquier otra duda estaremos por el foro. Un Saludo PD: Creo que seria bueno, que pusieras tu solución aquí: http://www.prestasho...ambian-la-vida/ como un aporte. Link to comment Share on other sites More sharing options...
Recommended Posts