<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>PluXml 6.0 — Forum de PluXml</title>
        <link>https://forum.pluxml.org/index.php?p=/</link>
        <pubDate>Tue, 19 May 2026 00:18:12 +0000</pubDate>
        <language>fr</language>
            <description>PluXml 6.0 — Forum de PluXml</description>
    <atom:link href="https://forum.pluxml.org/index.php?p=/discussions/tagged/pluxml-6-0/feed.rss" rel="self" type="application/rss+xml"/>
    <item>
        <title>L'avenir de PluXml ?</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/7550/lavenir-de-pluxml</link>
        <pubDate>Thu, 12 Oct 2023 23:10:57 +0000</pubDate>
        <category>Discussions générales</category>
        <dc:creator>Tomek</dc:creator>
        <guid isPermaLink="false">7550@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Bonjour, <br />
Plus rien ne bouge sur Github depuis février au niveau de PluXml, je commence un peu à m'inquiéter de l'avenir de ce petit CMS léger et bien pratique pour monter rapidement des sites vitrines, par exemple.<br />
Est-ce qu'il y a quelqu'un pour me rassurer ?</p>
]]>
        </description>
    </item>
    <item>
        <title>Projets et pistes d'améliorations</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/6622/projets-et-pistes-dameliorations</link>
        <pubDate>Sun, 05 Jan 2020 23:57:03 +0000</pubDate>
        <category>Version en cours de développement</category>
        <dc:creator>Haruka</dc:creator>
        <guid isPermaLink="false">6622@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Bonjour &agrave; tous,</p><p>Comme promis, je partage avec vous les axes d&#39;&eacute;volutions qui vont animer cette ann&eacute;e 2020, avec &agrave; la cl&eacute; une version 6.0 de PluXml. Mais qui dit version majeur, dit changements majeurs.</p><p>Avant de parler de PluXml, quelques &eacute;l&eacute;ments autour du site pluxml.org. En effet, tous les utilisateurs de PluXml ne sont pas francophones et c&#39;est pourquoi, je souhaite passer le site en multilingue fran&ccedil;ais/anglais. C&#39;est une grosse charge de travail, puisque cela implique de traduire toute la documentation et de publier des articles sur le blog dans les deux langues. Bien s&ucirc;r je n&#39;oublie pas qu&#39;il manque un v&eacute;ritable espace &quot;Ressources&quot; collaboratif et s&eacute;curis&eacute;.</p><p><strong>PluCSS</strong></p><p>Le syst&egrave;me de grid du framework CSS int&eacute;gr&eacute; &agrave; PluXml doit &eacute;voluer pour s&#39;aligner avec les derniers standards du web, et int&eacute;grer &quot;grid layout&quot; &agrave; la place du syst&egrave;me de grille actuel. Il manque &eacute;galement certains &eacute;l&eacute;ments qui pourrait &ecirc;tre int&eacute;ressants pour l&#39;administration de PluXml, &agrave; savoir une gestion d&#39;onglets et de toggles, par exemple. Enfin, je me pose aussi la question d&#39;utiliser SASS.</p><p>En parall&egrave;le, je r&eacute;fl&eacute;chis au remplacement et donc &agrave; l&#39;abandon de PluCSS au profit d&#39;un autre framework, tel que <a href="https://www.knacss.com/" rel="nofollow">Knacss</a>. Ce qui me permettrait de me concentrer pleinement sur PluXml et de profiter d&#39;un framework plus complet, mais moins l&eacute;ger.</p><p><strong>PluXml</strong></p><p>A plusieurs reprise sur le forum, il a &eacute;t&eacute; &eacute;voqu&eacute; de retravailler le code de PluXml en profondeur, que se soit dans une vision OOP ou plus simplement des refacto sur le moteur. Avec la version 5.8, Composer a &eacute;t&eacute; int&eacute;gr&eacute; pour g&eacute;rer les d&eacute;pendances de PHPMailer, ce qui me fait penser &agrave; revoir compl&egrave;tement la structure de PluXml pour le rendre plus respectueux du mod&egrave;le MVC et pourquoi pas, migrer vers un framework PHP, tel que <a href="https://laravel.com/" rel="nofollow">Laravel</a> (avec l&#39;aide de Composer). Il faudra, n&eacute;anmoins, garantir la r&eacute;trocompatibilit&eacute; des plugins et des th&egrave;mes.</p><p>En vrac, des id&eacute;es d&#39;&eacute;volutions (&agrave; compl&eacute;ter avec les <em>issues</em> ouvertes sur Github) : </p><ul><li>Int&eacute;grer un &eacute;diteur wysiwyg en natif</li><li>Int&eacute;grer la recherche en natif (plxMySearch)</li><li>Nouveau th&egrave;me pour l&#39;administration</li><li>Remplacer la notion de &ldquo;page statique&rdquo; par une notion de &ldquo;page&rdquo;</li><li>Cr&eacute;ation d&#39;un gestionnaire de m&eacute;dia &ldquo;light&rdquo; pour l&#39;ouverture en popup dans l&#39;&eacute;dition d&#39;articles/pages</li><li>Dans article.php &agrave; la cr&eacute;ation d&#39;une cat&eacute;gorie, s&eacute;lectionner automatiquement celle-ci, si aucune cat&eacute;gorie n&#39;est d&eacute;j&agrave; s&eacute;lectionn&eacute;e</li><li>Int&eacute;grer une sauvegarde automatique des brouillons</li><li>Sauvegarder le site dans un zip &agrave; t&eacute;l&eacute;charger via un bouton</li><li>Ajouter une m&eacute;canique de redirection d&#39;URL sur les articles et sur les pages statiques</li><li>Ajouter une m&eacute;canique de &quot;remember me&quot;</li><li>Suppression des meta keyword (ne sont plus pris en compte par Google)</li><li>Th&egrave;me par d&eacute;faut : ARIA, schema.org, opengraph, maillage interne SEO</li></ul><p><strong>A vous !</strong></p><p>N&rsquo;h&eacute;sitez pas &agrave; me communiquer vos id&eacute;es ou souhaits.</p><p>J&#39;aimerais &eacute;galement conna&icirc;tre votre avis sur l&#39;avenir de PluCSS, pr&eacute;f&eacute;rez-vous qu&#39;il soit remplac&eacute; ou faut-il continuer de le maintenir et de le faire &eacute;voluer ? </p><p>Que pensez-vous de migrer PluXml vers un framework PHP, tel que Laravel ?</p>]]>
        </description>
    </item>
    <item>
        <title>pluxml 6.0 hook en double et const profil dans prepend.php</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/7060/pluxml-6-0-hook-en-double-et-const-profil-dans-prepend-php</link>
        <pubDate>Mon, 11 Oct 2021 14:25:34 +0000</pubDate>
        <category>Version en cours de développement</category>
        <dc:creator>gcyrillus-nomade</dc:creator>
        <guid isPermaLink="false">7060@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Bonjour,</p>

