en fr
acs.geomaticien.org
En construction - Under constructionLogiciel libre de création de sites web
Accueil du site > Documentation > Composant ACS
en fr

Composant ACS


Un composant ACS est une page ou un morceau de squelette Spip configurable par l’interface web du site.

GIF - 28.8 ko
Composant Fond

Webmestre, web-designer

Le webmestre ou le web-designer configure l’apparence et le fonctionnement du site en configurant ACS et les composants du modèle ACS choisi à partir du menu Configuration de l’espace privé, sous-menu Configurer le Site. La première chose à faire est de paramétrer le composant qui définit le style général de tout le site (le composant Fond, dans le modèle Cat), de choisir quels composants optionnels on décide d’activer, puis éventuellement d’insérer ceux-ci dans un composant conteneur (Comme une instance du composant Module du modèle Cat).



Développeurs

Un composant respecte les critères de ce qui définit un objet, en programmatiion :
- l’encapsulation : tout ce qui concerne un composant se trouve dans le dossier du composant.
- le polymorphisme : chaque composant utilise des noms de propriétés unifiés ; l’apparence et le fonctionnement d’un composant peuvent différer selon le squelette où ils sont intégrés, selon le contexte, etc.
- l’héritage : un composant peut "hériter" certaines de ces propriétés d’un autre composant.

Pour la partie publique du site, un composant est un simple morceau de squelette Spip. Pour la partie "ecrire", un composant est un objet avec des propriétés configurables par interface web.

Insérer un composant ACS dans un squelette

Tous les composants du modèle ACS actifs peuvent être intégrés aux pages de squelettes nouveaux ou existants, avec la balise INCLURE de Spip :
<INCLUREfond=composants/<composant>/<sous-composant>>

On peut passer des paramètres aux composants :

<INCLUREfond=composants/<composant>/<sous-composant>self=#SELFautres paramètre(s)>

Dans cet exemple, passer self permet à Spip de différencier les caches, pour assure un bon fonctionnement quand un même composant est utilisé sur plusieurs pages, et cette petite subtilité permet aux composants ACS "ajaxifiés" de bénéficier en mode Ajax
d’un cache Spip différent de celui de leur conteneur.

Créer ou modifier composant ACS

Le plus simple est de créer un dossier squelettes et d’y créer un sous-dossier composants, ou de créer directement un sous-dossier composants dans le dossier des squelettes existants, puis d’y copier/coller un ou plusieurs composants d’un modèle ACS existant et d’y créer un fichier composants/config.php avec la liste des composants que vous voulez rendre disponibles. En déclarant ce dossier des squelettes dans ACS (Onglet Administration), les composants de votre squelette seront automatiquement utilisés à la place des composants homonymes du modèle ACS actif. Votre squelette pourra donc ainsi utiliser les composants du modèles ACS actif, vos composants "hérités" du modèle actif modifiés par vos soins, et vos nouveaux composants.

Un seul fichier est réellement indispensable pour définir un composant, c’est le fichier composants/<composant>/ecrire/composant.xml

Dossiers et fichiers d’un composant :

- composants/composant : racine

- composants/composant/composant.html : squelette du composant
- composants/composant/composant.css.html : feuille de style du composant
- composants/composant/lang/ : fichiers de langue du composant (espace public)
- composants/composant/composant.php : définition optionnelle d’une classe implémentant des méthodes prédéfinies, (comme insert_head, par exemple), pour le composant.
- composants/composant/composant_balises.php : définition optionnelle de balises spip propres au compoant

- composants/composant/ecrire/ : éléments de l’espace ecrire
- composants/composant/ecrire/composant.xml : fichier de définition du composant
- composants/composant/ecrire/lang/ : dossier des traductions du composant pour l’espace privé
- composants/composant/ecrire/composant.php : définition optionnelle d’une classe implémentant des méthodes prédéfinies, (comme afterUpdate, par exemple), pour le composant.

- composants/composant/img_pack/ : images et icônes du composant

Le fichier composant.xml

Le composant C est défini par son fichier composant.xml (dossier composants/C du squelette actif). Ce fichier définit les caractéristiques, les paramètres et les variables du composant C. Sa syntaxe est copiée sur celle des fichiers plugin.xml de Spip.

- nom : nom du composant (nom canonique dans la langue choisie par le développeur du composant, de préférence le français, l’anglais, ou l’espéranto)
- auteur : auteur(s) du composant
- version : version du composant (doit correspondre à la version d’ACS)
- version_acs_min : version minimale d’ACS.
- version_acs_max : version max d’ACS.
- version_spip_min : version minimale de Spip.
- version_spip_max : version max de Spip.

param :
- optionnel : true (absent= false, par défaut),
ou nom de variable meta (activation si la variable vaut "oui"),
ou plugin(s) nom_de_plugin (activation du composant si le plugin nom_de_plugin est actif)
- preview : true (absent=false, par défaut). Hauteur de preview si numérique.

variable :
- nom : nom de la variable
- type : type de variable : img, couleur, textarea, widget ...
- valeur : valeur par défaut. Peut être le nom d’une variable ACS : dans ce cas, la valeur est par défaut la valeur de la variable ACS.
- chemin : "chemin de la variable". C’est le chemin par défaut des images pour une variable de type image. Chemin relatif à partir de $GLOBALS[’ACS_CHEMIN’] (accessible par la balise #ACS_CHEMINmondossier/monimage.png depuis un squelette).
- label : "non" pour ne pas afficher de label pour cette variable.

type de variable usage contrôle ACS
Color choix d’une couleur
Img choix d’une image, upload
LargeurBord Choix d’une largeur de bordure
StyleBord Choix d’un style de bordure
Nombre saisie d’un nombre
Text saisie d’un texte court (input de type texte)
Textarea saisie d’un texte long (textarea)
Choix choix entre plusieurs alternatives
Widget choix de composants (conteneur)
Hidden input de type hidden

Exemple :

<composant>
 <!-- Nom du composant -->
 <nom>MonComposant</nom>
 <!-- Auteur du composant -->
 <auteur>Nous &copy; 2008 - licence GPL</auteur>
 <version>0.3</version>
 <version_acs_min>0.3</version_acs_min>
 <version_acs_max>0.3</version_acs_max>
 <version_spip_min>1.9207</version_spip_min>
 <version_spip_max>1.9208</version_spip_max>

 <param>
   <nom>optionnel</nom>
   <valeur>true</valeur>
 </param>

 <variable>
   <nom>Color</nom>
   <type>color</type>
 </variable>
</composant>

Le composant MonComposant définit une couleur. Cette couleur est accessible partout dans les squelettes : c’est la variable #CONFIGacsMonComposantColor (en général, une couleur sera utilisée plutôt dans la feuille de style du compoant (fichier.composants/composant/composant.css.html).

Lu par 17301 personnes depuis le mardi 24 juin 2008

Un message, un commentaire ?

modération à priori

Ce forum est modéré à priori : votre contribution n'apparaîtra qu'après avoir été validée par un administrateur du site.

Un message, un commentaire ?
  • (Pour créer des paragraphes, laissez simplement des lignes vides.)

Qui êtes-vous ? (optionnel)

ACS, c’est l’Assistant de Configuration du Site.
67 textes de 6 auteur-e-s lus 437782 fois par 345284 personnes.