lavoielibre.fr hébergeur français, éthique et libre

Enfin un hébergeur français qui propose de l’hébergement web pur en mode mutualisé. Il s'agit d'un concept initié par moi-même Stéphane Tortelier-Gambirasio alias petitpouyo.

Mon projet vise essentiellement les internautes qui cherchent à garder le contrôle de leur empreintes numériqu...

Afficher la suite...


La Voie Libre, hébergeur français éthique et libre

Affichage facilité des adresses e-mail du système de commentaire PluXml

URédigé par Petit Pouyo P eAucun commentaire

J'ai chercher une solution pour rendre obligatoire la case "Votre adresse e-mail" du système de commentaire pour pouvoir laisser un mot doux mais aussi un moyen d'afficher directement les mails dans la page des commentaires dans le back-office afin de faciliter se faciliter la vie.

Après quelques bidouillages de la page commentaires.php directement depuis le back office, dans la gestion des thèmes, il m'a fallu rajouter et remplacer quelques lignes de code dans le formulaire de commentaire.

Comme d'habitude avant de dire n'importe quoi, je bidouille, je fais des erreurs, je trouve des trucs qui marche (manière système D) mais avant de balancer n'importe quoi je demande l'avis de la communauté PluXml qui m'aiguille en améliorant mes trouvailles.

Vous pouvez donc utiliser les codes qui suivront cet article sans problèmes ;-)

<p>

<label for="id_mail"><?php $plxShow->lang('EMAIL') ?> :</label> <input id="id_mail" name="mail" type="text" size="20" value="<?php $plxShow->comGet('mail',''); ?>" required />

</p>

Maintenant qu'on oblige les visiteurs à enregistrer leur adresse e-mail pour pouvoir laisser un commentaire il faut trouver un moyen pour les consulter depuis le back office sans difficulté. Éditez le fichier comments.php qui se trouve dans le répertoire:

racine/core/admin/comments.php

Maintenant il faut remplacer le code <div> à </div> se situant de la ligne 151 à 235 par le code suivant:

<div class="scrollable-table">
        <table id="comments-table" class="full-width">
            <thead>
                <tr>
                    <th class="checkbox"><input type="checkbox" onclick="checkAll(this.form, 'idCom[]')" /></th>
                    <th class="datetime"><?= L_COMMENTS_LIST_DATE ?></th>
<?php
            $all = ($_SESSION['selCom'] == 'all');
            if($all) {
?>
                    <th class="status"><?= L_COMMENT_STATUS_FIELD ?></th>
<?php
            }
?>
                    <th class="message"><?= L_COMMENTS_LIST_MESSAGE ?></th>
                    <th class="author"><?= L_COMMENTS_LIST_AUTHOR ?> <?= L_COMMENT_EMAIL_FIELD ?></th>
                    <th class="site"><?= L_COMMENT_SITE_FIELD ?></th>
                    <th class="action"><?= L_COMMENTS_LIST_ACTION ?></th>
                </tr>
            </thead>
            <tbody>

<?php
            # On va récupérer les commentaires
            $plxAdmin->getPage();
            $start = $plxAdmin->aConf['bypage_admin_coms']*($plxAdmin->page-1);
            $coms = $plxAdmin->getCommentaires($comSelMotif,'rsort',$start,$plxAdmin->aConf['bypage_admin_coms'],'all');
            if($coms) {
                while($plxAdmin->plxRecord_coms->loop()) { # On boucle
                    $artId = $plxAdmin->plxRecord_coms->f('article');
                    $status = $plxAdmin->plxRecord_coms->f('status');
                    $id = $status.$artId.'.'.$plxAdmin->plxRecord_coms->f('numero');
                    $query = 'c=' . $id;
                    if(isset($_GET['a'])) {
                        $query .= '&a=' . $_GET['a'];
                    }
                    # On génère notre ligne
?>
                <tr class="top type-<?= $plxAdmin->plxRecord_coms->f('type') ?>">
                    <td><input type="checkbox" name="idCom[]" value="<?= $id ?>" /></td>
                    <td class="datetime"><?= plxDate::formatDate($plxAdmin->plxRecord_coms->f('date')) ?></td>
<?php
                if($all) {
?>
                    <td class="status"><?= empty($status) ? L_COMMENT_ONLINE : L_COMMENT_OFFLINE ?></td>
<?php
                }
?>
                    <td class="wrap"><?= nl2br($plxAdmin->plxRecord_coms->f('content')) ?></td>
                    <td class="author"><?php
                    $author = $plxAdmin->plxRecord_coms->f('author');
                    $mail = $plxAdmin->plxRecord_coms->f('mail');
                    if(!empty($mail)) {
?><a href="mailto:<?= $mail ?>"><?= $author ?></a><?php
                    } else {
                        echo $author;
                    }
?></td>
                    <td class="site"><?php
                    $site = $plxAdmin->plxRecord_coms->f('site');
                    if(!empty($site)) {
?><a href="https://petitpouyo.fr/<?= $site ?>" target="_blank"><?= $site ?></a><?php
                    } else {
                        echo '&nbsp;';
                    }
?></td>
                    <td class="action">
                        <a href="https://petitpouyo.fr/comment_new.php?<?= $query ?>" title="<?= L_COMMENT_ANSWER ?>"><?= L_COMMENT_ANSWER ?></a>
                        <a href="https://petitpouyo.fr/comment.php?<?= $query ?>" title="<?= L_COMMENT_EDIT_TITLE ?>"><?= L_COMMENT_EDIT ?></a>
                        <a href="https://petitpouyo.fr/article.php?a=<?= $artId ?>" title="<?= L_COMMENT_ARTICLE_LINKED_TITLE ?>"><?= L_COMMENT_ARTICLE_LINKED ?></a>
                    </td>
                </tr>
<?php
                }
            } else { # Pas de commentaires
?>
                <tr>
                    <td colspan="5" class="center"><?= L_NO_COMMENT ?></td>
                </tr>
<?php
            }
            ?>
            </tbody>
        </table>
    </div>

Avec ce petit bout de code gentillement partagé par Bazooka07 sur le forum de PluXml vous avez maintenant tout d'afficher directement sur la catégorie "Commentaires" du back-office, en passant la souris sur le pseudo bleuté du visiteur vous aurez son adresse e-mail qui s'affichera directement dans l'angle inférieur gauche de votre navigateur (enfin sur Brave c'est le cas).


Cliquez sur l'image pour l'agrandir

 

 

 

DClassé dans : PluXml ,Mots clés : commentaire pluxml, modification commentaire pluxml, amélioration commentaire pluxml, récupération mail commentaire

Écrire un commentaire