<p>Ce n'est peut-être pas le lieu, dites moi <img src="https://forum.pluxml.org/plugins/emojiextender/emoji/twitter/smile.png" title=":)" alt=":)" height="18" /></p>

<p>Je commence à regarder du coté de pluxml 6.0 comment se présente les premières différences de la nouvelle mouture en testant un plugin que je viens à peine de stabilisé sur un 5.8.7.</p>

<p>Gestion des langues : tiptop ! (mais j'ai du ajouté un $LANG = "fr"; en début du fichier langue pour ne pas avoir de warning, <em>j'ai peut-être fait ou laisser un doublé dans le code</em>) .</p>

<p>Autre difference  que je perçois est la constante des profils devenue intouchable, sans autres choix , je finis par faire un backup de prepend.php pour le modifié en dure et pouvoir ajouté un nouveau type de profil à l'activation du plugin ,à la désactivation,  je restaure prepend.php et efface le prepend.php.bak . (tant qu'il n'y a qu'un plugin qui le fait, le risque est minime mais existe). <br />
Pour passer en dessous du niveau 4 de rédacteur et spécifier un profil qui ne peut avoir accès à l'admin , mais qui est bien vu comme un profil logué, il faut lui alloué une valeur de profil négatif. <br />
Je comprend le coté sécurité, mais il empêche dans ce cas de bénéficier des fonction de bases d'identification de pluxml pour un plugin au risque peut-être d'ouvrir d'autre brèche.</p>

<p><strong>Bogue ?  un hook en doublon</strong>   dans <code>prepend.php</code> , le hook lignes 68/69</p>

<pre><code># Hook Plugins
eval($plxAdmin-&gt;plxPlugins-&gt;callHook('AdminPrepend'));
</code></pre>

<p>est doublé lignes 92/93 , j'imagine que ce sera <code>'AdminPrependEnd'</code> .. ou pas ?</p>

<p>Le plugin que j'ai fait,  écrit dans les fichiers XML via simpleXml et la   class SimpleXMLExtended   pour gérer simplement les champs nécessitant CDATA, class que l'on peut retrouver là : <a href="https://web.archive.org/web/20110223233311/http://coffeerings.posterous.com/php-simplexml-and-cdata" rel="nofollow">https://web.archive.org/web/20110223233311/http://coffeerings.posterous.com/php-simplexml-and-cdata</a></p>

