Changeset 100237 in spip-zone for _plugins_/urls_pages/trunk


Ignore:
Timestamp:
Oct 27, 2016, 5:40:43 PM (3 years ago)
Author:
tcharlss@…
Message:

v1.0.7 : Dans la liste des fonds des pages, n'afficher qu'un squelette par page. Par exemple si un squelette « recherche.html » se trouve à la fois dans squelettes/ et dans squelettes/content/ avec Zore d'activé, la liste n'affiche que celui contenu dans squelettes/content/. On retire ça du toto.

Location:
_plugins_/urls_pages/trunk
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/urls_pages/trunk/TODO.md

    r100236 r100237  
    11# Plugin URLs Pages Personnalisées : choses à faire
    2 
    3 
    4 ## Liste des fonds des pages
    5 
    6 Une même page peut avoir plusieurs fonds, par exemple :
    7 - `squelette/contenu/lapage.html`
    8 - `squelettes/lapage.html`
    9 - `squelettes-dist/lapage.html`
    10 
    11 Dans la liste, il faudrait trouver un moyen (optionnel) de ne faire apparaître le fond d'une page qu'une seule fois, en prenant celui qui à la priorité (dans l'exemple, avec zCore activé, ce serait  `squelettes/contenu/lapage.html`).
    122
    133
  • _plugins_/urls_pages/trunk/inc/fonds_pages_to_array.php

    r100235 r100237  
    3030 * @param string $groupby_dossier
    3131 *    pour ranger les pages par dossier
     32 * @param string $filtrer_prioritaires
     33 *    Pour ne pas renvoyer les squelettes non prioritaires,
     34 *    Par exemple quand le même squelette est présent dans squelettes/ et squelettes-dist/,
     35 *    On ne renvoie que celui contenu dans squelettes/ car il est prioritaire.
    3236 * @return array
    3337 *     [page => chemin du squelette]
    3438 *     ou avec l'option $groupby_dossier : [dossier][page => chemin du quelette]
    3539 */
    36 function inc_fonds_pages_to_array_dist($exclure_pages_bdd = '', $groupby_dossier = '') {
     40function inc_fonds_pages_to_array_dist($exclure_pages_bdd = '', $groupby_dossier = '', $filtrer_prioritaires = '') {
    3741
    3842        // ====================================================
     
    134138                                and substr($page, 0, strlen('page-')) == 'page-'
    135139                        ) {
    136                                 $nom_page = substr($page, strlen('page-'));
     140                                $type_page = substr($page, strlen('page-'));
    137141                        } else {
    138                                 $nom_page = $page;
     142                                $type_page = $page;
    139143                        }
    140                         $is_fond_page = (!strlen($verifier_fond_page($chemin, array('doublon' => $exclure_pages_bdd))));
     144                        // Si nécessaire, filtrer les squelettes non prioritaires
     145                        if ($filtrer_prioritaires
     146                                and trouver_fond_page($type_page) !== $chemin
     147                        ) {
     148                                $is_fond_page = false;
     149                        }
     150                        // Vérifier que le squelette correspond à une page
     151                        else {
     152                                $is_fond_page = (!strlen($verifier_fond_page($chemin, array('doublon' => $exclure_pages_bdd))));
     153                        }
     154                        // Si c'est bon, on l'ajoute au tableau
    141155                        if ($is_fond_page) {
    142156                                // On organise le tableau différemment en fonction de $groupby_dossier
    143157                                if (!$groupby_dossier){
    144                                         $pages[$nom_page] = $chemin;
     158                                        $pages[$type_page] = $chemin;
    145159                                } else {
    146                                         $pages[$dossier][$nom_page] = $chemin;
     160                                        $pages[$dossier][$type_page] = $chemin;
    147161                                }
    148162                        }
  • _plugins_/urls_pages/trunk/paquet.xml

    r100236 r100237  
    22        prefix="urls_pages"
    33        categorie="statistique"
    4         version="1.0.6"
     4        version="1.0.7"
    55        schema="1.0.0"
    66        etat="experimental"
  • _plugins_/urls_pages/trunk/prive/objets/liste/fonds_pages.html

    r100235 r100237  
    2121<tbody>
    2222        #SET{compteur,0}
    23         <BOUCLE_dossiers_pages(DATA){source fonds_pages, exclure_pages_bdd, groupby_dossier}{par cle}>
     23        <BOUCLE_dossiers_pages(DATA){source fonds_pages, exclure_pages_bdd, groupby_dossier, filtrer_prioritaires}{par cle}>
    2424        #SET{compteur,#GET{compteur}|plus{1}}
    2525        <tr class="[(#GET{compteur}|alterner{row_odd,row_even})]">
Note: See TracChangeset for help on using the changeset viewer.