SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

286 Plugins, 197 contribs sur SPIP-Zone, 234 visiteurs en ce moment

Accueil > Navigation > Tris Alphabétiques > Filtre swap

Filtre swap

22 juillet 2008 – par Bernt – commentaires

3 votes

Objectif

Vous désirez classer vos auteurs par ordre alphabétique, vous avez une bibliothèque et vous utilisez les mots clés pour indexer les auteurs, ce filtre est pour vous.

En effet, jusqu’à présent, pour classer des auteurs par ordre alphabétique, nous n’avions qu’un moyen. Dans les champs #NOM de la table auteur et #TITRE de la table mot clé, il fallait saisir les noms ainsi : NOM, PRENOM si on voulait ensuite les classer par ordre alphabétique. Ex la boucle

<BOUCLE_nom(AUTEURS){par nom}>
#NOM
</BOUCLE_nom>

affichait les auteurs ainsi :
Abasolo, José Javier
Abbey, Edward
Abbott, Jeff

C’était un beau classement sauf que le sens de lecture normal est prénom nom et que les internautes saisissent ainsi leur requête sur google.

Confronté à ce problème, j’ai demandé à mon prof de php, le génial CM, de m’aider à écrire une petite fonction qui permette de transformer lors de l’affichage Abbot, Jeff en Jeff Abbot.

Cette contrib comprend la fonction à copier dans votre fichier mes_fonctions.php et deux exemples de boucle.

Code à copier dans le fichier mes_fonctions.php

function swap($texte){
 $pieces=explode(",",$texte);
 if(count($pieces)==2){
   $return=$pieces[1]." ".$pieces[0];
 }
 else $return=$texte;
 return $return;
}

exemples de boucle

Dans le champ #NOM vous saisissez NOM, PRENOM. La virgule permettra au filtre d’inverser l’affichage du champ en PRENOM NOM

Pour trier les auteurs de votre site

<BOUCLE_nom(AUTEURS){par nom}>
[(#NOM|swap)]
</BOUCLE_nom>

Pour trier des mots clés qui seraient des auteurs de roman

<BOUCLE_mot(MOTS){id_groupe=2}{par titre}>
[(#TITRE|swap)]
</BOUCLE_mot>

Amusez-vous bien !

Dernière modification de cette page le 22 juillet 2008

Retour en haut de la page

Vos commentaires

  • Le 16 décembre 2014 à 12:33, par lio En réponse à : Filtre swap

    Voici une version adaptée au formatage scientique des publications :
    change un nom tel que :

    Virgo-Pidou Bernadette
    en
    Virgo-Pidou B

    1. function nompublication($texte){
    2. $pieces=explode(" ",$texte);
    3. $pieces[1]=substr($pieces[1],0,1);
    4.  
    5. if(count($pieces)==2){
    6. $return=$pieces[0].", ".$pieces[1];
    7. }
    8. else $return=$texte;
    9. return $return;
    10. }

    Télécharger

    Encore améliorable : pour les prénoms composés : garder la majuscule de chaques parties et séparer avec un tiret mais pour moi ça me suffit pour le moment

    Répondre à ce message

  • Le 28 octobre 2009 à 23:36, par Erwan En réponse à : Filtre swap

    Une petite extension dont j’ai eu besoin qui permet d’afficher une liste d’auteurs séparés par des ’and’ (genre, comme on trouve dans les entrées bibtex) :

    swap_all($texte) {
    $pieces=explode("and",$texte);
    $res=array_map("swap",$pieces);

    $res=implode(',',$res);
    return $res;
    }

    Répondre à ce message

  • Le 6 février 2009 à 23:41, par vianatalia En réponse à : Filtre swap

    Ça marche comme sur des roulettes : merci !

    Il faudrait peut-être mentionner qu’il faut aller chercher /dist/modeles/lesauteurs.html, l’enregistrer dans /squelettes/modeles/lesauteurs.html, et ajouter le filtre swap à la balise #NOM comme partout dans les autres squelettes ?

    Répondre à ce message

  • Le 15 octobre 2008 à 00:19, par BS En réponse à : Filtre swap

    et que le filtre swap est très pratique.

    Répondre à ce message

  • Le 22 juillet 2008 à 11:41, par ? En réponse à : Filtre swap

    La même chose existe depuis longtemps en beaucoup plus complet http://www.spip-contrib.net/Amelior...

    • Le 14 octobre 2008 à 14:56, par Philippe Giron En réponse à : Filtre swap

      Sauf que la contribution citée ci-dessous est déjà (assez) ancienne et que les auteurs ne répondent pas aux questions qu’on peut leur poser... snif...

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?
  • [Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Mailsubscribers

    16 janvier 2013 – 274 commentaires

    Ce plugin permet de gérer les inscriptions (ou abonnements) à la diffusion de contenu par email. Mailsubscribers permet de gérer les inscriptions par Opt-in simple ou double et la désinscription par URL. Ce plugin gère également plusieurs listes (...)

  • noiZetier v2

    9 novembre 2012 – 36 commentaires

    Le noiZetier offre une interface d’administration permettant d’insérer au choix des éléments modulaires de squelettes (noisettes) et de les ajouter ainsi à ses squelettes. Compatibilité La version 2 du noizetier fonctionne sous SPIP 3. Elle est (...)

  • cirr : plugin « rédacteur restreint »

    29 octobre 2010 – 60 commentaires

    Ce plugin « cirr : rédacteur restreint » permet d’affecter des rubriques aux rédacteurs et modifie les droits afin qu’un rédacteur restreint (ou un administrateur restreint) voit dans l’espace privé uniquement les rubriques qui lui sont affectées (et leur (...)

  • Un retour d’expérience d’utilisation de Formidable

    26 octobre – commentaires

    Il s’agissait de créer un formulaire d’inscription à un évènement modérer les inscriptions dans le privé publier les inscriptions dans le public Nous avons discuté de cette présentation lors de l’apéro SPIP du 15 février 2016 à la Cantine (...)

  • Métas +

    3 décembre – 14 commentaires

    Améliorez l’indexation de vos articles dans les moteurs et leur affichage sur les réseaux sociaux grâce aux métadonnées Dublin Core, Open Graph et Twitter Card. Installation Activer le plugin dans le menu dédié. Dans le panel de configuration, (...)

Ça spipe par là