Commentaires de l’admin’ “à part” (Créer un compte)

  • Statut : non résolu
15 sujets de 1 à 15 (sur un total de 21)
  • Auteur
    Messages
  • #464975
    Maitre Mo
    Participant
    Maître WordPress
    1653 contributions

    Bonjour Amis du Code,

    Ma configuration WP actuelle
    – Version de WordPress :
    – Thème utilisé :
    – Plugins en place :
    – Nom de l’hebergeur :
    – Adresse du site :

    Problème(s) rencontré(s) : J’utilise pour les commentaires les deux extensions Wp Ajax edit Comments et TinyMCE Comments.
    Or, je n’ai actuellement la possibilité, en tant qu’admin, de répondre à mes commentateurs qu'”à la suite” des précédents commentaires, et s’il y en a trente, je suis le trente-et-unième, et dois répondre aux trente dans le même commentaire…
    J’eusse donc souhaité savoir si vous connaissiez une extension capable de me permettre d’insérer mes commentaires où bon me semblerait, et non pas à la suite des précédents, exemple à la quinzième et la vingt-hutième place, sous ceux concernés…
    Avec cette petite difficulté supplémentaires que mes commentaires sont numérotés, et que les miens, si je peux les insérer ainsi, ne devraient pas pouvoir modifier la numérotation des suivants (à défaut de quoi le mec qui en trente à répondu au “commentaire n°16”, pour mon exemple précédent, aurait en réalité répondu au n°17 vue mon immixtion entre temps, et on n’y comprendrait plus rien, exactement comme moi là maintenant !!!), et que donc soit il faudrait que les commentaires de Mô soient “hors numérotation générale”, soit encore mieux qu’ils aient la leur propre (Mô 1, Mô 2, etc…) et indépendante de la numérotation des commentaires des visiteurs…
    Je ne sais pas si le plugin permettant ça existe, mais à défaut si quelqu’un a idée des bouts de code qu’il faudrait ajouter à comments.php, je prends aussi (une deuxième boucle des commentaires dédiée à l’admin..?) !!
    Hum, j’espère avoir été clair…
    Comme d’hab, la personne adorable qui m’aidera aura droit à une assistance gratuite en cas de meurtre ou braquage, si possible après la commission des faits !
    Merci d’avance..!

    (Mini subsidiaire : Ajax Edit Comments n’affiche plus de compte à rebours pour éditer son commentaire chez moi, et WP-Useronline ne fonctionne plus, m’affichant obstinément que je n’ai aucun visiteur, moi y compris alors que je n’en ai jamais eu autant ! Si vous avez des idées là dessus au passage, je vous aime aussi !)

    #652446
    Lumiere de Lune
    Participant
    Maître WordPress
    19365 contributions

    Attendez la version 2.7 qui sort “maintenant” et qui a la fonctionnalité en natif 🙂

    #652447
    Maitre Mo
    Participant
    Maître WordPress
    1653 contributions

    Bon, merci Lumière de Lune, j’attendrai donc… VIVEMENT !!!
    Et sinon, je viens de m’apercevoir que contrairement à ce que je croyais, le rigolo qui ne tient pas compte, dans mon formulaire de commentaires, de la mention “Adresse Email (requise)”… Peut parfaitement poster son commentaire quand-même, bien que mon code m’indique qu’en principe il ne le devrait pas, et devrait recevoir un message d’erreur !!
    Auriez-vous une idée du bout de code à modifier ou insérer pour que cette ligne soit réellement obligatoire ?
    MERCI !!

    #652448
    zebluesman
    Membre
    Maître WordPress
    546 contributions

    avec Cform tu peux créer un formulaire spécifique de commentaires 😉

    #652451
    Le petit Kopat
    Membre
    Initié WordPress
    14 contributions

    J’avais la même demande que Maitre Mô. Je voulais pouvoir répondre aux commentaires depuis l’admin, que ces réponses soient attachées au commentaire d’origine ET que mes réponses ne soient pas comptées dans le décompte des commentaires (je n’aime pas augmenter artificiellement le nbre de commentaires avec mes réponses).

    La 2.7 fera ça ?

    #652452
    dlo
    Participant
    Maître WordPress
    1850 contributions
    Le petit Kopat wrote:
    La 2.7 fera ça ?

    Et oui ! Et bien plus encore. Cf. le billet du blog du forum.

    #652453
    Zofren
    Participant
    Padawan WordPress
    51 contributions

    Euh … 2.7 installée et à part le fait de pouvoir répondre aux commentaires depuis l’admin, ça ne fait rien que je n’espérais, c’est à dire :

    – Afficher les réponses de l’auteur (ou de l’admin) d’une façon clairement différenciée
    – Lorsqu’on répond à un commentaire, la réponse est attachée au commentaire (graphiquement) ou juste au niveau de l’ordonnancement.
    – Ne pas compter les réponses de l’auteur dans le décompte des commentaires

    #652454
    Lumiere de Lune
    Participant
    Maître WordPress
    19365 contributions

    Pour l’affichage des réponses différenciées, cela se fait avec de nouvelles fonctions WordPress, il faut donc modifier le thème (comments.php)

    #652455
    corimanon
    Participant
    Padawan WordPress
    74 contributions
    Zofren wrote:
    – Afficher les réponses de l’auteur (ou de l’admin) d’une façon clairement différenciée

    Ce plugin de Jessai fait cela très bien : http://wordpress.org/extend/plugins/admin-comment/

    #652456
    Maitre Mo
    Participant
    Maître WordPress
    1653 contributions

    Bon, alors, si j’ai bien compris, mon thème, de base et pas actualisé, n’intègre actuellement aucune des nouvelles fonctions de la 2.7, et il faut aller un peu partout dedans pour l’adapter…
    Vous me connaissez, courageux mais incompétent, j’ai été lire un peu partout comment on pouvait obtenir cette magie, notamment pour les commentaires, afin d’obtenir ce que je souhaitais dans ce thread (Zophren, tu vas voir c’est du dur !), et je suis tombé sur les explications super détaillées données par Papy Geek (Merci à lui !!!)… Mais encore trop complexes pour moi malgré ses géniaux efforts, et par ailleurs écrites avant la sortie de la 2.7 définitive, de telle sorte qu’elles ne sont peut-être plus toutes valides… (J’ai même posté sur le blog de wp-fr en ce sens, une fois n’est pas coutume, tellement ça me semble considérable à effectuer..! Je me dis qu’en emm…ant le maximum de monde avec mes questions, je vais finir par piger..!)
    Donc, si je veux intégrer ces fonctions à mon thème, pouvez-vous me confirmer et peut-être détailler que je dois successivement :

    1/ Intégrer la nouvelle fonction “wp_list_comments“ dans “comments.php”, ainsi :

    if (function_exists(‘wp_list_comments’)) :
    // nouveau code pour comments.php avec wp_list_comments et autre
    else :
    // ancien code pour la retrocompatibilité
    endif;

    Problème : je ne comprends pas ce que je viens d’écrire ! Si quelqu’un sait exactement quel bout de code mettre où…

    2/ Pour la protection des articles par mot de passe des articles, modifier le code en haut du fichier “comments.php” :

    if (!empty($_SERVER[‘SCRIPT_FILENAME’]) && ‘comments.php’ == basename($_SERVER[‘SCRIPT_FILENAME’]))
    	die (‘Please do not load this page directly. Thanks!’);
    if ( post_password_required() ) {
    	echo ‘This post is password protected. Enter the password to view comments.’;
    	return;
    }

    3/ Modifier l’ancienne boucle des commentaires, en passant d’à peu près ça :

    if ($comments) :
    ID); echo $comment_count[‘approved’]; ?> Comments
    <ul class="commentlist">
    </ul>
    comment_status) :
    	// If comments are open, but there are no comments.
    else :
    	// comments are closed
    endif;
    endif;

    à ça, pour lui faire intégrer désormais la fonction “wp_list_comments” :

    if ( have_comments() ) : ?>
    <h4 id="comments"></h4>
    <ul class="commentlist">
    	</ul>
    <div class="navigation">
    <div class="alignleft"></div>
    <div class="alignright">

    comment_status) :
    // If comments are open, but there are no comments.
    else : // comments are closed
    endif;
    endif;

    Ainsi, écrivait l’auteur à l’époque : “have_comments” remplace le “if ($comments)“, “wp_list_comments” remplace la boucle “foreach” et affiche tous les commentaires en y ajoutant les nouvelles fonctions de commentaires imbriqués ainsi que les classes nécessaires pour la feuille de style, et une section de navigation est ajoutée pour les commentaires (comme celle qui existait pour les articles).
    Est-ce bien ça ? (Ca fait tellement longtemps que tout parle de cette boucle que la modifier me fout la trouille !)

    4/ Ajouter le code suivant dans le formulaire de commentaires :

    Hum, bon, mais où..?

    5/ Pour activer les effets Javascript dans les commentaires, ajouter une ligne dans le fichier “header.php” juste avant l’appel à “wp_head()” :

    if ( is_singular() ) wp_enqueue_script( ‘comment-reply’ );

    (J’ai tenté, s’affiche en dur dans mon header, hum…)

    6/ (Je n’ai rien compris à ce point là ) Respecter désormais certaines contraintes, notamment quant au nommage des attributs “id“ : le champ “textarea” du formulaire de commentaires devra avoir un id=”comment”, le formulaire de commentaire devra être encadré par un DIV avec un id=”respond” (au lieu de sur certains thèmes), remplacer “Laisser un commentaire” ou “Leave a Comment” par :

    et pour permettre d’annuler l’ajout d’un commentaire, il faut ajouter un lien de type “cancel”. Dans votre thème juste sous le “comment_form_title“, ajoutez le code :

    <div id="cancel-comment-reply">
          	<small></small>
          </div>

    7/ Enfin, pour la mise en forme du nouveau code, celui-ci disait notre Papy encadre chaque commentaire dans des balises “

  • ” et y ajoute les classes suivantes :

    * Les classes “comment“, “trackback” et “pingback” sont ajoutées en fonction du type de commentaires,
    * “byuser” est ajouté si le commentaire appartient à un utilisateur enregistré,
    * “comment-author-authorname” est ajouté pour des utilisateurs enregistrés spécifiques,
    * “bypostauthor” est ajouté si le commentaire appartient à l’auteur de l’article,
    * “odd” et “even” sont ajoutés pour les commentaires paires et impaires,
    * “alt” est ajouté pour tous les autres commentaires,
    * “thread-odd“, “thread-even“, et “thread-alt” fonctionnent comme odd/even/alt classes, mais sont appliqués uniquement aux commentaires de plus haut-niveau dans l’imbrication des commentaires (donc pas aux replys),
    * “depth-X” est appliqué au niveau X de commentaires (commentaires imbriqués).

    8/ Tant qu’à lui “emprunter” son boulot d’alors autant être complet :

    Pour la séparation des Trackbacks et des commentaires, il préconisait de partir de la nouvelle boucle des commentaires :

    
    	<h3 id="comments"> to ““</h3>
     
    	<ol class="commentlist">
    	
    	</ol>
    	<div class="navigation">
    		<div class="alignleft"></div>
    		<div class="alignright"></div>
    	</div>
    
     
    	comment_status) : ?>
    		<!-- If comments are open, but there are no comments. -->
     
    	
    		<!-- If comments are closed. -->
    		<p class="nocomments">Comments are closed.</p>
     
    	

    et :
    – d’effectuer une première modification dans le fichier “single.php”, où vous devrez remplacer cette ligne:

    Par celle-ci :

    ,

    cette fonction “comments_template” permetant de créer une variable globale “$comments_by_type” qui sera utilisée par la suite.

    – de modifier “comments.php” pour qu’il ressemble à ça :

    
    	
    	<h3 id="comments"> to “”</h3>
     
    	<ol class="commentlist">
    	
    	</ol>
    	
     
    	
    	<h3 id="pings">Trackbacks/Pingbacks</h3>
     
    	<ol class="commentlist">
    	
    	</ol>
    	
     
    	<div class="navigation">
    		<div class="alignleft"></div>
    		<div class="alignright"></div>
    	</div>
     
     
    	comment_status) : ?>
    		<!-- If comments are open, but there are no comments. -->
     
    	
    		<!-- If comments are closed. -->
    		<p class="nocomments">Comments are closed.</p>
     
    	

    Les trackbacks étant alors affichés séparement mais comme de vrais commentaires. (Et pour les afficher simplement sous forme de liste,possible de modifier “functions.php” pour y ajouter la fonction suivante :

    
            <li id="comment-“>

    )

    La boucle des commentaires devant être adaptée ainsi :

    
    	
    	<h3 id="comments"> to “”</h3>
     
    	<ol class="commentlist">
    	
    	</ol>
    	
     
    	
    	<h3 id="pings">Trackbacks/Pingbacks</h3>
     
    	<ol class="pinglist">
    	
    	</ol>
    	
     
    	<div class="navigation">
    		<div class="alignleft"></div>
    		<div class="alignright"></div>
    	</div>
     
     
    	comment_status) : ?>
    		<!-- If comments are open, but there are no comments. -->
     
    	
    		<!-- If comments are closed. -->
    		<p class="nocomments">Comments are closed.</p>
     
    	

    Dernière chose, si souhait de modifier le compteur des commentaires pour ne pas compter les pings, ajouter le code suivant dans “functions.php” :

    Voilà, il avait effectué un sacré boulot déjà, et je suis désolé de le citer autant, mais je ne trouve pas d’autres sources, et je voulais demander ici à tous si ces modifs sont effectivement à faire, si tout y est, et si des précisions peuvent être ajoutées, notamment quant aux endroits précis où insérer ces éléments…
    Parce que moi, je suis vraiment trop naze en code pour faire tout ça tout seul..!

