Jump to content

Modificación código Menú


Recommended Posts

Hola.

 

Estoy intentando modificar el código del menú de prestashop pero no encuentro en qué archivo se genera. Quiero, por ejemplo, que cuando se pulsa sobre el nombre de la categoría padre no se recargue la página, o meterle formatos h2 y h3 a las subcategorías.

 

Alguien sabe dónde lo puedo buscar?

 

Saludos y gracias.

 

Link to comment
Share on other sites

Hola Sergio.

 

Cada cosa es para una tienda diferente pero ambas usan la 1.6.1.X. En ambos es el Menú Horizontal Superior, si.

 

El tema es que una de las tiendas, muestra bien el menú pero, al pulsar sobre el nombre de la categoría principal, recarga la página. http://www.centraldepintura.com

 

En la otra quiero hacer algunas modificaciones y poner formatos h2 y h3 para ver como actua con el posicionamiento. https://www.almacendeoficina.com

 

Doy con el Tpl de las respectivas plantillas pero llaman a {$MENU} y no consigo encuentrar dónde se genera.

 

Gracias.

Link to comment
Share on other sites

hace 14 horas, ALMACENdeoficina dijo:

Hola Sergio.

 

Cada cosa es para una tienda diferente pero ambas usan la 1.6.1.X. En ambos es el Menú Horizontal Superior, si.

 

El tema es que una de las tiendas, muestra bien el menú pero, al pulsar sobre el nombre de la categoría principal, recarga la página. http://www.centraldepintura.com

 

En la otra quiero hacer algunas modificaciones y poner formatos h2 y h3 para ver como actua con el posicionamiento. https://www.almacendeoficina.com

 

Doy con el Tpl de las respectivas plantillas pero llaman a {$MENU} y no consigo encuentrar dónde se genera.

 

Gracias.

 

Buenas noches, buenas días, buenas tardes,

Te comento en base a Prestashop 1.6 con la plantilla por defecto

Chequea, por ejemplo, fichero: /modules/blocktopmenu/blocktopmenu.php

Fijate que lo que tu ves en el fichero:

/themes/default-bootstrap/modules/blocktopmenu/blocktopmenu.tpl

La variable:

 

{$MENU}

Proviene del fichero:


/modules/blocktopmenu/blocktopmenu.php que la prepara con el correspondiente codigo para que luego mandar los valores al TPL

 

Saludos,

 

Link to comment
Share on other sites

Buenas Victor!

 

Ayer a esas horas, después de varias horas buscando código, ya no coordinaba mucho y no me expliqué bien. :wacko:

 

Tenía localizado el PHP al que corresponden los TPL de las plantillas, blocktopmenu.php como bien indicas, pero no encontraba donde se generaba el {$MENU} dentro de su código, porque las clases del <li> que muestra la web no coinciden con las del código. De todas formas, hoy he seguido probando, lo he solucionado, y ahora voy a acabar de hacer pruebas con los distintos formatos de pantalla.

 

Sobre quitar el link de la categoría principal, para que no recargase la página, en la línea 610 del blocktopmenu.php, aparece el siguiente código:

$html .= '<li'.(($this->page_name == 'category' && (int)Tools::getValue('id_category') == (int)$category['id_category']) ? ' class="sfHoverForce"' : '').'>';
$html .= '<a href="'.$link.'" title="'.$category['name'].'">'.$category['name'].'</a>';

 

Le he puesto una condición y lo he cambiado por este, donde 'Productos' es el nombre de la categoría principal:

if ($category['name'] == 'Productos'){
	$html .= '<li'.(($this->page_name == 'category' && (int)Tools::getValue('id_category') == (int)$category['id_category']) ? ' class="sfHoverForce"' : '').'>';
	$html .= '<a href="#" onclick="return false;" title="'.$category['name'].'">'.$category['name'].'</a>';
}else{
	$html .= '<li'.(($this->page_name == 'category' && (int)Tools::getValue('id_category') == (int)$category['id_category']) ? ' class="sfHoverForce"' : '').'>';
	$html .= '<a href="'.$link.'" title="'.$category['name'].'">'.$category['name'].'</a>';
}

 

En cuanto a las cabeceras h2 y h3, lo tengo que probar luego pero debería ser símplemente modificando la línea:

$html .= '<a href="'.$link.'" title="'.$category['name'].'">'.$category['name'].'</a>';

por

$html .= '<h2><a href="'.$link.'" title="'.$category['name'].'">'.$category['name'].'</a></h2>';

 

Gracias a ambos.

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...