Les avertissements suivants se sont produits :
Warning [2] Undefined array key 0 - Line: 1640 - File: showthread.php PHP 8.2.18 (Linux)
File Line Function
/inc/class_error.php 153 errorHandler->error
/showthread.php 1640 errorHandler->error_callback
/showthread.php 915 buildtree




Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Module Comments : Astuces en vrac
#1
Bonjour,

Je viens d'utiliser le module "Comments" et je vous laisse quelques infos que j'ai utilisé pour obtenir ce que je voulais.

Tout d'abord, bon c'est dans la doc mais une petite piqure de rappel ne fait pas de mal Wink, en plus du module "Comments" il faut installer les dépendances suivantes :
CGExtensions => 1.9
CGSimpleSmarty => 1.4


Une fois installé il suffit de mettre la balise {cms_module module="comments"} à l'endroit de votre (vos) page(s) où vous voulez voir apparaitre cette fonctionnalité.


Lors du 1er affichage d'une page contenant cette balise j'avais un message d'erreur
Code :
string(170) "Smarty error: [in module_db_tpl:Comments;default_display line 36]: syntax error: unrecognized tag: $smarty.session.Comments.message) (Smarty_Compiler.class.php, line 446)" string(138) "Smarty error: [in module_db_tpl:Comments;default_display line 36]: syntax error: unrecognized tag '' (Smarty_Compiler.class.php, line 590)
Après quelques recherches (il y a un post qui parle de ce problème sur le forum Fr) j'ai trouvé ce message sur le forum anglais : http://forum.cmsmadesimple.org/index.php...562.0.html

C'est une solution temporaire, mais ça fonctionne. Il faut enlever cette partie de code dans le gabarit de "Comments"
Code :
{if isset($smarty.session.Comments.error)}
  {* display an error message from the comments module *}
  <div style="text-size: 1.5em; color: red;">{$smarty.session.Comments.error}</div>
{elseif isset($smarty.session.Comments.message)}
  {* display an optional message from the comments module *}
  <p style="text-size: 1.5em; color: green;">{$smarty.session.Comments.message)}</p>
{/if}
Le format date préconisé dans l'aide de ce module pour avoir un affichage en Fr ne fonctionnait pas chez moi. J'ai contourné en modifiant la balise de la manière suivante : {cms_module module="comments" dateformat="d/m/Y à H:i"}

Je trouvais que l'affichage des commentaires n'était pas très joli. Un peu trop "ramassé", ça manquait d'aération. De plus je voulais qu'ils soient mis en évidence par rapport au reste du texte, donc avec un fond de couleur différent de celui de la page.
Toutes ces modifs se passent dans le gabarit de "Comments". Je vous laisse le mien, à vous d'adapter.
Le principe pour la couleur de fond est d'inclure l'affichage des commentaires dans une table et affecter une couleur de fond à la table.
Dans le gabarit ci-dessous j'ai également enlevé des champs du formulaire qui ne m'intéressaient pas.
Quelques <br /> à droite et à gauche, et au final on obtient quelque chose de plus sympa (enfin, pour moi).

Code :
<div id="comments">

<!-- Start Comments Display Template -->

{if $items}
<table width="100%" border="0" bgcolor="#f6f6f6"><tr><td>
<strong>Commentaires :</strong><br />
<ul>
{/if}
<br />
{foreach from=$items item=entry}
    <li class="{$entry->cssclass}">{if $entry->comment_title}<strong>{$entry->comment_title}</strong><br />{/if}
    {if $entry->comment_author}
            {* note, one could use the $entry->author_email field here, and the smarty mailto tag to generate a mailto link to this author, but it is not done by default. *}
            <strong>{$entry->comment_author}</strong> a écrit le
        {/if}
    {if $entry->author_website}
            <a href="{$entry->author_website}" target="_blank">{$entry->author_website}</a> -
    {/if}
    {$entry->date}<br />
    {$entry->comment_data}
    </li><br />
{/foreach}
{if $items}
</ul>
<br />
</tr></td></table><br />
{/if}

{if FALSE == $errormessage}
{startExpandCollapse id="name" title="$addacomment"}
{else}
{$errormessage}
{/if}
<!--
<h3>{$addacomment}</h3> -->
<br /><br />

{$startform}

{$image}

{if $spamprotect}
{$spamprotectimage}<br />
{/if}


<table>
{if $spamprotect}
    <tr>
        <td>{$entercodetxt}:</td>
        <td>{$inputentercode}</td>
    </tr>
{/if}
    
    <tr>
        <td>{$yournametxt}(*):</td>
        <td>{$inputyourname}</td>
    </tr>
    
    
    <tr>
        <td>{$commenttxt}(*):</td>
        <td>{$inputcomment}</td>
    </tr>
    <tr>
        <td> </td>
        <td>{$submit} {$cancel}</td>
    </tr>
</table>


{$endform}
(version de CMSMS 1.5.4 hébergement 1&1)
==> Merci de marquer [Résolu] dans le titre de votre message lorsque une solution a été trouvée <==

Mint 17
Répondre


Messages dans ce sujet

Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)