info:logiciels:doku:plugins:pagequery
Différences
Ci-dessous, les différences entre deux révisions de la page.
— | info:logiciels:doku:plugins:pagequery [2018/05/03 11:07] (Version actuelle) – créée - modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag> | ||
+ | <WRAP hide> | ||
+ | == Adaptation du plugin Pagequery == | ||
+ | </ | ||
+ | Ce plugin très puissant permet de créer et d' | ||
+ | Bon la syntaxe et la pléthore d' | ||
+ | |||
+ | Voici la syntaxe utilisée pour l' | ||
+ | < | ||
+ | sort=ns: | ||
+ | display={title}; | ||
+ | group; | ||
+ | cols=5; | ||
+ | border; | ||
+ | snippet; | ||
+ | hidejump; | ||
+ | bullet=square; | ||
+ | layout=column; | ||
+ | filter=!ns: | ||
+ | }}</ | ||
+ | |||
+ | <WRAP center round info 60%> | ||
+ | Le paramètre '' | ||
+ | </ | ||
+ | |||
+ | Et une autre pour un espace de nom spécifié (cette fois basé sur les noms des pages et pas leur titre) : | ||
+ | < | ||
+ | sort=ns: | ||
+ | group; | ||
+ | cols=5; | ||
+ | proper; | ||
+ | border; | ||
+ | snippet=quote, | ||
+ | hidejump; | ||
+ | bullet=square; | ||
+ | layout=column; | ||
+ | }}</ | ||
+ | |||
+ | |||
+ | <WRAP center round important 60%> | ||
+ | Ne sachant pas comment // | ||
+ | </ | ||
+ | |||
+ | |||
+ | Et voici un exemple du résultat avec le code initial : | ||
+ | {{ info: | ||
+ | |||
+ | Mouais :-/.\\ | ||
+ | Pas terrible avec tous ces liens '' | ||
+ | |||
+ | // | ||
+ | {{ info: | ||
+ | |||
+ | Revoici le premier exemple avec ce qui a été supprimé (<color blue>à raison</ | ||
+ | {{ info: | ||
+ | |||
+ | À mon humble avis : | ||
+ | * si la racine du wiki ('' | ||
+ | * les espaces de nom qui ne contienne qu'une page d' | ||
+ | |||
+ | Donc, en l' | ||
+ | |||
+ | ====== La bidouille ====== | ||
+ | |||
+ | <WRAP center round alert 60%> | ||
+ | Sur un wiki très fourni, cette bidouille va beaucoup ralentir le chargement de la page car il s'agit de passer en revue tous les éléments de la requête // | ||
+ | </ | ||
+ | |||
+ | Il faut modifier le fichier '' | ||
+ | < | ||
+ | Ceci : | ||
+ | <code php>// Bidouille | ||
+ | $prevpagetarget = " | ||
+ | // Pour chaque élément récolté par la requête | ||
+ | foreach ($sorted_results as $key => $page) { | ||
+ | // Noter le lien sur lequel pointe l' | ||
+ | $newpagetarget = $page[2]; | ||
+ | // Eléments de comparaison | ||
+ | $startns = array (1, " | ||
+ | $userns = array (1, " | ||
+ | // Si l' | ||
+ | if ($page == $startns) { | ||
+ | // Lien à intégrer | ||
+ | $newpagetarget = $conf[' | ||
+ | // Intégration du lien | ||
+ | $sorted_results[$key] = array (1, " | ||
+ | // Si le lien de l' | ||
+ | } elseif (($newpagetarget == $prevpagetarget) or ($page == $userns)) { | ||
+ | // suppression de l' | ||
+ | unset($sorted_results[$key]); | ||
+ | } | ||
+ | // Le lien de l' | ||
+ | $prevpagetarget = $newpagetarget; | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | Et le tour est joué : | ||
+ | {{ info: | ||
+ | |||
+ | ====== [hidepages] : DokuWiki à la rescousse ====== | ||
+ | |||
+ | Dans le cas plus simples où il suffit d' | ||
+ | <WRAP center round tip 60%> | ||
+ | **Pourquoi ne pas procéder ainsi pour l' | ||
+ | Si l'on utilise cette possibilité, | ||
+ | </ | ||
+ | |||
+ | Voici les pages à exclure ici : | ||
+ | {{ info: | ||
+ | |||
+ | Donc : | ||
+ | * toutes les pages dont le nom est //topbar// | ||
+ | * toutes les pages de l' | ||
+ | |||
+ | Je suis loin d' | ||
+ | < | ||
+ | |||
+ | Et voici le résultat : | ||
+ | {{ info: |
info/logiciels/doku/plugins/pagequery.txt · Dernière modification : 2018/05/03 11:07 de 127.0.0.1