#652450
Lumiere de Lune
Participant
Maître WordPress
19365 contributions

Question con … et en allant voir la tête du fichier correspondant dans les thèmes par défaut qui ont dû être actualisés ?

#652449
Maitre Mo
Participant
Maître WordPress
1653 contributions

Oui, j’y ai pensé (on dort peu tous les deux !!), mais j’ai trop de mal à lire le php, et à force d’ajouts mon code à moi me semble toujours beaucoup plus compliqué que celui des thèmes pas défaut… Mais bon, les vacations arrivent, je prendrai le temps d’essayer vraiment, quitte à planter le bouzin, ça je sais remettre au moins..!
Là c’est sur un thème qui n’a qu’une version et n’évolue pas je pense; mais sur le blog principal, je crois que l’auteur fait évoluer sa version, je vais voir…
Merci en tout cas, et bon courage aujour’hui..!

#652457
jessai
Membre
Chevalier WordPress
112 contributions

Maître mô pas besoin de tout modifier.

il faut forcement que tu integres la fonction wp_list_comments dans ton comments.php (le 1) de ton post es tiutile dans ton cas a moins que tu envisages de mettre a disposition ton theme).

Ensuite.

si tu veux integrer la mise en valeur de tes commentaires :
wp_list_comments integre des class css predefinies (le nom seulement).
la class pour l’auteur est bypostauthor, il te suffit de rajouter une class .bypostauthor dans ton css et automatiquement tes commentaires seront differenciers. Comme la dit Corimanon plus haut j’ai ecrit un plugin qui le fait, le code est simple, dans l’administration on defini la couleur pour un commentaire.