<p>fichiers concernés: users.xml/statiques.xml/plugins.xml.</p>

<p>par exemple sur l'ajout d'utilisateurs avec un profil custom : <br />
 </p><details>

<pre><code>function updateFromCsv() {
    $plxMotor = plxMotor::getInstance();
    // on verfie que nos fichiers sont accessibles
    if ((file_exists(PLX_ROOT.PLX_CONFIG_PATH.'users.xml')) &amp;&amp; (($open = fopen(PLX_PLUGINS.'/vip_zone/username.csv', 'r')) !== FALSE) &amp;&amp; (!isset($_GET['upmsg']))) {

        // on commence avec le fichier csv  
        while (($data = fgetcsv($open, 1000, ";")) !== FALSE)     {        
          $array[] = $data; 
        }  
        fclose($open);

        // on recupere le fichier XML
        $xml = file_get_contents(PLX_ROOT.PLX_CONFIG_PATH.'users.xml', true);

        // on charge le fichier xml
        $doc = new SimpleXMLExtended($xml); 

        // on compte ses enregistrements
        $kids = $doc-&gt;children();
        $nbUser = count($kids);
        $nbRecords =0;

         // on boucle sur les lignes du fichiers CSV pour récuperer les données et les ajouter aux données existantes 
        foreach($array as $i =&gt; $line){ 
                if($i &gt;0) { // on passe la premiere ligne ou sont  stockées les entêtes de colonnes.
                    $nbRecords++; // on compte les enregistrements qui sont ajouter.
                    $nbUser++;
                    //test si données extraites
                    if((!isset($line[0])) or (!isset($line[1])) or (!isset($line[2])) or (!isset($line[3]))) {
                    $nbRecords++; 
                    echo    '&lt;p class="alert red "&gt; '. L_ERROR_BATCH_RECORDS .': &lt;b&gt; '.$nbRecords  .'&lt;/b&gt;&lt;/p&gt;';

                    $fileError ='1';

                    } 
                    else {

                    // on alimente les données visiteur V.I.P..
                    $element = $doc-&gt;addChild('user'); 
                    $element-&gt;addAttribute('number', str_pad($nbUser, 3,'0', STR_PAD_LEFT)  );
                    $element-&gt;addAttribute('active', '1' );
                    $element-&gt;addAttribute('profil', '-5' );// une valeur négative, sinon scotché comme rédacteur, et ce n'est pas ce que l'on veut
                    $element-&gt;addAttribute('delete', '0' );  

                    $login = $element-&gt;addChild('login'); 
                    $login-&gt;addCData($line[0]); 

                    $name = $element-&gt;addChild('name'); 
                    $name-&gt;addCData($line[1]); 

                    $infos = $element-&gt;addChild('infos',''); 

                    // grain de sel
                    $salt = plxUtils::charAleatoire(10);

                    //cryptage du mot de passe
                    $pwd=sha1($salt.md5($line[2]));         

                    $password = $element-&gt;addChild('password',$pwd); 


                    $salted = $element-&gt;addChild('salt',$salt); 

                    $email = $element-&gt;addChild('email'); // voir à utiliser fonctions verif mail native de pluxml + gestion message erreur
                    $email-&gt;addCData($line[3]); 

                    $lang = $element-&gt;addChild('lang','fr'); 

                    $password_token = $element-&gt;addChild('password_token',''); 

                    $password_token_expiry = $element-&gt;addChild('password_token_expiry','');    
                    }              
               }  
        }

        if (!isset($fileError)) {
            //On refait l'indentation du fichier  parce-que c'est plus joli
            $xmlDoc = new DOMDocument ();
            $xmlDoc-&gt;preserveWhiteSpace = false;
            $xmlDoc-&gt;formatOutput = true;
            $xmlDoc-&gt;loadXML ( $doc-&gt;asXML() );
            // on sauvegarde le fichier XML mis à jour.
            $xmlDoc-&gt;save(PLX_ROOT.PLX_CONFIG_PATH.'users.xml');
            echo '&lt;p class="alert green "&gt;'.L_SAVE_FILE_SUCCESSFULLY.' - '.L_CONFIG_USERS_NEW.' &lt;b&gt; '.$nbRecords  .'&lt;/b&gt;&lt;/p&gt;';

            // on vide le fichier si tout s'est bien déroulé pour le prochain enregistrement.
            $open = fopen(PLX_PLUGINS."/vip_zone/username.csv", "w") ;
            $fileCsv="login;name;password;email\n";
            fwrite($open, $fileCsv);
            fclose($open);
        }

    }
    else {
    exit(L_SAVE_FILE_ERROR.' user.xml / username.csv.');
    }
}
</code></pre>

