Page statique avec commentaire

Bonjour, j'ai fait une copie de la page "static.php" en ajoutant dans le code de celle-ci la ligne pour afficher les commentaires.
J'ai nommer cette page "contact.php".

  • En me rendant dans la rubrique "Pages statiques" de l'administration, j'ai créer une nouvelle page, puis j'ai éditez pour sélectionner le template "contact.php" mais dans la liste il ne s'affiche pas j'ai que "static.php". comment faire ?

Voici le système que je souhaite faire:

  • Avoir une page avec le formulaire de commentaire de base, pour que les visiteurs poste leurs questions et que je puisse leur répondre directement sur le site. (afin d'éviter d'avoir un formulaire et envoie de mail classique..)
  • Autre point, est ce qu'il est possible d'avoir une pagination pour les commentaire ?

En vous remerciant, au plaisir de vous lire

Réponses

  • juillet 2023 modifié

    https://pluxml.org/article43/realiser-une-page-statique-avec-commentaires voir l'astuce pour faire ce que tu souhaites. ( recherche aussi sur le forum l'astuce pour un livre d'or, ) il devrait aussi y avoir pour paginer les commentaires ici ou sur pluxopolis.
    Cdt

    Sinon, tester ce code à copier coller dans une page statique basé sur ce script : https://pluxopolis.net/paginer-le-contenu-d-une-page-statique.html

    penser à doubler les \ en \\ !!!!

    <!-- ici le contenu de la page statique devant les commentaire et formulaire -->
    <?php
        # Ajout commentaires dans page statiques
        # Pagination des commentaires
        # @Author Gcyrillus
    
        # fichier de stockage des commentaires
        $commentsFile = PLX_ROOT.'/data/statiques/comment-'.$this->staticId().'.json';
        if(!file_exists($commentsFile)) { 
            touch($commentsFile);
            file_put_contents($commentsFile,'[]');
        }
    
        # extraction des commentaires dans un tableau
        $comments =  json_decode(file_get_contents($commentsFile), true);
    
        # As t-on de nouveaux commentaires ?
        if(isset($_POST)){
            if(isset($_POST['name']) AND isset($_POST['content'])AND $_POST['name'] !='' AND $_POST['content'] !='') {
                $comments[] = array(
                'date'=> date('d-m-Y') ,
                'name'=> trim(strip_tags($_POST['name'])) , 
                'mail'=>  trim(strip_tags($_POST['mail']))  , 
                'site'=> trim(strip_tags($_POST['site'])), 
                'content' => trim(strip_tags($_POST['content']))
                );
                # message de confirmation ajout commentaire (extrait de la fonction de PluXml basé sur la session
                # pas de Capcha dans cette version.
                $row ='<p id="com_message" class="#com_class"><strong>#com_message</strong></p>';       
                $_SESSION['msgcom'] = L_COM_PUBLISHED;
                file_put_contents($commentsFile, json_encode($comments,true) );
            }
        }
    
        if(count($comments)>0) {
            $tittleComment ="<h3>". L_COMMENT ."</h3>";     
            if(count($comments)>1) {
                $tittleComment ="<h3>". L_COMMENTS ."</h3>";            
            }
            echo $tittleComment ;
    
            # Style barre pagination commentaires
            echo '<style>:where(.page-item.page-link.active) { text-decoration:underline;font-weight:bold; padding:0.3em 2em;}.pagination.text-center.center.bordered {border-radius: 5px;width:max-content;  margin:auto;  border:solid 1px}</style>';
            # $this is $plxShow
            #########################################
            #configuration
            #########################################
            # nombre de Commentaire à afficher par page
            $bypage = 1;
    
            $intermediaire = false; //mettre true au lieu de false pour afficher les liens de chaque page
            #########################################
            # FIN configuration
            #########################################
    
            #############################
            # extraction et maj variables
            #############################
    
            # extraction de l'url
            $url = $this->plxMotor->urlRewrite('?static' . $this->staticId() . '/' . $this->plxMotor->aStats[str_pad($this->staticId(), 3, '0', STR_PAD_LEFT)]['url'] );
    
            # generation du lien
            $link = $this->plxMotor->urlRewrite($url."/?page");
    
            # extraction du numéro de page dans l'URL 
            $currentPage = preg_match('#\bpage(\d*)#',$_SERVER['REQUEST_URI'], $capture) ? intval($capture[1]) : 1;
    
            # indice de début, premier article à afficher
            $start = ($currentPage - 1) * $bypage;  
    
            // Calcul du 1er commentaire de la page
            $premier = ($currentPage * $bypage) - $bypage;
    
            // On calcule le nombre de pages total
            $nbr = count($comments);
            $pages = ceil( $nbr / $bypage);     
    
            $comments = array_slice($comments, $premier, $bypage);
    
            foreach($comments as $com =>$val) { # On boucle sur les commentaires                
                echo '<div id="id-'.$com.'" class="comment">
                <div id="com-'.$com.'">
                <small>
                <a class="nbcom" href="'.$this->plxMotor->urlRewrite('?static' . $this->staticId() . '/' . $this->plxMotor->aStats[str_pad($this->staticId(), 3, '0', STR_PAD_LEFT)]['url'] . '').'#com-'.$com.'" title="#commentaire '.$com.'">#'.$com.'</a>&nbsp;
                <time datetime="'.$val['date'].'">'.$val['date'].'</time> - '.$val['name'].' '. $this->getLang('SAID').':
                </small>
                <blockquote>
                <p class="content_com">'.$val['content'].'</p>
                </blockquote>
                </div>
                </div>';                
            }
        ?>      
        <!-- Affichage de la pagination -->
    
        <?php
            ############################
            # Affichage de la pagination
            ############################
            if($pages>1){
            ?>
            <nav>
                <ul class="pagination text-center center bordered">
                    <!-- Lien vers la page précédente (si on ne se trouve pas sur la 1ère page) -->
                    <?= ($currentPage > 1)  ? "<li class=\"page-item\" ><a href=\"".$link . ($currentPage - 1) ."\" class=\"page-link\">".L_PAGINATION_PREVIOUS."</a></li>" : "" ?>
    
                    <?php if($intermediaire == true)  {
                        for($page = 1; $page <= $pages; $page++) {
                            # Lien vers chacune des pages (activé si on se trouve sur la page correspondante
                            echo '<li class="page-item ';
                            if($currentPage == $page)  echo 'active';
                            echo "\"><a href=\"".$link.$page ."\" class=\"page-link\">".$page."</a></li>";
                        }
                    }
                    else {
                        echo "<li class=\"page-item page-link  active \">
                        ".$currentPage." / ". $nbr."
                        </li>"; 
    
                    }   ?>
                    <!-- Lien vers la page suivante (si on ne se trouve pas sur la dernière page) -->
                    <?= ($currentPage < $pages) ? " <li class=\"page-item\"><a href=\"".$link.($currentPage + 1 )."\" class=\"page-link\">".L_PAGINATION_NEXT."</a></li>" : "" ?>
    
                </ul>
            </nav>
            <?php   }
        }
        else {
            echo L_NO_COMMENT;
        }
        global $plxMotor;   
    
        if (!empty($_SESSION['msgcom'])) {
            $color = 'green';
            $row = str_replace('#com_message', $_SESSION['msgcom'], $row);
            $row = str_replace('#com_class', 'alert ' . $color, $row);
            echo $row;
            unset($_SESSION['msgcom']);
    
        }
    ?>
    <h3>
        <?php $this->lang('WRITE_A_COMMENT') ?>
    </h3>
    <form id="form" action="<?php echo $this->plxMotor->urlRewrite('?static' . $this->staticId() . '/' . $this->plxMotor->aStats[str_pad($this->staticId(), 3, '0', STR_PAD_LEFT)]['url'] . ''); ?>#form" method="post">
    
        <fieldset>
    
            <div class="grid">
                <div class="col sml-12">
                    <label for="id_name"><?php $this->lang('NAME') ?>* :</label>
                    <input id="id_name" name="name" type="text" size="20" value="" maxlength="30" required="required" />
                </div>
            </div>
            <div class="grid">
                <div class="col sml-12 lrg-6">
                    <label for="id_mail"><?php $this->lang('EMAIL') ?> :</label>
                    <input id="id_mail" name="mail" type="text" size="20" value="" />
                </div>
                <div class="col sml-12 lrg-6">
                    <label for="id_site"><?php $this->lang('WEBSITE') ?> :</label>
                    <input id="id_site" name="site" type="text" size="20" value="" />
                </div>
            </div>
            <div class="grid">
                <div class="col sml-12">
                    <div id="id_answer"></div>
                    <label for="id_content" class="lab_com"><?php $this->lang('COMMENT') ?>* :</label>
                    <textarea id="id_content" name="content" cols="35" rows="6" required="required"></textarea>
                </div>
            </div>
            <div class="grid">
                <div class="col sml-12">
                    <input class="blue" type="submit" value="<?php $this->lang('SEND') ?>" />
                </div>
            </div>
    
        </fieldset>
    
    </form>
    


    Cordialement,
    gcyrillus , simple membre du forum et utilisateur de pluxml

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • août 2023 modifié

    @santini
    J'ai fait une MAJ du script de façon à inclure le capcha de PluXml et y inclure la fonction "réponse" comme les commentaires des articles. Ce script est aussi expliqué sur https://pluxopolis.net/commentaires-dans-une-page-statique.html
    Pas de modération de prévu pour le moment,mais le fichier json est incrémenter et il sera facile de supprimer une entrée indésirable.

    Les commentaires sont nettoyés de leur balises, pas d'injection de script ou de lien possible, les class de level-0 a level-5 et level-max sont gérées de façon à être stylées par la feuille de style de PluXml.

    Code ci-dessous ou à telecharger depuis https://raw.githubusercontent.com/gcyrillus/scripts-pour-pluxml/main/static-comments.php

    <!-- ici le contenu de la page statique devant les commentaires et formulaire -->
    <?php
        # Ajout commentaires dans une page statique
        # Pagination des commentaires
        # reponses aux commentaires
        # inclusion du capcha natif de PluXml
        # @Author Gcyrillus
        # licence GNU General Public License v3.0 : https://github.com/gcyrillus/scripts-pour-pluxml/blob/main/LICENSE
        # $this is $plxShow
        #########################################
        #configuration
        #########################################
        # nombre de Commentaire à afficher par page
        $bypage = 4;
    
        $intermediaire = false; //mettre true au lieu de false pour afficher les liens de chaque page
    
        $showLast = true; // mettre a true pour afficher la derniere page des commentaires par défaut
        #########################################
        # FIN configuration
        #########################################
    
        # fichier de stockage des commentaires
        $commentsFile = PLX_ROOT.'/data/statiques/comment-'.$this->staticId().'.json';
        if(!file_exists($commentsFile)) { 
            touch($commentsFile);
            file_put_contents($commentsFile,'[]');
        }
    
        # extraction des commentaires dans un tableau
        $comments =  json_decode(file_get_contents($commentsFile), true);
        $num = count($comments);
        # format du message aprés soumission du formulaire 
        $row ='<p id="com_message" class="#com_class"><strong>#com_message</strong></p>';   
    
        # As t-on de nouveaux commentaires ?
        if(isset($_POST)){
            # color boite message par défaut
            $color = 'orange';
            $level='level-0';
            if(isset($_POST['name']) AND isset($_POST['content'])) {
    
                if( $_POST['name'] =='' OR $_POST['content'] =='') {
                    $_SESSION['msgcom'] =  L_NEWCOMMENT_FIELDS_REQUIRED;
                }           
                if(!empty($this->aConf['capcha']) AND (empty($_SESSION['capcha_token']) OR  empty($_POST['capcha_token']) or ($_SESSION['capcha_token'] != $_POST['capcha_token']))) {
                    $_SESSION['msgcom'] .= ' '. L_NEWCOMMENT_ERR_ANTISPAM;
                }       
                else {      
                    # On vérifie que le capcha est correct
                    if($this->plxMotor->aConf['capcha'] == 0 OR $_SESSION['capcha'] == sha1($_POST['rep'])) {
                        if(isset($_POST['level'])) 
                        {
                            $level = trim($_POST['level']) ;
                            if($level == 'level-5' || $level =='level-max' ) {$level ='level-max';}
                            else {$level++;}
                        }
                        $newcomment[] = array(
                        'num'       => trim(strip_tags($_POST['num'])),
                        'date'      => date('d-m-Y') ,
                        'name'      => trim(strip_tags($_POST['name'])) , 
                        'mail'      => trim(strip_tags($_POST['mail']))  , 
                        'site'      => trim(strip_tags($_POST['site'])), 
                        'content'   => trim(strip_tags($_POST['content'])),
                        'level'     => trim(strip_tags($level))
                        );              
    
                        $color = 'green';
                        $_SESSION['msgcom'] = L_COM_PUBLISHED;
    
                        # est ce une reponse à un commentaire particulier?
                        if(isset($_POST['index']))
                        {
                            array_splice($comments, trim($_POST['index'])+1, 0, $newcomment);
                        }
                        else {
    
                            array_push($comments,$newcomment[0]);
    
                        }
    
                        file_put_contents($commentsFile, json_encode($comments,true|JSON_PRETTY_PRINT) );
                    }
                    else {
                        $_SESSION['msgcom'] =  L_NEWCOMMENT_ERR_ANTISPAM;
                    }
                }
            }
        }
    
        if(count($comments)>0) {
            $tittleComment ="<h3>".count($comments).' '. L_COMMENT ."</h3>";        
            if(count($comments)>1) {
                $tittleComment ="<h3>".count($comments).' '.  L_COMMENTS ."</h3>";          
            }
            echo $tittleComment ;
    
            # Style barre pagination commentaires
            echo '<style>:where(.page-item.page-link.active) { text-decoration:underline;font-weight:bold; padding:0.3em 2em;}.pagination.text-center.center.bordered {border-radius: 5px;width:max-content;  margin:auto;  border:solid 1px}#com_message:has(strong:empty){display: none;}.content_com {  white-space: pre-wrap;}</style>';
    
    
            #############################
            # extraction et maj variables
            #############################
    
            # extraction de l'url
            $url = $this->plxMotor->urlRewrite('?static' . $this->staticId() . '/' . $this->plxMotor->aStats[str_pad($this->staticId(), 3, '0', STR_PAD_LEFT)]['url'] );
    
            # generation du lien
            $link = $this->plxMotor->urlRewrite($url."/page");
    
            // On calcule le nombre de pages total
            $nbr = count($comments);
            $pages = ceil( $nbr / $bypage);
            $position = 1;
            if($showLast==true) $position = $pages;
    
            # extraction du numéro de page dans l'URL 
            $currentPage = preg_match('#\bpage(\d*)#',$_SERVER['REQUEST_URI'], $capture) ? intval($capture[1]) : $position;
    
            # indice de début, premier article à afficher
            $start = ($currentPage - 1) * $bypage;  
    
            // Calcul du 1er commentaire de la page
            $premier = ($currentPage * $bypage) - $bypage;
            ;       
    
            $pagecomments = array_slice($comments, $premier, $bypage);
    
            foreach($pagecomments as $com =>$val) { # On boucle sur les commentaires    
                $index=array_search( $val['num'], array_column( $comments, 'num' ) );
                echo '<div id="id-'.$val['num'].'" class="comment '.$val['level'].'">
                <div id="com-'.$val['num'].'" data-index="'.$index.'" data-level="'.$val['level'].'">
                <small>
                <a class="nbcom" href="'.$_SERVER['REQUEST_URI'].'#com-'.$val['num'].'" title="#commentaire '.$val['num'].'">#'.$val['num'].'</a>&nbsp;
                <time datetime="'.$val['date'].'">'.$val['date'].'</time> - '.$val['name'].' '. $this->getLang('SAID').':
                </small>
                <blockquote>
                <p class="content_com">'.$val['content'].'</p>
                </blockquote>';
                if($this->plxMotor->aConf['allow_com']){
                    echo '<a rel="nofollow" href="#form" onclick="replyCom(\''.trim($val['num']).'\');">'.$this->getLang('REPLY').'</a>';
                }
                echo '</div>
                </div>';                
            }
        ?>      
        <!-- Affichage de la pagination -->
    
        <?php
            ############################
            # Affichage de la pagination
            ############################
            if($pages>1){
            ?>
            <nav>
                <ul class="pagination text-center center bordered">
                    <!-- Lien vers la page précédente (si on ne se trouve pas sur la 1ère page) -->
                    <?= ($currentPage > 1)  ? "<li class=\"page-item\" ><a href=\"".$link . ($currentPage - 1) ."\" class=\"page-link\">".L_PAGINATION_PREVIOUS."</a></li>" : "" ?>
    
                    <?php if($intermediaire == true)  {
                        for($page = 1; $page <= $pages; $page++) {
                            # Lien vers chacune des pages (activé si on se trouve sur la page correspondante
                            echo '<li class="page-item ';
                            if($currentPage == $page)  echo 'active';
                            echo "\"><a href=\"".$link.$page ."\" class=\"page-link\">".$page."</a></li>";
                        }
                    }
                    else {
                        echo "<li class=\"page-item page-link  active \">
                        ".$currentPage." / ". $pages."
                        </li>"; 
    
                    }   ?>
                    <!-- Lien vers la page suivante (si on ne se trouve pas sur la dernière page) -->
                    <?= ($currentPage < $pages) ? " <li class=\"page-item\"><a href=\"".$link.($currentPage + 1 )."\" class=\"page-link\">".L_PAGINATION_NEXT."</a></li>" : "" ?>
    
                </ul>
            </nav>
            <?php   }
        }
        else {
            echo L_NO_COMMENT;
        }
    
    
        if (!empty($_SESSION['msgcom'])) {
            $message=$_SESSION['msgcom'];
            $row = str_replace('#com_class', 'alert ' . $color, $row);
            unset($_SESSION['msgcom']);
        }
        else {
            $message='';
    
        }
        $row = str_replace('#com_message',$message , $row);
    ?>
    <h3>
        <?php $this->lang('WRITE_A_COMMENT') ?>
    </h3>
    <form id="form" action="<?php echo $_SERVER['REQUEST_URI']; ?>#form" method="post">
    
        <fieldset>
    
            <div class="grid">
                <div class="col sml-12">
                    <label for="id_name"><?php $this->lang('NAME') ?>* :</label>
                    <input id="id_name" name="name" type="text" size="20" value="" maxlength="30" required="required" />
                </div>
            </div>
            <div class="grid">
                <div class="col sml-12 lrg-6">
                    <label for="id_mail"><?php $this->lang('EMAIL') ?> :</label>
                    <input id="id_mail" name="mail" type="text" size="20" value="" />
                </div>
                <div class="col sml-12 lrg-6">
                    <label for="id_site"><?php $this->lang('WEBSITE') ?> :</label>
                    <input id="id_site" name="site" type="text" size="20" value="" />
                </div>
            </div>
            <div class="grid">
                <div class="col sml-12">
                    <div id="id_answer"></div>
                    <label for="id_content" class="lab_com"><?php $this->lang('COMMENT') ?>* :</label>
                    <textarea id="id_content" name="content" cols="35" rows="6" required="required"></textarea>
                </div>
            </div>
    
            <?php echo $row;        
            if($this->plxMotor->aConf['capcha']): ?>
    
            <div class="grid">
                <div class="col sml-12">
                    <label for="id_rep"><strong><?php echo $this->lang('ANTISPAM_WARNING') ?></strong>*</label>
                    <?php
                        $this->plxMotor->plxCapcha = new plxCapcha(); # Création objet captcha
                        $this->capchaQ(); 
                    ?>
                    <input id="id_rep" name="rep" type="text" size="2" maxlength="1" style="width: auto; display: inline;" required="required" />
                </div>
            </div>
    
            <?php endif; ?>     
    
            <div class="grid">
                <div class="col sml-12">
                    <input type="hidden" id="num" name="num" value="<?php echo $num + 1 ?>"/>
                    <input type="hidden" id="id_parent" name="parent" value="" />
                    <input class="blue" type="submit" value="<?php $this->lang('SEND') ?>" />
                </div>
            </div>
    
        </fieldset>
    
    </form>
    
    <script>
        function replyCom(idCom) {
            document.getElementById('id_answer').innerHTML='<?php $this->lang('REPLY_TO'); ?> :';
            document.getElementById('id_answer').innerHTML+=document.getElementById('com-'+idCom).innerHTML;
            document.getElementById('id_answer').innerHTML+='<input type="hidden" name="index" value="'+document.getElementById('com-'+idCom).getAttribute('data-index') +'">';
            document.getElementById('id_answer').innerHTML+='<input type="hidden" name="level" value="'+document.getElementById('com-'+idCom).getAttribute('data-level') +'">';
            document.getElementById('id_answer').innerHTML+='<a rel="nofollow" href="#form" onclick="cancelCom()"><?php $this->lang('CANCEL'); ?></a>';
            document.getElementById('id_answer').style.display='inline-block';
            document.getElementById('id_parent').value=idCom;
            document.getElementById('id_content').focus();
        }
        function cancelCom() {
            document.getElementById('id_answer').style.display='none';
            document.getElementById('id_parent').value='';
            document.getElementById('com_message').innerHTML='';
        }
        var parent = document.getElementById('id_parent').value;
        if(parent!='') { replyCom(parent) }
    </script>
    

    Pense à indiquer quand un post est résolu, c'est utile à d'autres et evite à ceux qui aident de revenir dessus, Merki


    Cordialement,
    gcyrillus , simple membre du forum et utilisateur de pluxml

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • Bonjour,
    Très interessant ce script.
    Mais petite question est quant à l'utilisation de l'article par rapport à la page, puisque tous les deux auraient maintenant la possibilité de commentaires.
    Les différences que je vois c'est la possibilité du chapo et des modes archives/category.
    Mais il y en a sans doute d'autres,

  • juillet 2023 modifié

    Mais petite question est quant à l'utilisation de l'article par rapport à la page, puisque tous les deux auraient maintenant la possibilité de commentaires.
    Les différences que je vois c'est la possibilité du chapo et des modes archives/category.
    Mais il y en a sans doute d'autres,

    @cpalo
    Rapidement: C'est une question qui est revenu plusieurs fois sur le forum, depuis quasiment le début des pages statiques, puis après les demandes ont été parfois en mode plugin quand les "greffons" ont montrés le bout de leurs nez.

    Les utilités?

    • demandons à @santini pourquoi il à besoin de commentaire dans une page statique ;)
    • Un livre d'or par exemple
    • Un site basé sur uniquement des pages statiques, voir un onepage ? (là je ne suis pas sur de l'utilité d'y mettre une fonction de commentaires)
    • ne pas répertorier cette page comme un article ni la catégoriser (pas besoin de se soucier du sitemap du coup)
    • construire un simili forum ou des fils de discussion pour des utilisateur (un peu comme thunderbird?) à partir d'une ou plusieurs pages statiques (mise en forme à revoir) mais c'est aussi faisable depuis les coms d'un article.
    • parce que c'est une page statique et pas un article
    • la faire apparaitre dans le menu des pages statitiques
    • autres

    Les deux astuces actuelles étaient : (avec le défaut de rendre difficile l’édition de la page ... bon sang, où est ce foutu article ;) ! )

    • inclure un article et ses commentaires depuis un template de page statique
    • faire une redirection vers un article (catégorie exclue de l'affichage) depuis une page statique

    cdt


    Cordialement,
    gcyrillus , simple membre du forum et utilisateur de pluxml

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • Merci pour tout ce retour;
    Cordialement

  • Bonjour

    j'ai souhaité avoir une page statique avec commentaire dans le menu des pages statiques. J'ai choisi d'inclure un lien (vers un article avec commentaire) à la suite de la liste des pages statiques. Cela était suffisant pour mon utilisation
    https://armorial.cc-parthenay-gatine.fr/
    José

  • Il existe maintenant un plugin qui reprend le script cité plus haut : https://ressources.pluxopolis.net/banque-plugins/plugins/StaticComments.zip Configuration/options : choix des pages statiques, pagination des commentaires et captcha natif optionnel.


    Cordialement,
    gcyrillus , simple membre du forum et utilisateur de pluxml

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • 3 déc. modifié

    Il existe maintenant un fork StaticMiniForum assez modifié et qui cale à l'idée évoquée plus tôt https://forum.pluxml.org/discussion/comment/64021/#Comment_64021

    construire un simili forum ou des fils de discussion pour des utilisateur ....

    https://ressources.pluxopolis.net/banque-plugins/plugins/StaticMiniForum2.5.1.zip

    Peut-être associer à https://ressources.pluxopolis.net/banque-plugins/plugins/markdownComment1.0.1.zip et https://ressources.pluxopolis.net/banque-plugins/plugins/vip_zone.3.2.zip


    Cordialement,
    gcyrillus , simple membre du forum et utilisateur de pluxml

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

Connectez-vous ou Inscrivez-vous pour répondre.