Changez le mot "commentaire"
Bonjour,
Sur l'affiche de ma home, j'ai mes différents articles.
Je voudrais modifier le mot "commentaires" présent via ce code :
Biensûr, j'aimerais avoir l'info : Nombre de "commentaires" à côté...
Sur l'affiche de ma home, j'ai mes différents articles.
Je voudrais modifier le mot "commentaires" présent via ce code :
<?php $plxShow->artNbCom(); ?>
par un autre mot, comment dois-je procéder ?Biensûr, j'aimerais avoir l'info : Nombre de "commentaires" à côté...
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
à plus,
Gzyg
Merci !
Je l'avais fait pour un thème mais ce n'est pas pratique pour les mises à jour...
à plus,
Gzyg
> Ce n'est pas possible de la réutiliser ?
k6, pas très douée
la fonction $plxShow->artNbCom() ne permet pas une customisation facile car elle est mal pensée.
Je m'en aperçois grâce à ce que tu veux faire.
Peux-tu me donner l'affichage que tu souhaites avoir suivant les cas:: 0 commentaire, 1 commentaire, n commentaires
ça me permettra d'orienter ma réflexion sur comment modifier la fonction pour qu'on puisse personnaliser son affichage.
Merci
Consultant PluXml
Ancien responsable du projet (2010 à 2018)
0 commentaire > 0
1 commentaire > 1
n commentaires > n
Je ne sais pas si ça t'aide... :S
C'est vrai que la langue française n'aide pas avec les pluriels/singuliers.
Consultant PluXml
Ancien responsable du projet (2010 à 2018)
Sinon nikel, merk6 beaucoup !
Consultant PluXml
Ancien responsable du projet (2010 à 2018)
Faut vraiment que j'arrive à devenir autonome sur ces questions...
Merk6 Stéphane (je t'ai copié pour la technique du lien vers la connexion admin )
Effectivement, il y a dans le moteur de PluXml quelques fonctions comme ça qui affichent le texte avec "echo" au lieu de renvoyer une valeur, ce qui empêche de personnaliser l'affichage.
Je crois que c'est le cas aussi pour la fonction qui affiche la liste des articles par catégorie.
Dans le site www.unemesseailleurs.com - page Expression, je voulais afficher "xx messages" au lieu de "xx commentaires", je suis passé par une fonction de remplacement en javascript !
(j'ai pas encore testé ce point)
C'est pour cela que j'étais passé par une fonction javascript. Si on se met à modifier le core, c'est le bazar pour les mises à jour.
Mais la solution donnée par Stéphane est meilleure, elle permet de traiter le problème en PHP en récupérant le nombre de messages et en écrivant le texte qu'on veut à la suite.
Consultant PluXml
Ancien responsable du projet (2010 à 2018)
voilà la nouvelle fonction que je vous propose. pour la mettre en place afin de la tester
1) éditer le fichier core/lib/class.plx.show.php
2) remplacer entièrement la fonction artNbCom par le code suivant (faire une recherche sur artNbCom supprimer celle existante et copier à la place le code suivant)
explications:
cette nouvelle fonction accepte 3 paramètres (pas obligatoire de les renseigner)
paramètre 1 = libellé à afficher si 0 commentaire
paramètre 2 = libellé à afficher si 1 commentaire
paramètre 3 = libellé à afficher si le nombre de commentaire est > 1
la variable #nb permet d'afficher le nombre de commentaire. peut être utiliser dans les 3 paramètres
exemple 1: sans aucun paramètre artNbCom fonctionne comme l'ancienne version
exemple 2: en renseignant les 3 paramètres
sera affiché:
si 0 commentaire: toujours pas de commentaire
si 1 commentaire: un seul commentaire
si >1 commentaire: #nb commentaires où #nb sera remplacé par le nombre de commentaire
nb: si vous ne souhaitez pas afficher de libellé mais juste le nombre de commentaire, mettez #nb comme paramètre
Merci de me faire un retour pour savoir si cela réponds à tous vos besoins
Consultant PluXml
Ancien responsable du projet (2010 à 2018)
Mais je trouve que les fonctions qui affichent un contenu avec "echo" sont moins souples à utiliser que celles qui renvoient une valeur.
Si ce n'était pas trop gênant, on pourrait imaginer une nouvelle fonction, par exemple artValNbCom, qui renverrait la valeur de ce qui est affiché. La fonction artNbCom n'aurait plus qu'à afficher cette valeur :
Ça permettrait d'utiliser le nombre de commentaires pour faire un test (par exemple, affichage d'un bloc avec cadre autour des commentaires seulement s'il y en a, affichage d'une image s'il n'y a pas de commentaires).
On pourrait même imaginer un 4ème paramètre id_article, pour que la fonction affiche le nombre de commentaires de l'article dont on a donné l'id (en utilisant l'article courant si ce paramètre n'est pas fourni).
Ça ferait une fonction plus générale, mais je m'aperçois qu'il n'y a pas d'id_article affiché dans la partie admin, comme pour les pages statiques. Pour tout dire, je ne sais même pas si les articles ont des id, mais si c'est le cas ça pourrait être utile.
C'est pas mal comme idée, mais ce n'est pas le but de la classe plxShow ("montrer"). Toutes ses méthodes (arrêtez-moi si je me trompe), retournent un echo.
La plupart des fonctions de la classe plxShow renvoient un echo, mais il y en a déjà certaines qui retournent une valeur, comme mode(), catId(), artCatId(), staticId().
Une alternative à la création d'une nouvelle fonction artValNbCom serait d'ajouter à la fonction artNbCom un paramètre optionnel $echo, pour demander l'affichage avec $echo=true ou le renvoi d'une valeur avec $echo=false.
Dans la classe plxShow, les fonctions defaultLang, artAuthor et callHook fonctionnent déjà de cette façon. Par exemple pour defaultlang :
Pour certaines fonctions, ce serait bien utile parfois de pouvoir récupérer la valeur et la traiter, au lieu de l'afficher directement.
Je voudrais afficher dans ma sidebar le titre de l'article où a été posté le commentaire à la place du contenu du même commentaire. Est-ce possible ?