<p></p></details><br />
je reformate  les fichiers pour qu'ils puissent être indenté et lisible. Résultat, par exemple le tag <code>&lt;plugin name="" scope=""&gt;&lt;/plugin&gt;</code> se trouve réécrit en  <code>&lt;plugin name="" scope=""/&gt;</code> sans perturber PluXml à priori.

<p>Il m'avait sembler avoir lu que PluXml 6.0 allait se tourner  vers simpleXML, du coup je reste sur ma faim  et ma curiosité de l'approche des développeurs , si c'est d'actualités ou n’était qu'une simple évocation.</p>

<p>J'aurais probablement d'autres question en continuant à creuser.<br />
Merci</p>
]]>
        </description>
    </item>
    <item>
        <title>PluXml 5.8.3 Release Candidate</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/6720/pluxml-5-8-3-release-candidate</link>
        <pubDate>Sun, 26 Apr 2020 14:54:45 +0000</pubDate>
        <category>Version en cours de développement</category>
        <dc:creator>Haruka</dc:creator>
        <guid isPermaLink="false">6720@/index.php?p=/discussions</guid>
        <description><![CDATA[<p><em>(en)<br />
Hi, PluXml 5.8.3 is available for beta tests. If you want to contribute feel free to download this version by clicking the link below, and leave a comment in this thread. This version is unstable and its not recommended for a production environment.</em></p>

<p><em>(fr)</em><br />
Bonjour,</p>

<p>Une <strong><em>release candidate</em></strong> de la prochaine version de PluXml 5.8.3 est disponible.</p>

<p><a rel="nofollow" href="https://github.com/pluxml/PluXml/archive/5.8.3.zip"><strong>Télécharger / Download PluXml 5.8.3 RC</strong></a></p>

<p>Son contenu a été légèrement revus à la baisse, pour vous proposer au plus tôt une version contenant essentiellement des corrections de bugs et quelques petites améliorations. <a rel="nofollow" href="https://github.com/pluxml/PluXml/blob/master/readme/CHANGELOG">Les autres améliorations</a> qui ont été apportées sont conservées pour la prochaine version majeure PluXml 6.0 (branche master), car elles impactent le moteur de PluXml et certains plugins peuvent ne plus fonctionner.</p>

<p>Je suis preneur de vos retours sur cette version de test <em>5.8.3 RC</em> , avant de la publier officiellement.</p>

<p><strong>Changelog</strong></p>

<p>[+] Enhancement for CSRF token #385 (bazooka07)<br />
[+] New "rename" and "copy to clipboard" icons in medias administration page #387 (bazooka07)<br />
[+] plxMotor and plxFeed regex refacto #380 (P3ter, bazooka07)<br />
[+] plxToken and plxCapcha optimisations #406 (bazooka07)<br />
FIX Articles and static pages with underscores are not visible #380 (P3ter)<br />
FIX Headline and Tags toggles always closed in article edition #382 (sudwebdesign)<br />
FIX Fix medias administration zoombox and javascript optimisations #387 (bazooka07)<br />
FIX Error when adding or modifying a user #393 (P3ter)<br />
FIX Alternative to PHPMailer with sendmail #401 (bazooka07)<br />
FIX Used of an extern URL as a static page #403 (bazooka07)<br />
FIX Comment editor is empty #418 (P3ter)<br />
FIX Comments list sorting #419 (P3ter)<br />
FIX Default theme : double underline on footer menu (P3ter)</p>
]]>
        </description>
    </item>
    <item>
        <title>Export des articles et catégorie</title>
        <link>https://forum.pluxml.org/index.php?p=/discussion/6681/export-des-articles-et-categorie</link>
        <pubDate>Tue, 24 Mar 2020 10:48:37 +0000</pubDate>
        <category>Entraide</category>
        <dc:creator>Edmee</dc:creator>
        <guid isPermaLink="false">6681@/index.php?p=/discussions</guid>
        <description><![CDATA[<p>Bonjour,</p><p>Je cherche &agrave; exporter les articles et cat&eacute;gories vers un wordpress. Est-ce qu&#39;il existe un moyen de le faire cela ?</p><p>Je n&#39;ai rien trouv&eacute; sur le forum ou le github ou sur pluxml.</p><p>Merci</p>]]>
        </description>
    </item>
   </channel>
</rss>
