PluXml.org

Blog ou CMS à l'Xml

Vous n'êtes pas identifié(e).

#1 14/02/2018 10:23:54

jeromef
Membre
Inscription : 27/01/2014
Messages : 8

Lister les pages marquées "masquer"

Bonjour à tous
Pluxml est formidable (voila c'est dit smile
et juste une petite épine que je n'arrive pas à régler, comment lister les pages marquées "masquer" du menu pour une page "plan du site"

La fonction suivante ne listant que les "visibles"...
<?php $plxShow->staticList('accueil','<li id="#static_id" class="#static_class"><a href="#static_url" class="#static_status" title="#static_name">#static_name</a></li>') ?>

J'ai essayé de bidouiller des choses en faisant un groupe... mais rien de probant
Des suggestions ?

Hors ligne

#2 14/02/2018 10:44:56

Gzyg
Membre
Inscription : 25/09/2006
Messages : 871
Site Web

Re : Lister les pages marquées "masquer"

Salut,

Très bonne question. smile


à plus,

Gzyg

Hors ligne

#3 14/02/2018 10:57:44

jeromef
Membre
Inscription : 27/01/2014
Messages : 8

Re : Lister les pages marquées "masquer"

Ca fait plaisir, même si ca répond pas à la question smile, déjà un bon point avec une bonne question !
En espérant que les autres qui aimeront la question auront des pistes.

Hors ligne

#4 14/02/2018 13:46:19

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 060
Site Web

Re : Lister les pages marquées "masquer"

En mode quick & dirty car j'ai pas trop le temps de tester, ce qui suit devrait t'aider :

[== PHP ==]
<?php

$format = <<< FORMAT
    <li class="#static_class #static_status" id="#static_id" >
        <a href="#static_url" title="#static_name">#static_name</a> (#static_group)
    </li>\n
FORMAT;

if(!empty($this->plxMotor->aStats)) {
    echo <<< LIST_START
<ul class="celkivabien" id="gennepa">\n
LIST_START;

    foreach($this->plxMotor->aStats as $statId=>$params) {
        if(!empty($params['active']) AND $params['menu'] != 'oui') { # La page  est bien active et dispo ds le menu
            if($params['url'][0]=='?') # url interne commençant par ?
                $url = $this->plxMotor->urlRewrite($params['url']);
            elseif(plxUtils::checkSite($params['url'],false)) # url externe en http ou autre
                 $url = $params['url'];
            else # url page statique
                $url = $this->plxMotor->urlRewrite('?static'.intval($statId).'/'.$params['url']);
            $replaces = array(
                '#static_id'        => 'static-'.intval($statId),
                '#static_class'     => 'static',
                '#static_url'       => $url,
                '#static_name'      => plxUtils::strCheck($params['name']),
                '#static_status'    => ($this->staticId()==intval($statId)) ? 'active' : 'noactive',
                '#static_group'		=> plxUtils::strCheck($params['group'])
            );
            echo str_replace(array_keys($replaces), array_values($replaces), $format);
        }
    }

    echo <<< LIST_END
</ul>
LIST_END;
} else {
?>
<p>
    Nous ne cachons aucune page statique
</p>
<?php
}
?>

Avec la coloration syntaxique c'est mieux.

Code modifié le 21/02/2018

Directement inspiré de $plxShow->staticList() mais bien revisité quand même.

Reste à traiter les groupes

Dernière modification par bazooka07 (21/02/2018 15:28:45)

Hors ligne

#5 14/02/2018 14:16:48

jeromef
Membre
Inscription : 27/01/2014
Messages : 8

Re : Lister les pages marquées "masquer"

J'ai copié collé en mode barbare et paf ... plus rien !
Je regarde tout ca un peu plus en détail dès ce soir
Merci beaucoup bazooka pour le quick retour

ps : j'ai découvert ton site du coup et Alpine linux et ... absolument RIEN compris mais j'aime bien le nom smile

Hors ligne

#6 21/02/2018 11:06:05

jeromef
Membre
Inscription : 27/01/2014
Messages : 8

Re : Lister les pages marquées "masquer"

Hello à tous & spécialement Bazooka
Pas réussi à faire marcher ce code... je m'y suis peut être pris comme un manche (fort possible smile mais plus rien ne s'affiche !
Je vais essayer de bidouiller encore ce code !

Si je réussi, je marquerais résolu avec la solution !
Nice day all

Hors ligne

#7 21/02/2018 15:32:21

bazooka07
Membre
Lieu : Quelque part en Rhône-Alpes
Inscription : 06/02/2014
Messages : 1 060
Site Web

Re : Lister les pages marquées "masquer"

Non pas vraiment

Comme précisé cela a été fait en mode quick and dirty. Donc pas de test Et évidemment il y a queques bugs.

J'ai corrigé le code dans le billet #5 et dans le lien externe. En gros, il faut remplacer $plxShow par $this. Plus quelques bricoles. Mais le principe est le même.

Dernière modification par bazooka07 (21/02/2018 15:32:44)

Hors ligne

Pied de page des forums

A propos Nous soutenir Contact Twitter Google+
Copyright © 2006-2018 PluXml.org, tous droits réservés