En partant d'une boucle auteur, est ce qu'il est possible de sélectionner le nom puis le prénom d'un auteur et d'inverser l'ordre a l'affichage
CoMme cela je pourrais entrer le nom et le prénom d'un auteur, garder ce classement alphabétique tout en affichant prénom+nom
J'imagine qu'il faut utiliser regex mais je n'y connais pas grand chose
---- gilles klein ----
Le 28 mars 09 à 04:10, gk a écrit :
En partant d'une boucle auteur, est ce qu'il est possible de sélectionner le nom puis le prénom d'un auteur et d'inverser l'ordre a l'affichage
CoMme cela je pourrais entrer le nom et le prénom d'un auteur, garder ce classement alphabétique tout en affichant prénom+nom
Claude
J'imagine qu'il faut utiliser regex mais je n'y connais pas grand chose
---- gilles klein ----
denisb1
(denisb)
Mars 28, 2009, 11:53
3
dlatr a écrit :
Le 28 mars 09 à 04:10, gk a écrit :
En partant d'une boucle auteur, est ce qu'il est possible de sélectionner le nom puis le prénom d'un auteur et d'inverser l'ordre a l'affichage
Filtre swap - SPIP-Contrib
si on choisit de séparer le nom du prénom par une virgule lors de la création/modification de l'auteur, on peut alors, dans la boucle AUTEURS, récupérer chaque élément avec :
[prénom : (#NOM|match{(.+?),(.+?), U, 2}|?{
[<br>nom : (#NOM|match{(.+?),(.+?), U, 1})]
,
#NOM
})]
denisb1
(denisb)
Mars 28, 2009, 12:23
4
denisb a écrit :
[prénom : (#NOM|match{(.+?),(.+?), U, 2}|?{
hum...
plutôt :
[(#NOM|match{'^(.+?),(.+?)$'}|?{
[prénom : (#NOM|match{'(.+?),(.+?)', U, 2})]
[<br>nom : (#NOM|match{'(.+?),(.+?)', U, 1})]
,
#NOM
})]
(voilà)
denisb a écrit :
dlatr a écrit :
Le 28 mars 09 à 04:10, gk a écrit :
En partant d'une boucle auteur, est ce qu'il est possible de
sélectionner le nom puis le prénom d'un auteur et d'inverser l'ordre
a l'affichage
Filtre swap - SPIP-Contrib
si on choisit de séparer le nom du prénom par une virgule lors de la
création/modification de l'auteur, on peut alors, dans la boucle
AUTEURS, récupérer chaque élément avec :
[prénom : (#NOM|match{(.+?),(.+?), U, 2}|?{
[<br>nom : (#NOM|match{(.+?),(.+?), U, 1})]
,
#NOM
})]
Ce que le filtre swap peut faire d'autres filtres peuvent le faire:
Par exemple [(NOM|prénom)] ou [(#NOM|nom)]
Dans mes_fonctions.php:
// Filtre swap (Nom, Prénom -> Prénom Nom)
function swap($texte){
$pieces=explode(",",$texte);
if(count($pieces)==2){
$return=$pieces[1]." ".$pieces[0];
}
else $return=$texte;
return $return;
}
// Filtre nom
function nom($texte){
$pieces=explode(",",$texte);
if(count($pieces)==2){
$return=$pieces[0];
}
else $return=$texte;
return $return;
}
// Filtre prenom
function prenom($texte){
$pieces=explode(",",$texte);
if(count($pieces)==2){
$return=$pieces[1];
}
else $return=$texte;
return $return;
}
FDM