Jump to content

Theme prestashop_new y el dichoso IE (solucionado)


Recommended Posts

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 by buhoc (see edit history)
Link to comment
Share on other sites

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

 

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

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

Guest
This topic is now closed to further replies.
×
×
  • Create New...