pour l’imbrication des commentaires j’ai pas regardé.

Il faut d’abord que tu modifies ton comments.php pour qu’il integre la fonction wp_list_comments.
ensuite mettre en valeur tes commentaires (c’est simple)

si tu veux tu me passes en mp ton theme modifié, ce que tu voudrais obtenir, je peux essayer de debrousailler.

#652458
Maitre Mo
Participant
Maître WordPress
1653 contributions

Jessai, soit tu as récemment commis un crime et tu recherches un avocat gratos, soit c’est, vraiment, très gentil !
Je t’adresse mon thème par mp, effectivement, tant pis pour toi fallait pas proposer !!
En fait ce que je recherche est exactement ce que j’ai tenté de demander plus haut (mis à part la différenciation de mes commentaires d’admin, ça c’est un truc déjà en vigueur sur mon site, j’ai su !) : mettons que j’ai 40 commentaires sur un post : pouvoir répondre au n° 21 et que ça s’affiche entre le 21 et le 22, mettons avec le n° 1-Mô, par exemple, et sans pour autant que les n° suivants ne soient modifiés (car si le 24 dit qu’il commente le 23, mon propre commentaire ne doit pas en s’insérant transformer le 23 en 24 !!).
J’espère que je m’explique correctement…
Je t’envoie ça, et ma reconnaissance anticipée !

#652459
jessai
Membre
Chevalier WordPress
112 contributions

Tu es encore en 2.6.5 .

ca va etre costaud. passes moi ton theme entier que je puisse tester en 2.7.

15 sujets de 1 à 15 (sur un total de 21)
  • Vous devez être connecté pour répondre à ce sujet.