Améliorer l'affichage public et la gestion des auteurs et traducteurs d'un site SPIP - commentairesAméliorer l'affichage public et la gestion des auteurs et traducteurs d'un site SPIP2022-05-31T09:15:11Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment5110662022-05-31T09:15:11Z<p>Bonjour,<br class="autobr">
Cette merveilleuse contrib pose un problème au passage à PHP 7 car elle contient la fonction « ereg_replace » qui a été supprimée.</p>
<p>Pour éviter d'avoir de gros messages d'erreur sur votre site au passage à PHP 7, il faudra donc la remplacer par « preg_replace » ou « str_replace ». Comme proposé par michel_leble ici : <a href="https://forum.spip.net/fr_275665.html?debut_forums=%40275667#forum275674" class="spip_url spip_out auto" rel="nofollow external">https://forum.spip.net/fr_275665.html?debut_forums=%40275667#forum275674</a></p>Améliorer l'affichage public et la gestion des auteurs et traducteurs d'un site SPIP2008-11-26T14:37:30Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment4104382008-11-26T14:37:30Z<p>Bonjour,</p>
<p>dans mon champ « pseudo ou nom » de spip, j'ai « prénom nom ».<br class="autobr">
Je souhaiterai n'afficher QUE le nom, donc soit le dernier mot, soit le second mot, soit ce qu'il y a après l'espace « ».</p>
<p>j'ai testé vos fonctions en les modifiant selon mes envies mais je n'ai pas réussi à réaliser ce que je veux.</p>
<p>Pouvez vous m'indiquer la procédure à suivre<small class="fine d-inline"> </small>?</p>Améliorer l'affichage public et la gestion des auteurs et traducteurs d'un site SPIP2008-04-07T12:37:10Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment4048682008-04-07T12:37:10Z<p>Allo<small class="fine d-inline"> </small>? Yakelkun<small class="fine d-inline"> </small>?</p>Améliorer l'affichage public et la gestion des auteurs et traducteurs d'un site SPIP2008-03-31T10:06:50Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment4045432008-03-31T10:06:50Z<p>Bonjour,<br class="manualbr">J'ai peut-être mal lu, mais existe-t-il un plugin depuis cette contrib (déjà ancienne), pour classer les auteurs par ordre alphabétique du nom<small class="fine d-inline"> </small>?<br class="manualbr">Cordialement,</p>Compatibilité v 1.8.2.d2007-11-28T12:18:31Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment4005932007-11-28T12:18:31Z<p>je précise que je règle le problème de la même façon dans 1.9.2c :</p>
<div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code> // Ne fait rien
return trim($texte);</code></pre></div>Pb avec critère {tout}2007-11-06T17:05:47Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment3999572007-11-06T17:05:47Z<p>bonjour</p>
<p>contrib installé sur un site 1.9.2c -ça marche très bien <br class="autobr">
mais, là je voudrais ajouter le critère <i>tout</i> pour que tous les auteurs s'affichent dans la liste même s'ils n'ont pas publié d'articles... et du coup ça ne marche plus...<br class="autobr">
j'ai l'impression que du coup ça affiche la liste des auteurs par leur login... ce qui est un peu bizarre</p>
<p>est-ce que j'ai raté quelquechose<small class="fine d-inline"> </small>?</p>
<p>voilà la boucle qui marche : <br class="autobr">
</p> <h2><a href="#URL_AUTEUR" rel='nofollow'><abbr title="prenom)">(#NOM</abbr><abbr title="nom)">(#NOM</abbr></a></h2> <p>et la boucle qui marche plus : <br class="autobr">
</p> <h2><a href="#URL_AUTEUR" rel='nofollow'><abbr title="prenom)">(#NOM</abbr><abbr title="nom)">(#NOM</abbr></a></h2> <p>merci de votre aide</p>
<p>aud</p>Compatibilité v 1.8.2.d2007-09-17T22:22:32Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment3981062007-09-17T22:22:32Z<p>J'ai le même problème avec <strong>SPIP 1.9.2</strong></p>Solution paliative sous SPIP 1.8.2.d2005-10-18T15:30:29Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment3839532005-10-18T15:30:29Z<p>Bonjour,</p>
<p>Je répond à mon message n° 4.<br class="autobr">
J'ai trouvé une solution qui consiste à changer l'option par défaut proposé pour la fonction « harmonise_nom » dans le fichier mes_fonctions.php3.</p>
<p>J'ai utilisé la deuxième option (Ne rien faire) et là ca fonctionne sous SPIP 1.8.2.d.<br class="autobr">
Le troisième choix fonctionne aussi, mais pas les 1<sup class="typo_exposants">er</sup> et 4<sup class="typo_exposants">es</sup>.<br class="autobr">
Il semble que la fonction « ucwords_amelioree » pose problème sous 1.8.2.d<small class="fine d-inline"> </small>?</p>
<p>Un avis là dessus<small class="fine d-inline"> </small>?</p>
<p>Merci</p>
<p>Emmanuel GOBIER</p>Compatibilité v 1.8.2.d2005-10-17T08:20:35Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment3839302005-10-17T08:20:35Z<p>J'ai le même problème avec 1.8.2<sup class="typo_exposants">d</sup></p>> Compatibilité v 1.8.2.d2005-09-10T22:28:08Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment3833602005-09-10T22:28:08Z<p>Curieux. J'utilise cette contrib sur une petite dizaine de sites web (tous sous 1.8.2) sans aucun problème.</p>
<p>Peux-tu me donner l'url de la page où se passe le problème, ainsi que l'url du squelette<small class="fine d-inline"> </small>?</p>Compatibilité v 1.8.2.d2005-09-10T19:14:02Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment3833592005-09-10T19:14:02Z<p>Bonjour,</p>
<p>Bravo pour cette contrib très pratique qui marchait très bien...</p>
<p>Je viens de passer en SPIP 1.8.2.d et malheureusement voilà ce qui s'affiche sur la page :</p>
<p>span style='text-transform : uppercase' span style='text-transform : uppercase' xavier span style='text-transform : uppercase' span style='text-transform : uppercase' span transform : uppercase' style='text-transform : transform : uppercase' uppercase' dupond'</p>
<p>au lieu de : Xavier DUPOND</p>
<p>avec le code qui va bien dans le squelette (ca marchait très bien en 1.8.1)</p>
<p>Ce problème est il arrivé à d'autres, existe'il un « patch »</p>
<p>Merci</p>Une syntaxe plus intuitive<small class="fine d-inline"> </small>?2005-09-07T07:39:48Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment3833172005-09-07T07:39:48Z<p>Une remarque en passant : je me demande s'il ne vaudrait pas mieux promouvoir une autre syntaxe, plus intuitive que l'étoile, pour séparer le nom et le prénom, à savoir :</p>
<p><code class="spip_code spip_code_inline" dir="ltr">Nom, Prénom</code></p>
<p>L'idée m'est venu en lisant <a href="http://digital-web.com/articles/writing_semantic_markup/" class="spip_url spip_out" rel='nofollow external'>http://digital-web.com/articles/wri...</a> : l'idéal est quand même d'avoir des champs lisibles aussi bien par les humains que par les machines.</p>> > apostrophes & barre inverse2005-03-15T16:40:33Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment3796442005-03-15T16:40:33Z<p>C'est une erreur dans les expressions régulières.</p>
<p>Il suffit de rajouter un <code class="spip_code spip_code_inline" dir="ltr">^</code> au début de chaque expression régulière.</p>
<p>Ceci :</p>
<div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>if(strstr(ereg_replace("^(@-|@-|@ |@|#-|#_|# |#)","",$texte),"*"))</code></pre></div>
<p>à la place de ceci :</p>
<div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>if(strstr(ereg_replace("(@-|@-|@ |@|#-|#_|# |#)","",$texte),"*"))</code></pre></div>
<p>François</p>> apostrophes & barre inverse2005-01-17T12:04:41Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment3364852005-01-17T12:04:41Z<p>super avec cette contrib mes auteurs sont joliment classés par nom de famille.<br class="autobr">
J'ai appliqué le patch pour les apostrophes mais il me les remplace par \<br class="autobr">
ex : Machin D'HIVER<br class="autobr">
devient Machin D\HIVER</p>> Améliorer l'affichage public et la gestion des auteurs et traducteurs d'un site SPIP2004-10-30T15:08:47Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment1782662004-10-30T15:08:47Z<p>Effectivement. Le problème est connu (et on le retrouve à d'autres endroits dans spip).</p>
<p>Une solution, pas hyper-élégante, mais qui fonctionne, consiste à remplacer la fonction <code class="spip_code spip_code_inline" dir="ltr">harmonise_noms</code> par la suivante :</p>
<div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>function harmonise_noms($texte) {
return str_replace('&8217;','\'',ucwords_amelioree(strtolower(trim(str_replace("*"," ",str_replace("_"," ",$texte))))));
}</code></pre></div>> Améliorer l'affichage public et la gestion des auteurs et traducteurs d'un site SPIP2004-07-25T20:34:13Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment216592004-07-25T20:34:13Z<p>Une erreur se produise lorsque j'utilise « ' » dans un nom ou prénom, ça devient « &8217; » après l'utilisation du filtre |prenom_nom ou |nom.</p>
<p>e.g.</p>
<p>John O'Farrell->John O&8217;Farrell</p>
<p>Dlawer Ala'Aldeen->Dlawer Ala&8217;Aldeen</p>> Juste une petite paranthèse en trop2004-04-09T10:31:19Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment82042004-04-09T10:31:19Z<p>ok, c'est corrigé</p>> Juste une petite paranthèse en trop2004-04-08T20:17:05Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment81882004-04-08T20:17:05Z<p>C'est exact. Je vais demander à pouvoir corriger cela.</p>
<p>Merci de votre attention</p>> Juste une petite paranthèse en trop2004-04-08T20:01:06Zhttps://contrib.spip.net/Ameliorer-l-affichage-public-et-la#comment81812004-04-08T20:01:06Z<p>D'après moi, il y a une paranthèse en trop juste après <code class="spip_code spip_code_inline" dir="ltr"></BOUCLE_signature></code> dans cette boucle :</p>
<div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code><? $tous_auteurs = auteur_et_auteur('<BOUCLE_signature(AUTEURS){id_article}{par nom}{nom!==^@} {", "}>[(#NOM|prenom|texte_script) ][<span class="nom">(#NOM|nom|texte_script)</span>]</BOUCLE_signature>')); if ($tous_auteurs) echo " par ".$tous_auteurs; ?></code></pre></div>
<p>Sinon bravo et merci pour votre contribution.</p>