Jump to content

(Solucionado) Ordenar modulo Homepage categories


Recommended Posts

Buenas,

 

Estoy intentando cambiar el orden en el que muestra las categorías el modulo homepage categories (este: http://www.prestasho...egories-module/) pero no se como puedo ordenarlo manualmente, ya que lo ordena automáticamente, y ni siquiera coge el orden que tienen las categorías en el back office, alguien sabe como puedo hacer para ordenarlo?

 

Gracias de antemano

Edited by NexusLance (see edit history)
Link to comment
Share on other sites

Estoy mirando el .php, e encontrado este trozo de codigo

 SELECT c.*, cl.*
 FROM `'._DB_PREFIX_.'category` c
 LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category` AND `id_lang` = '.$id_lang.')
 LEFT JOIN `'._DB_PREFIX_.'category_group` cg ON (cg.`id_category` = c.`id_category`)
 WHERE level_depth > 1 And level_depth < 3
 AND c.`active` = 1
 AND cg.`id_group` = '.$id_group.'
 ORDER BY `level_depth` ASC, c.`position` ASC');

 

Supongo que la ultima linea es la que indica el orden, como se le tendria que indicar que siga el orden que esta puesto en el back office?

Link to comment
Share on other sites

si lo quieres ordenar alfabéticamente sería

 

SELECT c.*, cl.*

FROM `'._DB_PREFIX_.'category` c

LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category` AND `id_lang` = '.$id_lang.')

LEFT JOIN `'._DB_PREFIX_.'category_group` cg ON (cg.`id_category` = c.`id_category`)

WHERE level_depth > 1 And level_depth < 3

AND c.`active` = 1

AND cg.`id_group` = '.$id_group.'

ORDER BY `cl.name` ASC);

Link to comment
Share on other sites

Estoy mirando el .php, e encontrado este trozo de codigo

 SELECT c.*, cl.*
 FROM `'._DB_PREFIX_.'category` c
 LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category` AND `id_lang` = '.$id_lang.')
 LEFT JOIN `'._DB_PREFIX_.'category_group` cg ON (cg.`id_category` = c.`id_category`)
 WHERE level_depth > 1 And level_depth < 3
 AND c.`active` = 1
 AND cg.`id_group` = '.$id_group.'
 ORDER BY `level_depth` ASC, c.`position` ASC');

 

Supongo que la ultima linea es la que indica el orden, como se le tendria que indicar que siga el orden que esta puesto en el back office?

 

¿Por posicion o por orden alfabetico?

Link to comment
Share on other sites

Lo quería ordenar por posición, al final tocando el codigo y mirando la base de datos e echo un apaño en el codigo:

SELECT c.*, cl.*
 FROM `'._DB_PREFIX_.'category` c
 LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category` AND `id_lang` = '.$id_lang.')
 LEFT JOIN `'._DB_PREFIX_.'category_group` cg ON (cg.`id_category` = c.`id_category`)

 LEFT JOIN `'._DB_PREFIX_.'category_shop` cs ON (cs.`id_category` = c.`id_category`)
 WHERE level_depth > 1 And level_depth < 3
 AND c.`active` = 1
 AND cg.`id_group` = '.$id_group.'
 ORDER BY `level_depth` ASC, cs.`position` ASC');

 

No se si es la mejor solución, pero funciona, y lo e probado, y si modifico el orden en el back office en el modulo también se modifica. Gracias por la ayuda!

Link to comment
Share on other sites

Lo quería ordenar por posición, al final tocando el codigo y mirando la base de datos e echo un apaño en el codigo:

SELECT c.*, cl.*
 FROM `'._DB_PREFIX_.'category` c
 LEFT JOIN `'._DB_PREFIX_.'category_lang` cl ON (c.`id_category` = cl.`id_category` AND `id_lang` = '.$id_lang.')
 LEFT JOIN `'._DB_PREFIX_.'category_group` cg ON (cg.`id_category` = c.`id_category`)

 LEFT JOIN `'._DB_PREFIX_.'category_shop` cs ON (cs.`id_category` = c.`id_category`)
 WHERE level_depth > 1 And level_depth < 3
 AND c.`active` = 1
 AND cg.`id_group` = '.$id_group.'
 ORDER BY `level_depth` ASC, cs.`position` ASC');

 

No se si es la mejor solución, pero funciona, y lo e probado, y si modifico el orden en el back office en el modulo también se modifica. Gracias por la ayuda!

 

Perfecto !

 

Cierro tema. (Se ve que el modulo no tomaba en cuenta la tabla ps_category_shop)

Link to comment
Share on other sites

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