Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5

Afficher une liste : classement alphabétique?
#14

évidement, ma proposition court-circuite le principe de gestion des pages :/

donc soit tu affiches les 50 premiers éléments d'une liste bien triée sans notion de pagination possible
soit tu tries les éléments affichés dans une page en conservant la pagination générale

une solution déjà utilisée sur un hack perso de news serait de gérer toi même le n° de page via un paramètre dans l'URL

je te le dit d'avance, ca va générer d'autres questions et d'autres anomalies pour ceux qui sont tatillons comme la perte du n° de la dernière page vue si tu clic sur le détail d'une news avant de cliquer sur retour. A tester en local avant une mise en prod

le principe est donc de générer deux liens (URL courante + un paramètre supplémentaire) que tu afficheras comme étant page précédente et page suivante.

le n° de page récupéré par $param['nom_de_mon_param'] depuis le gabarit de sommaire des news, tu peux le passer à la balise utilisateur et l'utiliser ensuite dans le code précédent :


Citation :global $gCms;
$smarty = &$gCms->GetSmarty();

$liste = $params['liste'];
$nbPage = $params['nbPage'];

/** TRAITEMENT DE TRI PHP A EFFECTUER **/
$listeTriee = $liste;
/** TRAITEMENT DE TRI PHP A EFFECTUER **/


/** http://www.php.net/manual/fr/function.array-chunk.php **/
/** Retourne un tableau multidimensionnel indexé numériquement, commençant à 0, dont chaque dimension contient size éléments. **/
$my_page_limit = 50;
$listeTriee = array_chunk($listeTriee, $my_page_limit);
//On récupère la première page (50 premiers elements)
$listeTriee = $listeTriee [nbPage];

$smarty->assign("sommaire_news",$listeTriee);
le reste est une question d'algo et de réglage
Répondre


Messages dans ce sujet

Atteindre :


Utilisateur(s) parcourant ce sujet : 3 visiteur(s)