Jump to content

Trier les tag par ordre alphabétique


Recommended Posts

Bonsoir, j'ai inclu sur mes pages produits les tag des articles mais impossible de trouver comment les trier par ordre alphabétique.

J'ai regarder dans tag.php mais même en mettant les ORDER BY en ORDER BY pl.name ASC ça ne marche pas.

 

Quelqu'un peut'il m'aider?

 

Merci

Link to comment
Share on other sites

Bonjour,

 

Vous avez ajouté votre clause ORDER BY sur quelle fonction de la class Tag ?

 

Je vous conseille de passer par un override pour éviter de perdre vos modifications lors de vos mises à jour.

Link to comment
Share on other sites

Je n'ai pas ajouté de clause ORDER BY car je ne sais pas sur quelle fonction le tri doit ce faire.

 

J'ai essayé de changer ORDER BY times DESC de la fonction getMainTags et ORDER BY pl.name de la fonction getProducts mais sans succès.

Link to comment
Share on other sites

Oh...... Merci ça marche. J'avais bien exploré cette piste mais je ne mettais pas les parenthèse au bon endroit.

Voici le code correct:

public static function getProductTags($id_product)
	{
	 	if (!$tmp = Db::getInstance(_PS_USE_SQL_SLAVE_)->executeS('
		SELECT t.`id_lang`, t.`name`
		FROM '._DB_PREFIX_.'tag t
		LEFT JOIN '._DB_PREFIX_.'product_tag pt ON (pt.id_tag = t.id_tag)
		WHERE pt.`id_product`='.(int)$id_product.'
		ORDER BY t.`name`'))
	 		return false;
	 	$result = array();
	 	foreach ($tmp as $tag)
	 		$result[$tag['id_lang']][] = $tag['name'];
	 	return $result;
	}
Link to comment
Share on other sites

  • 2 months later...

Bonjour,

Je me permets de revenir sur votre post parce que j'ai un problème de tri moi aussi. Et vous semblez mieux maîtriser le sujet que moi.
J'essaie de trier l'affichage des valeurs des caractéristiques du bloc navigation à facettes.

En fait, j'ai créé une caractéristique "Taille" avec les valeurs : Petit / Moyen / Grand. Je les ai créées dans cet ordre, elles ont donc des id croissants. Or, elles s'affichent pas ordre alphabétique sur le front office.

Il doit y avoir un moyen de spécifier un ordre d'affichage par id dans le fichier blocklayered.php, a priori au niveau du code suivant : $sql_query['group'] = 'GROUP BY fv.id_feature_value ';
Mais je n'arrive pas à trouver la bonne méthode.

Auriez-vous une petite idée ?
Merci

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