SPIP-Contrib

SPIP-Contrib

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

286 Plugins, 197 contribuciones sur SPIP-Zone, 257 visitantes en este momento

Portada del sitio > Outils pour plugins > Config (CFG) > cfg: referencias

cfg: referencias

12 de septiembre de 2010 – por Martin Gaitan

Todas las versiones de este artículo: [Español] [français] [italiano]

5 votos

CFG es un plugin para SPIP que facilita la parametrización de otros plugins o esqueletos permitiendo crear fácilmente formularios de configuración.

Este artículo explica las bases de creación de esos formularios y el manejo de información a través de ellos. Además se proponen enlaces para profundizar en funciones avanzadas de CFG.

Único archivo de configuración

CFG nació por la necesidad recurrente de gestionar configuraciones en plugins y esqueletos.

Su lema es la sencillez. Por lo tanto la configuración de «cualquier_cosa» (un plug-in, una esqueleto o lo que quieras) se basa en un solo archivo fonds/cfg_cualquier_cosa.html [1]

Este «fond» contiene un formulario y las propiedades/opciones que se transmiten a CFG.

La modificación de datos (para una administrador del sitios) se realiza fácilmente a través de la acción CFG como ecrire/?exec=cfg&cfg=cualquier_cosa o cualquier_cosa correspondiente al nombre de archivo fonds/cfg_cualquier_cosa.html.

El formulario

Se trata de un formulario HTML estándar, interpretado como un esqueleto. Los datos manejados son reconocidos mediante el atributo «name» del campo del formulario. Por ejemplo:

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

Notas sobre los valores del atributo «name»

-  Los nombre comenzado por _cfg_ se reservan al funcionamiento interno.
-  Los nombres comenzados por id_ pueden ser problemáticos.

Enviar una acción asegurada
La acción del formulario está asegurada. Simplemente se debe agregar al formulario <form ...> un campo oculto:
<form method="post" action="#SELF">[(#ENV{_cfg_}|form_hidden)]

Botones de envío y cancelación
Por último, el botón de submit y el de reset deben llamarse _cfg_ok y _cfg_delete respectivamente (nombres reservados).

Formulario mínimo

Un formulario mínimo sería el siguiente:

Como se puede ver, los valores de los datos se recuperan con #ENV{cosa}

Importante : El método de análisis de los formularios de CFG implica respetar el orden de los atributos de los campos input, textarea, select: type y luego name; luego opcionalmente class y luego el resto de los atributos si los hubiera.

Las propiedades del objeto cfg

Mediante comentarios HTML comenzado por propiedad= es posible específicar propiedades intrínsecas del objeto CFG que manipulará el formulario.

Por ejemplo, se puede definir el título del formulario [2]

<!-- titre=Título del formulario-->

Se pueden usar balizas SPIP y archivos de idiomas:

<!-- descriptif=<multi>[es] Descripción en español [fr]Descriptif français [en]In english</multi>-->
<!-- descriptif=<:prefijo_plugin:descripcion_del_plugin:>-->
Aquí, la descripción será completamente interpretarse como un esqueleto ... incluyendo bucles y toda la maquinaria de guerra SPIP.

Propiedad Descripción
titre Uno de los dos títulos, será el principal si boite también está presente
boite Título secundario del formulario
descriptif La descripción mostrada a la izquierda
nom El prefijo de nombre con el que se guarda la información en la base. El valor predeterminado es el nombre del formulario , xxx de fonds/cfg_xxx

Existen otras propiedades avanzadas que pueden estudiarse en el artículo API CFG : Paramètres des formulaires

Usando los datos

Los datos almacenados se serializan bajo el nombre «cualquier_cosa» dentro de la tabla spip_meta.

Para recuperarlos dentro de un esqueleto se utiliza la baliza #CONFIG que interpreta cfg para extraer los datos particulares mediante el separador /.
Por ejemplo #CONFIG{cualquier_cosa/mi_area} devolverá el valor del campo mi_area producido por el formulario fonds/cfg_cualquier_cosa.html

Desde PHP se realiza análogamente mediante lire_config('cualquier_cosa/mi_area')

#CONFIG{} o lire_config() admiten como
segundo parámetro el valor a retornar por defecto. Por ejemplo
#CONFIG{cualquier_cosa/mi_area, área por defecto} devolverá <code>área por defecto si cualquier_cosa no existe o mi_area está vacía.

P.-S.

Por supuesto, toda contribución es bienvenida. Puedes solicitar convertirte en co-redactor.

cfg como ZIP en la zona

Notas

[1El «fond» que CFG use será el primero encontrado según el orden de prioridad de directorios: squelettes, luego un plugin activo, luego dist/, luego ecrire/

[2note el espacio entre <!-- y el = precedido del nombre del parámetro

Dernière modification de cette page le 12 de septiembre de 2010

Volver arriba

Comentar este artículo

¿Quién es usted?
  • [Conectarse]

Para mostrar su avatar con su mensaje, guárdelo en gravatar.com (gratuit et indolore) y no olvide indicar su dirección de correo electrónico aquí.

Añada aquí su comentario Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Añadir un documento

Volver arriba

Hablando de eso...

  • (fr) Métas

    8 août 2009 – 53 commentaires

    Ce petit plugin permet l’ajout, depuis l’espace privé, de metatags aux articles et rubriques de SPIP, ainsi que la mise en exergue de mots importants.

  • (fr) Formidable, le générateur de formulaires

    23 janvier 2012 – 2137 commentaires

    Un générateur de formulaires facilement configurable pour les non-informaticiens et facilement extensible pour les développeurs. Introduction L’objectif était de créer un plugin permettant de générer des formulaires. Historiquement, 2 plugins (...)

  • (fr) Massicot

    7 octobre 2015 – 61 commentaires

    Recadrez et redimensionnez vos images directement dans l’espace privé de SPIP ! Inspiré par le plugin photospip, ce plugin plus minimaliste permet de recadrer et redimensionner les images dans l’espace privé de SPIP. Une fois le plugin installé (...)

  • (fr) Formulaire de contact avancé

    23 mars 2009 – 1373 commentaires

    Un formulaire de contact configurable, avec de multiples options.

  • (fr) Intranet / Extranet

    31 mai 2013 – 79 commentaires

    Intranet / Extranet est un plugin très simple permettant d’interdire l’accès au site à tout visiteur non identifié. Mise à jour Voir fichier README du plugin. Mise en place La mise en place est rapide. Téléchargez le plugin. Activez (...)