Basil Hawkins
{ Membre hyper-actif }
Messages : 2912
| Changer le nom des catégories des personnes en ligneInformations générales- Description :
- Alors ... Un bien grand titre pour quelque chose d'assez simple.
En effet, si vous souhaitez modifier cette phrase: "Il y a en tout x utilisateur(s) en ligne :: x Enregistré(s), x Invisibles(s) et x Invité(s).", voici une méthode.
Edit de 'Christa Ce tutoriel est applicable aux différentes phrases du Qui Est En Ligne à quelques détails près, d'où le changement de titre, voir la FAQ pour plus de détails
RAPPEL : Vous devez être fondateur pour pouvoir éditer les templates
- Démo :
- (Pas de démo)
- Testé sur :
- Firefox, Chrome, Safari, Opera, Internet Explorer
- Crédits :
- Proposé par Basil Hawkins le 28/11/2009 | Basil Hawkins
- Mise(s) à jour :
- Mise à jour le 30/06/2012 par 'Christa Lostmindy
Le tutoriel Bonjour/Soir à toutes et à tous ! Alors tout d'abord, rendez vous dans votre panneau d'administration, onglet Affichage, puis dans le menu Templates cliquez sur Général. Dans la liste qui s'affiche, cliquez sur index_body pour accéder au template. Cherchez la variable de template {TOTAL_USERS_ONLINE} dans le code, et remplacez le par ceci: - Code:
-
<span id="TotalUsersOnline">{TOTAL_USERS_ONLINE}</span> Vous aurez constaté que je viens d'associer l'identifiant ( id ) TotalUsersOnline à cette variable. Notez le bien, on va s'en servir tout de suite. (Vous auriez pu l'appeler toto, tant que vous pensez à utiliser le bon identifiant dans le code qui va suivre) Allez ensuite tout à la fin de votre QEEL, donc juste avant cette ligne : - Code:
-
<!-- END disable_viewonline --> Et rajoutez le script suivant (il pourrait marcher placé n'importe où dans votre forum, mais en fin de QEEL c'est très bien). - Code:
-
<script type="text/javascript"> document.getElementById('TotalUsersOnline').innerHTML=document.getElementById('TotalUsersOnline').innerHTML.replace(/utilisateur en ligne/,"personne présente sur le forum"); document.getElementById('TotalUsersOnline').innerHTML=document.getElementById('TotalUsersOnline').innerHTML.replace(/utilisateurs en ligne/,"personnes présentes sur le forum"); document.getElementById('TotalUsersOnline').innerHTML=document.getElementById('TotalUsersOnline').innerHTML.replace(/Enregistré/,"Pubeur"); document.getElementById('TotalUsersOnline').innerHTML=document.getElementById('TotalUsersOnline').innerHTML.replace(/Enregistrés/,"Pubeurs"); document.getElementById('TotalUsersOnline').innerHTML=document.getElementById('TotalUsersOnline').innerHTML.replace(/Invisible et/,"Timide,"); document.getElementById('TotalUsersOnline').innerHTML=document.getElementById('TotalUsersOnline').innerHTML.replace(/Invisibles et /,"Timides,"); document.getElementById('TotalUsersOnline').innerHTML=document.getElementById('TotalUsersOnline').innerHTML.replace(/Invité/,"étranger"); document.getElementById('TotalUsersOnline').innerHTML=document.getElementById('TotalUsersOnline').innerHTML.replace(/Invités/,"étrangers"); </script> Dans ce script, chaque ligne remplace en fait un bout de texte par un autre. Il est donc très important de respecter le texte de départ à la virgule près. - Petite explication technique pour les intéressés, par 'Christa Lostmindy:
Chaque ligne est de la forme suivante : - Code:
-
document.getElementById('IDENTIFIANT').innerHTML=document.getElementById('IDENTIFIANT').innerHTML.replace(/TEXTE A REMPLACER/,"TEXTE DE REMPLACEMENT"); le bout document.getElementById('TotalUsersOnline').innerHTML désigne en fait tout ce qui a l'identifiant TotalUsersOnline. C'est à dire, si vous avez bien suivi, notre variable de template {TOTAL_USERS_ONLINE} . Du coup, si on traduit, chaque ligne dit : {TOTAL_USERS_ONLINE} = {TOTAL_USERS_ONLINE} en remplaçant TEXTE A REMPLACER par TEXTE DE REMPLACEMENT {TOTAL_USERS_ONLINE} est une variable, c'est le x dans une équation mathématique. Elle contient ce que vous lui demandez de contenir, ici on fait deux opérations en une seule ligne : D'abord, on prend le contenu de notre variable et on remplace une série de caractères par une autre dans notre variable Ensuite, on stocke le résultat de cette opération dans la variable de départ
Ici la phrase sera donc: " Il y a en tout ... personne(s) présente(s) sur le forum :: ... Pubeur(s), ... Timide(s), ... étranger(s)" N'oubliez de mettre au pluriel ce que vous voulez mettre (1 ligne au singulier, 1 au pluriel juste en-dessous) Une fois que vous avez fini vos modifications, enregistrez votre template. Une fois revenu sur la liste des templates, pensez à publier celui que vous venez de modifier en cliquant sur le petit "+" vert. En espérant que ce tutoriel vous ait aidé, Basil Hawkins. |
Dernière édition par Basil Hawkins le Mar 21 Sep 2010, 12:34, édité 1 fois | |
|
Kaiji
Blanche-Neige
Messages : 5578
| FAQ Et comment faire pour mettre cette modification sur le portail ? Il suffit de modifier les templates des modules Comment fait-on pour modifier les autres phrases du Qui Est En Ligne ? Vous n’avez qu’à entourer chaque variable de template souhaitée par un span pour lui donner un identifiant unique : - Code:
-
<span id="TotalMembres">{TOTAL_USERS}</span> - Code:
-
<span id="DernierInscrit">{NEWEST_USER}</span> - Code:
-
<span id="TotalMessages">{TOTAL_POSTS}</span> Ensuite ajoutez ces lignes à la suite du script donné dans le tuto, juste avant la balise < / script > : - Code:
-
document.getElementById('totalmembres').innerHTML=document.getElementById('totalmembres').innerHTML.replace(/expression a remplacer/,"expression de remplacement");
document.getElementById('dernierutilisateur').innerHTML=document.getElementById('dernierutilisateur').innerHTML.replace(/expression a remplacer/,"expression de remplacement");
document.getElementById('totalmessages').innerHTML=document.getElementById('totalmessages').innerHTML.replace(/expression a remplacer/,"expression de remplacement"); Évidemment, la ligne complète (de "document" au point virgule) est à répéter autant de fois qu'il y a d'éléments à remplacer, d'une part, et l' identifiant contenu dans les deux occurrences de getElementById('identifiant') est à remplacer par l' identifiant que vous avez donné à l'élément de template que vous voulez modifier (via le < span id="identifiant" > ) Pour info, {TOTAL_USERS} affiche "nous avons ... membre(s) enregisté(s)" (avec gestion du pluriel); {NEWEST_USER} affiche "L'utilisateur enregistré le plus récent est ....." ; {TOTAL_POSTS} affiche "Nos membres ont posté un total de ... messages" (avec gestion du pluriel aussi) Note : la variable des anniversaires et celle des utilisateurs connectés pendant les dernières 24h ne sont pas modifiables. Les "utilisateurs en ligne" sont dans une taille plus grande qu'habituellement, que faire ? Il manque peut-être la classe gensmall ou bien un span est mal fermé. Il y a un "S" qui s'installe sans qu'il soit noté dans les codes, ni quelque part dans ma part de code. Pourquoi et comment l'enlever? Vous avez un S à la fin car le code met automatiquement un S pour marquer le pluriel. Donc par défaut il la met à la fin de votre phrase ! Pensez à prendre en compte le mot au pluriel quand vous faites vos modifications. Comment on fait quand il y a des éléments composés ? Tel que "Nous avons 2 membres enregistrés" Pour écrire avant ET après ? Il suffit de les mettre dans deux différentes lignes comme ceci : - Code:
-
document.getElementById('TACLASSE').innerHTML=document.getElementById('TACLASSE').innerHTML.replace(/Nous avons/,"NOUVELLE EXPRESSION");
document.getElementById('TACLASSE').innerHTML=document.getElementById('TACLASSE').innerHTML.replace(/membres enregistrés/,"NOUVELLE EXPRESSION"); Pour toute question sur ce tutoriel, merci de poster une demande d'aide ici : http://www.css-actif.com/f17-aide-css-xhtml | | |
|
Shinoriki
{ Membre }
Messages : 19
| |
Tengo Invité
| Et comment modifier le texte "Qui est en ligne" en lui même ? Par exemple par "Quel scrofa est en ligne" ? | | |
|