Mauvais compte commentaires

Khady_Khady_ Member
août 2010 modifié dans Entraide
Bonjour,

Je suis passé a PluXml 5.0.1 et j'en ai profité pour changer de thème. Mais j'ai un petit probleme avec les commentaires lorsque je suis sur la page d'un billet. Au lieu de m'afficher le nombre total de commentaires sur le billet, il m'affiche le nombre total de commentaires sur l'ensemble du blog.
Je n'ai pas trouvé la solution jusqu'a présent, donc je viens demander ici.

A noter que ce probleme apparait uniquement quand je suis directement dans un billet, sur la page d'acceuil ou lorsque je fais un classement, que ce soit par tag ou categorie, je n'ai pas ce probleme.

Je suppose que vous avez besoin de quelques fichiers, voici donc mon article.php, mon commentaires.php et mon home.php. Si vous avez besoin de plus demandez le moi.

http://louisroche.net/blog si vous voulez jeter un coup d'oeil

Merci d'avance.

article.php
<?php include(dirname(__FILE__).'/header.php'); # On insere le header ?>
<div id="page">
	<?php include(dirname(__FILE__).'/sidebar.php'); # On insere la sidebar ?>
	<div id="content">
		<div class="article">
		<h2 class="title"><?php $plxShow->artTitle(''); ?></h2>
		<p class="info_top">par <?php $plxShow->artAuthor() ?> - le <?php $plxShow->artDate('<span>#num_day/#num_month/#num_year(4)</span>'); ?> -  dans <span class="taglist"><?php $plxShow->artTags(); ?></span> - avec <?php $plxShow->artNbCom(); ?></p>
		<div class="post"><?php $plxShow->artContent(); ?></div>
		<?php $plxShow->artAuthorInfos('<div class="infos">#art_authorinfos</div>'); ?>
		</div>
		<?php include(dirname(__FILE__).'/commentaires.php'); # On insere les commentaires ?>
	</div>
</div>
<?php include(dirname(__FILE__).'/footer.php'); # On insere le footer ?>
commentaires.php
<?php if(!defined('PLX_ROOT')) exit; ?>
<?php # Si on a des commentaires ?>
<?php if($plxShow->plxMotor->plxRecord_coms): ?>
	<div id="comments">
		<h2>Commentaires</h2>
		<?php while($plxShow->plxMotor->plxRecord_coms->loop()): # On boucle sur les commentaires ?>
			<div id="<?php $plxShow->comId(); ?>" class="comment type-<?php $plxShow->comType(); ?>">
				<blockquote>
					<p class="info_comment">Le <?php $plxShow->comDate('#num_day #month #num_year(4)'); ?> <?php $plxShow->comAuthor('link'); ?> a dit :</p>
					<p class="content_com"><?php $plxShow->comContent() ?></p>
				</blockquote>
				<div class="clearer"></div>
			</div>
		<?php endwhile; # Fin de la boucle sur les commentaires ?>
		<?php # On affiche le fil Atom de cet article ?>
		<div class="feed_article"><?php $plxShow->comFeed('atom',$plxShow->artId()); ?></div>
	</div>
<?php endif; # Fin du if sur la prescence des commentaires ?>
<?php # Si on autorise les commentaires ?>
<?php if($plxShow->plxMotor->plxRecord_arts->f('allow_com') AND $plxShow->plxMotor->aConf['allow_com']): ?>
	<div id="form">
		<h2>Ecrire un commentaire</h2>
		<p class="message_com"><?php $plxShow->comMessage(); ?></p>
		<form action="<?php $plxShow->artUrl(); ?>#form" method="post">
			<fieldset>
				<div class="form_left">
					<input name="name" type="text" size="20" value="<?php $plxShow->comGet('name',''); ?>" maxlength="30" />
					<label>Nom</label><br />
					<input name="site" type="text" size="20" value="<?php $plxShow->comGet('site',''); ?>" />
					<label>Site (facultatif)</label><br />
					<input name="mail" type="text" size="20" value="<?php $plxShow->comGet('mail',''); ?>" />
					<label>E-mail (facultatif)</label><br />
				</div>
				<textarea name="content" cols="35" rows="6"><?php $plxShow->comGet('content',''); ?></textarea>
				<div class="clearer"></div>
				<p class="button">
					<?php # Affichage du capcha anti-spam
					if($plxShow->plxMotor->aConf['capcha']): ?>
						<?php $plxShow->capchaQ(); ?> : <input name="rep" type="text" size="10" />
						<input name="rep2" type="hidden" value="<?php $plxShow->capchaR(); ?>" />
					<?php endif; # Fin du if sur le capcha anti-spam ?>
					<span class="buttons"><input type="reset" value="Effacer" />   <input type="submit" value="Envoyer" /></span>
				</p>
			</fieldset>
		</form>
	</div>
<?php endif; # Fin du if sur l'autorisation des commentaires ?>
home.php
<?php include(dirname(__FILE__).'/header.php'); # On insere le header ?>
<div id="page">
	<?php include(dirname(__FILE__).'/sidebar.php'); # On insere la sidebar ?>
	<div id="content">
		<?php while($plxShow->plxMotor->plxRecord_arts->loop()): # On boucle sur les articles ?>
			<div class="article">
				<h2 class="title"><?php $plxShow->artTitle('link'); ?></h2>
				<p class="info_top">par <?php $plxShow->artAuthor() ?> - le <?php $plxShow->artDate('<span>#num_day/#num_month/#num_year(4)</span>'); ?> -  dans <span class="taglist"><?php $plxShow->artTags(); ?></span> - avec <?php $plxShow->artNbCom(); ?></p>
				<div class="post"><?php $plxShow->artChapo(); ?></div>
			</div>
		<?php endwhile; # Fin de la boucle sur les articles ?>
		<?php # On affiche la pagination ?>
		<p id="pagination"><?php $plxShow->pagination(); ?></p>
	</div>
</div>
<?php include(dirname(__FILE__).'/footer.php'); # On insere le footer ?>

Réponses

  • FrédéricFrédéric Member
    août 2010 modifié
    Bonsoir Khady_,

    En effet ton bogue et étrange et t'avoue ne pas avoir réussi à le reproduire sur mon serveur.

    Je vois que tu as appliquer le "fix" du count dans ta boucle des commentaires, que j'ai aussi essayé.

    Le plus étonnant et que le compteur reste à 166 commentaires peux importe le nombre réelle indiqué °_°

    Je laisse donc la main...
  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour Khady_

    J'ai le plaisir de t'annoncer que tu viens de mettre en évidence un bug. :)
    Le bug est identifié. J'ai localisé l'origine du problème. Reste plus qu'a le corriger.
    Si la correction est simple et rapide à mettre en place, je la posterai sur le forum, sinon faudra attendre un peu plus, le temps de sortir une mise à jour de PluXml.

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Bon courage alors.
    Et merci pour ces réponses rapides.
Connectez-vous ou Inscrivez-vous pour répondre.