[5.5] Version de Pluxml

bazooka07bazooka07 PluXml Lead Developer, Moderator
Bonjour,

Jusqu'à la version 5.4 de Pluxml, on pouvait récupérer la version utilisée par la propriété $plxAdmin->version.
Cette propriété a disparu au profit de la constante PLX_VERSION qui est une chaîne de caractères.

Un peu dommage pour ceux qui développent les plugins et qui se servaient de cette variable pour s'adapter au contexte.

Bonnes fêtes

Réponses

  • danielsandanielsan Member
    janvier 2016 modifié
    +1

    à savoir qu'il existe encore $plxAdmin->aConf

    PLX_VERSION a l'avantage d'être globale, pas besoin de cloner/créer une instance de plxAdmin pour l'interroger.

    D'ailleurs, dans core/admin/top.php de la version 5.5, ligne 59 on a gardé la variable aConf
    [== PHP ==]
    <li><small><a class="version" title="PluXml" href="http://www.pluxml.org">Pluxml <?php echo $plxAdmin->aConf['version'] ?></a></small></li>
    

    Pour comparer les versions, il existe la fonction PHP version_compare()
    Elle est utilisée par $plxAdmin->checkMaj() dans core/Admin/parametre_infos.php
    D'ailleurs ça serait peut-être utile de créer une méthode qui retourne true/false ou un truc du genre ..?
    [== PHP ==]
    if(version_compare($plxAdmin->aConf['version'], '5.5', ">=")){
    	echo "on peut utiliser les champs thumbnail";
    } else{
    	echo "les champs thumbnail n'existent toujours pas";
    }
    

    Il faudrait aussi savoir sur quelle variable se baser pour les projets dev ...
  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour

    Détourner des fonctions natives ou le contenu de certaines variables pour satisfaire ses besoins ne fait que fragiliser le core de PluXml. Certains développeurs ont les compétences pour le faire bien et proprement, d'autres non, mais le font-ils en mesurant les effets de bords qu'il peut avoir sur l'interaction avec les développements d'autres contributeurs. Attention donc de ne pas faire n'importe quoi, sinon on ouvre une porte aux bugs en tout genre et failles de sécurité.

    Consultant PluXml

    Ancien responsable et développeur de PluXml (2010 à 2018)

  • bazooka07bazooka07 PluXml Lead Developer, Moderator
    @danielsan,

    $plxAdmin->aConf est une variable, donc modifiable, et visible seulement côté admin.
    PLX_VERSION est une constante définie dans core/lib/config.php, visible côté admin et côté site. Pour reprendre une image, "elle est gravée dans le moule".

    Donc, il vaut mieux utiliser la constante, après avoir vérifié qu'elle existe :
    [== PHP ==]
    if ( defined('PLX_VERSION') and version_compare(PLX_VERSION, '5.5', ">=")) {
    	echo 'une image accrocheuse';
    } else {
    	echo 'Lis le texte';
    

    A++
  • marki du rappel ;)
  • Merci bazooka07, pour ton code

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