function staticUrl

Bonjour,

Pour un plugin j'ai besoin de récupérer l'adresse de la page static en cours, pour faire j'utilise la fonction $plxShow->staticUrl. Ensuite j'insère le retour dans un echo
echo '<a href="'.$plxShow->staticUrl().'&gal='.$subdir.'" title="'.$subdir.'"><img src="'.$root_dir.'/galthumb.tb.jpg" alt="'.$subdir.'"></a>';
Le problème est que staticUrl renvoie un echo et non un return, du coups le texte s'affiche.

Dans class.plxshow.php, ligne 1124, remplacer :
echo $this->plxMotor->urlRewrite('?static'.$staticId.'/'.$this->plxMotor->aStats[ $staticIdFill ]['url']);
Par
return $this->plxMotor->urlRewrite('?static'.$staticId.'/'.$this->plxMotor->aStats[ $staticIdFill ]['url']);
Règle le problème mais je ne sais pas quel impact ça a sur PluXml ?

En attendant je vais devoir re-écrire staticUrl pour l'intégrer à mon plugin.

J'ai un string de l'array

Réponses

  • StéphaneStéphane Member, Former PluXml Project Manager
    Bonjour

    Les fonctions de la classe plxShow ne sont utilisées que dans les thèmes.
    Pour connaitre l'impact il suffit de faire une recherche de la fonction modifiée dans les fichiers du thème.

    Consultant PluXml

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

  • Ok, donc il faut reprendre tout les fichiers des thèmes qui appel la fonction et ajouter un echo avant l'appel.

    Je ne sais pas quel est ton point de vue Stéphane sur ce "problème" ?

    J'ai un string de l'array

  • StéphaneStéphane Member, Former PluXml Project Manager
    Je comprends bien ta demande et ton besoin.

    C'est clair que modifier une fonction de plxShow ce n'est surement pas la meilleure solution (impacts sur l'existant, problème de mise à jour avec les futures versions de PluXml), et c'est même déconseillé de le faire.

    Donc pour répondre à ta question, si la fonction modifiée est utilisée dans le thème, j'utiliserai ce code directement dans le thème
    $plxShow->plxMotor->urlRewrite('?static'.$plxShow->staticId().'/'.$plxShow->plxMotor->aStats[str_pad($plxShow->staticId(),3,'0',STR_PAD_LEFT) ]['url']);
    
    Je ne sais pas si ça répond entièrement à ton besoin.

    Consultant PluXml

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

  • Faut que je test ça. Je te tiens au courant.

    J'ai un string de l'array

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