iGalerie

Documentation d'iGalerie 2

HTML dans les champs textes

Il est possible de mettre du code HTML dans les champs textes suivants :

  • description de la galerie
  • descriptions des catégories, albums et images
  • messages de pied de page et de fermeture de la galerie
  • pages et widgets personnalisés
  • page contact

Les champs textes qui autorisent du code HTML sont reconnaissables par la petite étiquette HTML qui se trouve au dessus et à droite du champ. En cliquant dessus, vous obtenez la liste des balises HTML et des attributs de balises autorisés.

L'étiquette HTML d'un champ texte
L'étiquette "HTML" d'un champ texte.

Exemple

Pour styler du texte, il est recommandé d'utiliser la balise <span> avec l'attribut style :

<span style="color:#1F4B9D;font-size:110%">Exemple de texte</span>

Sécurité

Le code HTML est filtré pour des raisons de sécurité. De manière générale, seules les balises de mise en forme du texte sont autorisées. Il est également possible d'ajouter des liens et des images. En revanche, le code Javascript n'est pas autorisé. Dans iGalerie, des membres peuvent créer des catégories et ajouter une description à cette catégorie. De même, des utilisateurs qui disposent des autorisations adéquates peuvent modifier la description des catégories et des images. C'est pourquoi il convient de filtrer le code HTML afin d'éviter notamment les injections de code Javascript malveillant (attaques XSS).

Balise <img>

Dans le même soucis de sécurité, le code pour l'ajout d'image est aussi filtré. Il est impossible par exemple de placer une image provenant d'un autre site dans votre galerie. Ceci afin d'éviter l'ajout de web-bug, mais aussi pour éviter de se servir de votre galerie pour mener une attaque de type CSRF.

C'est pourquoi toutes les images que vous souhaitez ajouter dans vos descriptions doivent se trouver dans le répertoire images d'iGalerie. Le code HTML à insérer devra donc ressembler à ça :

<img src="/igalerie/images/mon_image.jpg" />

ou bien encore à ça :

<img width="300" height="50" alt="Texte alternatif" src="http://mon-site/ma-galerie/images/mon_image.jpg" />

Code HTML ou Javascript en pied de page

Si vous souhaitez ajouter du code HTML non autorisés ou bien encore du code Javascript en pied de page, vous devrez modifier le fichier de template index.tpl.php (par exemple : template/default/index.tpl.php pour le thème "default").

Limitations de l'attribut style

Comme nous l'avons vu plus haut, vous pouvez utiliser la balise <span> avec du code CSS. Cependant, toujours pour des raisons de sécurité, certains caractères ne sont pas autorisés avec l'attribut style, notamment le slash (/), ce qui a pour conséquence d'interdire l'utilisation de certaines propriétés CSS comme la propriété background-image (risques identiques à la balise <img>). Pour contourner cette limitation, il suffit d'utiliser un identifiant (ou une classe) sur une balise, puis d'appliquer les propriétés souhaitées sur cet identifiant en utilisant la fonctionnalité Style additionnel située dans la section Thèmes. Le style additionnel n'étant pas filtré, vous pouvez indiquer toutes les règles CSS que vous le souhaitez.

Dernière modification : 15/01/2011