Fonction catDescription

Bonjour à tous,

En créant un thème je me rend compte que $plxShow->catDescription renvoie des valeurs de mise en forme

<div class="infos">#cat_description</div>

Je propose une modification pour avoir le choix lors de la création du template

    /**
     * Méthode qui affiche le contenu de la description d'une catégorie
     *
     * @param   format  format du texte à afficher (variable: #cat_description)
     * @param   echo    si à VRAI affichage à l'écran
     * @scope   categorie
     * @author  Stephane F.
     **/
    public function catDescription($format='<div class="infos">#cat_description</div>', $echo=true) {

        $desc = plxUtils::getValue($this->plxMotor->aCats[$this->plxMotor->cible]['description']);
        if($this->plxMotor->mode AND $desc)
            $result = str_replace('#cat_description',$desc, $format);
            if($echo)
                echo $result;
            else
                return $result;
    }

Désolé de pas la proposé en PR, j'ai fais la modif à la volé.

J'ai un string de l'array

Réponses

  • bazooka07bazooka07 Member
    8 juin modifié

    Avant d'utiliser $this->plxMotor->cible, il convient de s'assurer que $this->plxMotor->mode == 'categorie'.

    public function catDescription($format='<div class="infos">#cat_description</div>', $echo=true) {
    
        if($this->plxMotor->mode == 'categorie') {
            $id = $this->plxMotor->cible;
            $desc = plxUtils::getValue($this->plxMotor->aCats[$id]['description']);
            if($echo) {
                if(!empty($desc)) {
                    echo str_replace('#cat_description', $desc, $format);
                }
            } else {
                return $desc;
            }
        }
    
        if(!$echo) {
            return '';
        }
    }
    

    Je vais envoyer un PR.

  • flipflipflipflip Member

    Avant d'utiliser $this->plxMotor->cible, il convient de s'assurer que $this->plxMotor->mode == 'categorie'.

    Possible, je n'ai pas regardé cette partie et j'ai laissé le code d'origine.

    J'ai un string de l'array

  • krockroc Member

    Ça serait bien de permettre aussi cela pour les meta, qui sont mis en forme directement.
    <?php $plxShow->meta('$meta') ?> formate directement la valeur avec des balises, ce qui n'est pas très pratique à personnaliser dans un thème.

    Merci

    Mes sites propulsés par ce cher PluXml : www.krocui.com - www.lucasdebruyn.com - www.coolraool-publishing.com

  • bazooka07bazooka07 Member

    Tu veux personnaliser quoi ?
    A part utiliser d'autres valeurs pour name dont le content n'est pas stocké dans PluXml, je ne vois rien de plus.
    La méthode a juste besoin d'être refactorisée (switch !!)

  • krockroc Member
    10 juin modifié

    En fait, j'aimerai par exemple personnaliser par exemple la balise title de cette façon :
    "titre de l'article"-"catégorie de l'article"-"mon nom"

    Et la meta description :
    "titre de l'article"-"categorie de l'article"-"chapo (x caractères)"

    Là je suis obligé de tout faire à la main, ça me prends des heures, et pas possible de modifier si je me rends compte que ça ne va pas.

    Mes sites propulsés par ce cher PluXml : www.krocui.com - www.lucasdebruyn.com - www.coolraool-publishing.com

  • TomekTomek Member

    Je déterre le sujet, mais autre cas bien pratique d'utilisation : utiliser les données des meta pour les insertions meta des réseaux. À moins qu'il existe un plugin qui fasse déjà l'insertion des métas pour les réseaux sociaux ?

  • krockroc Member
    8 nov. modifié

    Je crois qu'une demande de modification est en cours sur ce sujet de la mise en forme forcée de PlxShow qui restreint certains usages dont les balises de partage sur les réseaux sociaux.
    https://forum.pluxml.org/discussion/6821/echo-et-return-sur-la-fonction-plxshow-meta/p1

    Mes sites propulsés par ce cher PluXml : www.krocui.com - www.lucasdebruyn.com - www.coolraool-publishing.com

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