SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano | Nederlands

289 Plugins, 197 contribs sur SPIP-Zone, 124 visiteurs en ce moment

Home > Strumenti per i Plugin > Config (CFG) > cfg: guida

cfg: guida

8 dicembre 2007 – di mmmx

Tutte le versioni di questo articolo: [Español] [français] [italiano]

2 votes

Come scrivere un form fond/cfg_machin e parametrizzarlo per una configurazione facile e standardizzata d’un plugin, modello o altro.
Utilizzo dei dati #CONFIG{machin/truc} o lire_config("machin/truc")

Quest’articolo introduce CFG. Per le funzioni avanzate trovate i link nell’articolo

Unico file di configurazione

cfg è stato motivato dalla necessità ricorrente di impostare configurazioni di plugins o modelli(squelettes).

Il suo tema ricorrente è dunque la semplicità. Infatti una configurazione «machin» (un plugin, un modello o altro) è basata sul file unico fonds/cfg_machin.html, il primo trovato nell’ordine delle priorità di spip... in squelettes/, uno dei plugin attivi o dist/.

Questo «fond» contiene essenzialmente un form e opzionalmente delle proprietà per l’oggetto cfg di controllo.

Nei file di questo plugin si trovano alcuni fond di esempio, nella sottocartella fonds/, come del resto accade per numerosi plugin. Potete trovare i fond /cfg_xxx nei plugin crayons, csv2spip, etc.

La modifica dei dati è realizzata da una semplice chiamata dell’action cfg nel modo: ecrire/?exec=cfg&cfg=machin

Il form

Si tratta di un form HTML standard, interpretato come un modello (squelette). I dati gestiti sono riconosciuti attraverso l’attributo «name» dei tag classici dei controlli di un form:

-  <input type="text" name="truc"...>,
-  <select name="truc"...>,
-  <textarea name="truc" ...>,
-  .etc.

Non dovete utilizzare nomi che cominciano per _ cfg _, sono riservati al funzionamento interno.

Poiché l’action del form esegue controlli di sicurezza, è necessario aggiungere i dati di controllo, semplicemente facendo seguire a<form ...> alcuni input «hidden» ad esempio:
<form method="post">[(#ENV{_cfg_}|form_hidden)]

Infine, i submit di convalida o di soppressione devono essere nominati rispettivamente _ cfg_ok o _cfg_delete (nomi riservati)

Un form minimale sarebbe dunque:

Come si può notare, i valori dei dati sono passati nel contesto, dunque ricuperabili da #ENV{truc}

Importante: Il metodo d’analisi dei form di CFG implica il rispetto del seguente ordine negli attributi dei tag utilizzati(textearea, select, input...):

-  type
-  name
-  poi il resto

Ad esempio:
<input type=... name=... .../>
<textearea/select name=... .../>

Le proprietà dell’oggetto cfg

È possibile aggiungere commenti che cominciano per propriete= per precisare proprietà intrinseche dell’oggetto cfg che tratterà il form.

Ad esempio, si può definire così il titolo del form:
[(#REM) titre=Le titre du formulaire] (dalla versione 1.2
<!-- titre=Le titre du formulaire -->
Tale commento SPIP sarà semplicemente passato inpropre(), per una semplice impaginazione.

Si possono anche utilizzare commenti HTML come :
<!-- descriptif=<multi>[fr]Descriptif français [en]In english</multi>-->
Qui, descriptif sarà completamente interpretata come un modello, con cicli e tutti gli altri strumenti di SPIP.

Se non desiderate che un trattamento di base, è preferibile il primo metodo, meno pesante.

Proprieta Descrizione
titre Farà da titolo principale se è presente anche boite
boite Il titolo del form boite, il cui default è titre se présente, ’Configuration machin" altrimenti
descriptif Descrizione in alto a sinistra
nom Nome del target in cui sarà salvata la configurazione, per default è il nome del form xxx in fonds/cfg_xxx

Esistono altre proprietà avanzate che potete trovare nell’articolo Configurazioni avanzate con CFG Configurazioni avanzate con CFG

Utilizzo dei dati

I dati salvati sono serializzati sotto il nome «machin» nella tabella
spip_meta.

Si recuperano nei modelli con il segnaposto #CONFIG che è esteso da cfg per estrarre le suddivisioni con il separatore /
Ad esempio #CONFIG{machin/mon_area} darà il valore del campo mon_area prodotto dal form fonds/cfg_machin.html

In php, si può utilizzare analogamente
lire_config('machin/mon_area')

#CONFIG{} o lire_config() ammettono come secondo parametro il valore da ritornare per default. Ad esempio #CONFIG{machin/mon_area,defaut area} darà defaut area se machin o mon_area sono vuoti.

Segnaposto #CFG_ARBO: piccolo aiuto allo sviluppo

:

La versione 1.0.10 introduce il segnale #CFG_ARBO per facilitare la fase di sviluppo del plugin che utilizza CFG. La sua presenza in un fond, nella parte privata di SPIP, elenca i campi salvati nella tabella spip_meta o nel parametro che gli è passato, con lo stesso principio di #CONFIG. Così, #CFG_ARBO{squelette} elencherà tutti i campi registrati in spip_meta/squelettes dell’esempio precedente.

P.S.

Ovviamente, qualsiasi contributo è il benvenuto, potete facilmente chiedere di diventare coredattori.

Inoltre, anche se non siete tra gli autori, potete rispondere sul forum se avete un’idea.

cfg nel zip della spip-zone

Dernière modification de cette page le 8 dicembre 2007

Retour en haut de la page

Rispondere all’articolo

Chi sei?

Per mostrare qui il tuo avatar, registralo prima su gravatar.com (gratis e indolore). Non dimenticare di fornire il tuo indirizzo email.

Inserisci qui il tuo commento Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Aggiungi un documento

Retour en haut de la page

Ça discute par ici

  • (fr) Module de paiement Paypal Express Checkout

    12 juin 2015 – commentaires

    Ce mode de paiement par Paypal Express Checkout est sécurisé et peut-être utilisé en toute confiance. Il permet également, dans le cadre de certaines boutiques, d’optimiser le workflow de paiement en sautant l’étape de création de compte et en (...)

  • (fr) Commandes

    16 mai 2014 – 68 commentaires

    Le plugin « commandes » permet de gérer des commandes. Attention Le plugin ne s’occupe pas de la gestion des paniers, ni des paiements, ni des factures. Pour l’aspect « boutique », voir le post-scriptum. Ce plugin a été élaboré grâce aux contributions (...)

  • (fr) Slick

    17 mai 2017 – 23 commentaires

    Intégration à SPIP du carrousel Slick : https://kenwheeler.github.io/slick/ Fonctions de Slick Son utilisation permet d’afficher une liste d’éléments défilants, en l’occurrence ici une série de photographies. Par les configurations proposées, il est (...)

  • (fr) Mailsubscribers

    16 janvier 2013 – 385 commentaires

    Ce plugin permet de gérer les inscriptions (ou abonnements) à la diffusion de contenu par email. Mailsubscribers permet de gérer les inscriptions par Opt-in simple ou double et la désinscription par URL. Ce plugin gère également plusieurs listes de (...)

  • (fr) oEmbed

    4 décembre 2013 – 140 commentaires

    C’est quoi ce truc ? oEmbed est un protocole ouvert qui permet d’insérer le contenu d’une page web dans une autre page. Le contenu inséré peut être de plusieurs types : photo, vidéo, URL ou extrait HTML. L’échange d’information a lieu entre un site (...)