Programmation SPIP

Tri des documents par nom de fichier (St-Brieuc)

mardi 8 décembre 2015
  par  Philippe Giron
popularité : 17%
0 vote

La paroisse de Saint-Brieuc a eu besoin d’afficher des listes de documents par ordre alphabétique soit par le titre, soit par le nom du fichier si le titre n’existe pas.

  Sommaire  

Il est nécessaire de changer le mode d’affichage, défini dans la noisette
/noisette/documents/ind_documents_joints.html.

L’affichage par défaut affiche l’icône du document et son titre. Si le titre n’existe pas on affiche le format et le poids du document.
Dans notre cas il faut :

  • Ne pas afficher les icônes, pour avoir simplement des listes
  • Afficher :
    • Soit le titre du document s’il existe
    • Soit le nom du fichier avec le traitement suivant :
      • Remplacement du séparateur « _ » par un espace
      • Mise en majuscule du tout premier caractère, car les majuscules sont triées avant les minuscules.
        Exemple d'affichage des documenst triés
        Exemple d’affichage des documenst triés

 Procédure

On ajoute le suffixe de la rubrique au nom du fichier pour que la modification ne s’applique qu’à cette branche (la rubrique et ses enfants).

On remplace le code par le suivant

 Explications

Le <div> sert uniquement pour l’affichage particulier.

  • On défini le tableau, appelé table : [(#SET{table, #ARRAY})]
  • On crée une boucle qui va lire tous les documents -pas les images !) de l’article (les documents sont nécessairement dans des articles)
  • On initialise le champs nom : [(#SET{nom,...
    • soit par le titre, mis en conformité avec les flux #TITRE|texte_backend
    • soit par le nom du fichier sans l’extension sinon{#FICHIER|basename{.#EXTENSION}
      dans lequel on remplace les « _ » par des espaces replace{_," "}
      et en mettant en majuscule la première lettre de la chaîne ucfirst
      Ce qui donne
  • On initialise le champs lien par l’URL du document
  • On remplit le tableau avec ces valeurs
  • Puis on imprime le tableau trié

Commentaires

Bouton Facebook Bouton Contact image Jésus


Bannière denier

Facebook

Facebook

Facebook

Agenda

<<

2017

 

<<

Octobre

 

Aujourd’hui

LuMaMeJeVeSaDi
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345
Aucun évènement à venir les 6 prochains mois