[Résolu] Article Page d'accueil, home.php et plxMotor

krysttofkrysttof Member
octobre 2015 modifié dans Entraide
Bonjour à tous,
Nous pouvons décider que certains articles soient affichés en page d'accueil en cochant dans Emplacements, l'option Page d'accueil.
Dans ce cas seuls les articles ayant cette option cochée ont bien affichés en page d'accueil.
Pas de soucis.
Mais je ne trouve pas où cette possibilité est traitée dans le fichier home.php.
Est-ce que cela se fait dans la boucle :
<?php while($plxShow->plxMotor->plxRecord_arts->loop()): ?>
Si oui, est-ce dans le traitement de la classe plxMotor que cela se fait ?
Merci de votre aide !

Réponses

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

    ça se fait dans plxMotor

    fonction prechauffage()
    elseif(!$this->get OR preg_match('/^(blog|blog\/page[0-9]*|\/?page[0-9]*)$/',$this->get)) {
        $this->mode = 'home';
        ....
        # On regarde si on a des articles en mode "home"
        if($this->plxGlob_arts->query('/^[0-9]{4}.(home[0-9,]*).[0-9]{3}.[0-9]{12}.[a-z0-9-]+.xml$/')) {
            $this->motif = '/^[0-9]{4}.(home[0-9,]*).[0-9]{3}.[0-9]{12}.[a-z0-9-]+.xml$/';
        } else { # Sinon on recupere tous les articles
            $this->motif = '/^[0-9]{4}.(?:[0-9]|,)*(?:'.$this->homepageCats.')(?:[0-9]|,)*.[0-9]{3}.[0-9]{12}.[a-z0-9-]+.xml$/';
        }
    }
    

    dans la fonction demarrage()
    		if($this->mode == 'home' OR $this->mode == 'categorie' OR $this->mode == 'archives' OR $this->mode == 'tags') {
    			....	 
    			if(!$this->getArticles()) { # Si aucun article
    				...
    			}
    		}
    

    la fonction getArticles() va récupérer les articles (fichier .xml) en fonction du motif de recherche pour le regex $this->motif (qui contient home dans le regex)
    si on a des fichiers .xml avec "home" dans leur nom ce sera les articles publiés avec Emplacement = page d'accueil

    '/^[0-9]{4}.(home[0-9,]*).[0-9]{3}.[0-9]{12}.[a-z0-9-]+.xml$/'

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

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