Changeset 113660 in spip-zone


Ignore:
Timestamp:
Jan 28, 2019, 4:50:53 PM (3 months ago)
Author:
tcharlss@…
Message:

Ajout d'un pipeline qui permet aux plugins de déclarer des pages uniques utiles, qu'on peut ensuite générer en un clic (même principe que le plugin menus). Le pipeline est tout simple, il s'agit de compléter un tableau associatif 'page => titre'. Incrémentation de y

Location:
_plugins_/pages/trunk
Files:
2 added
4 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/pages/trunk/lang/pages_fr.php

    r97456 r113660  
    1111        'aucune_page' => 'Il n’y a aucune page pour l’instant.',
    1212
     13        // B
     14        'bouton_generer_page_utile' => 'Créer la page <strong>@titre@ (<em>@page@</em>)</strong>',
     15        'bouton_generer_pages_utiles' => 'Créer <em>toutes</em> les pages utiles',
     16
    1317        // C
    1418        'convertir_article' => 'Convertir en article',
     
    2024        'erreur_champ_page_format' => 'Charactères alphanumériques en minuscules ou "_" uniquement',
    2125        'erreur_champ_page_taille' => '255 charactères maximum',
     26        'explication_pages_utiles' => 'Les squelettes actuels du site peuvent utiliser les pages suivantes.',
    2227
    2328        // L
     
    3237        // T
    3338        'titre_page' => 'Page',
     39        'titre_pages_utiles' => 'Pages utiles',
    3440        'toutes_les_pages' => 'Toutes les pages'
    3541);
  • _plugins_/pages/trunk/pages_fonctions.php

    r104327 r113660  
    4040        return $p;
    4141}
     42
     43
     44/**
     45 * Lister les pages uniques utiles qui ne sont pas encore créées
     46 *
     47 * Cette liste est complétée par les plugins tiers au moyen du pipeline pages_uniques_utiles.
     48 *
     49 * @uses pages_uniques_utiles()
     50 * @return array
     51 *     Tableau associatif : page => titre
     52 */
     53function pages_uniques_utiles() {
     54
     55        if (
     56                $pages_utiles = pipeline('pages_uniques_utiles', array())
     57                and is_array($pages_utiles)
     58        ) {
     59                include_spip('base/abstract_sql');
     60                foreach ($pages_utiles as $page => $titre) {
     61                        // Si la page existe déjà, on la vire
     62                        if (sql_countsel('spip_articles', 'page = '.sql_quote($page))) {
     63                                unset($pages_utiles[$page]);
     64                        }
     65                }
     66        }
     67
     68        return $pages_utiles;
     69}
  • _plugins_/pages/trunk/paquet.xml

    r113489 r113660  
    22        prefix="pages"
    33        categorie="divers"
    4         version="1.3.10"
     4        version="1.4.0"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.2.*]"
     
    3030        <pipeline nom="pre_boucle" inclure="pages_pipelines.php" />
    3131
     32        <!-- Déclaration des pipelines du plugin -->
     33        <pipeline nom="pages_uniques_utiles" action="" />
     34
    3235        <utilise nom="polyhier" compatibilite="[2.0.1;]" />
    3336
  • _plugins_/pages/trunk/prive/squelettes/contenu/pages.html

    r98873 r113660  
    2323                        |icone_verticale{<:pages:creer_page:>,page,new,right})]
    2424]
     25
     26[(#REM) Liste de pages utiles pas encore créées ]
     27<B_pages_utiles>
     28<h2><:pages:titre_pages_utiles:></h2>
     29<p class="explication"><:pages:explication_pages_utiles:></p>
     30<ul>
     31        <BOUCLE_pages_utiles(DATA){source table,#VAL|pages_uniques_utiles}>
     32        <li>
     33                [(#BOUTON_ACTION{<:pages:bouton_generer_page_utile{titre=#VALEUR,page=#CLE}:>, #URL_ACTION_AUTEUR{generer_pages_uniques_utiles, #CLE, #SELF}})]
     34        </li>
     35        </BOUCLE_pages_utiles>
     36        [(#TOTAL_BOUCLE|>{1}|oui)
     37        <li class="tous">
     38                [(#BOUTON_ACTION{<:pages:bouton_generer_pages_utiles:>, #URL_ACTION_AUTEUR{generer_pages_uniques_utiles, #VAL, #SELF}})]
     39        </li>
     40        ]
     41</ul>
     42</B_pages_utiles>
Note: See TracChangeset for help on using the changeset viewer.