Peut-on détecter le fait de prévisualiser une page ?

Bonjour,
Petite question rapide, auquel je n'ai pas trouvé de réponse simple...

Je voudrais étre capable de détecter avec du code PHP le fait de visualiser un article en cours de rédaction.
Mon objectif est simple, je veux cacher des fonctionnalités sociales lorsque je prévisualise un article qui me cause des erreurs... En étant capable de savoir si je prévisualise un article, je pourrais ne pas les afficher sur ces pages...

Merci de votre aide !

Réponses

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

    dans le fichier core/lib/class.plx.motor.php, le preview ça se passe

    dans la fonction préchauffage
    elseif($this->get AND preg_match('/^preview\/?/',$this->get) AND isset($_SESSION['preview'])) {
    			$this->mode = 'preview';
    			$this->template = 'article.php';
    			if($this->aConf['capcha'] == 1) # On cree notre objet capcha si besoin est
    				$this->plxCapcha = new plxCapcha();
    		}
    
    dans la fonction demarrage
    elseif($this->mode == 'preview') {
    			$this->mode='article';
    			$this->plxRecord_arts = new plxRecord($_SESSION['preview']);
    			$this->template=$this->plxRecord_arts->f('template');
    			return;
    		}
    
    et tu peux utiliser les hooks plxMotorPreChauffageBegin ou plxMotorPreChauffageEnd et plxMotorDemarrageBegin ou plxMotorDemarrageEnd en fonction de ce que tu veux faire en passant par un plugin (ce qui évitera de modifier le core).

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Bon bah encore une fois merci Stéphane... :p
    J'ai trouvé mon bonheur avec le code suivant :
    $get =$plxShow->plxMotor->get;
    if($get =="preview"){
    // TODO Faire des trucs lors du preview
    }
    
    Merci Stéphane!
Connectez-vous ou Inscrivez-vous pour répondre.