Le plugin encarts coté rédacteur
Une fois le plugin installé, vous pouvez ajouter un ou plusieurs encarts à vos articles SPIP.
Vous disposez de 2 types d’encarts :
- les encarts simples écrits directement à l’intérieur du texte (et qui ne pourront s’afficher qu’à l’intérieur du texte)
- les encarts de type « objet SPIP » saisis depuis l’interface privée (qui pourront s’afficher, soit à l’intérieur du texte, soit dans la marge ou ailleurs, tel que défini par le graphiste dans le squelette)
1) Encarts simples
Pour ajouter un nouvel encart simple, dans le corps du texte :
- éditez le corps du texte de l’article
- choisissez, au sein du texte, l’endroit où votre encart doit apparaître
- rédigez y votre encart, puis entourez-le d’une balise <encart>
et </encart>
- ça doit donner quelque-chose semblable à ceci :
<encart>À lire dans la presse : «Biographie d'Adolphe Thiers, bourreau de la commune de Paris»</encart>
- cliquez sur « enregistrer »
- votre nouvel encart apparait au sein du texte de votre article !
- vous pouvez ajouter autant d’encarts de ce type dans votre article
Attention ! cette balise <encart>
sera remplacée par SPIP par une balise de type <span>
afin de pouvoir être insérée dans les paragraphes de texte (balises <p>
) ; ainsi, la mise en forme que vous mettrez dans ce type d’encart doit uniquement comporter des balises de type « en ligne » ; vous devez donc éviter les balises de type titres <hx>
, les doubles sauts de ligne, les notes de bas de page, les éléments <docxx>
, <videoxx>
...
Nota 1 : cette méthode diffère très peu de celle employée par d’autres plugins ajoutant des mises en forme au sein des textes d’article.
Nota 2 : les encarts de type "simple" insérés dans votre article par cette méthode ne pourront pas apparaitre dans d’autres articles.
2) Encarts « objet SPIP »
Dans la partie privée de SPIP, en bas de chaque article, vous disposez d’un bouton nommé "Ajouter un encart" qui vous permet d’ajouter un nouvel encart de type « objet SPIP » dans la base de donnée SPIP.
![](local/cache-vignettes/L594xH271/doc_encarts_01-d358c.jpg?1667394609)
Chaque encart porte un identifiant unique (un numéro) permettant de le manipuler comme tout objet SPIP : on peut ainsi l’afficher et le placer dans les squelettes grâce aux boucles SPIP.
Mode opératoire pour ajouter un encart en base de données :
- se déplacer à la fin de l’article
- cliquer sur le bouton « ajouter un encart »
![](local/cache-vignettes/L594xH298/doc_encarts_02-681d3.jpg?1667394609)
- remplissez le titre (éventuellement) et le texte de l’encart
- vous pouvez utiliser tous les raccourcis de SPIP pour la mise en forme du texte, y compris ajouter des liens ou des images
- cliquez sur le bouton « enregistrer »
- votre nouvel encart apparait au dessous de l’article, dans le bloc des encarts
![](local/cache-vignettes/L594xH271/doc_encarts_03-d4dd8.jpg?1667394609)
- vous pouvez ajouter autant d’encarts de ce type à un article
Nota : l’affichage de l’encadré sur le site public se gère dans le squelette ! Si le squelette ne prévoit pas explicitement l’affichage de l’encadré, celui-ci ne s’affichera pas !
Pour afficher un encart de type « objet SPIP » dans le corps du texte
À l’intérieur du texte d’un article, il est possible d’afficher un encart provenant de la base de données SPIP, grâce au modèle <encartXXX>
, XXX étant l’identifiant de l’encart ; voici la marche à suivre :
- vous avez déjà saisi un encart, et connaissez son numéro (imaginons que vous souhaitiez placer l’encart N°159)
- éditez le corps du texte de l’article
- choisissez l’endroit où devra apparaître votre encart
- insérez l’encart avec le code <encart159>
![](local/cache-vignettes/L594xH271/doc_encarts_04-477a4.jpg?1667394609)
- cliquez sur « enregistrer »
- SPIP va remplacer ce code par un appel à l’encart qu’il ira chercher en base de données
Nota 1 : afin d’éviter qu’un encart soit présent par inadvertance, à la fois dans le corps du texte et ailleurs dans le squelette [3] les encarts déjà présents dans le corps du texte disposent d’un statut spécial ; ce statut s’appelle « vu » et sa valeur passe à « oui » lorsque l’encart est appelé depuis le corps du texte ; ainsi dans les squelettes on pourra choisir de n’afficher dans la marge que les encarts qui ne sont pas déjà présents dans le corps du texte, et dont le statut sera « vu=non »
Nota 2 : comme chaque encadré porte un numéro unique, il peut être inséré dans le corps d’un autre article que son article parent ; l’encadré <encart63>
peut ainsi être placé dans tout article du site avec ce code.
Coté intégrateur : le plugin encart dans les squelettes
Le plugin crée un nouvel objet SPIP de type encart. Cet objet est composé des champs suivants, qui pourront être récupérés dans des boucles <BOUCLE_encart(ENCARTS)>
:
- id_encart
- date
- titre
- texte
Les encarts sont liés aux articles, et pour récupérer les encarts d’un article on utilise le critère {id_article}
dans les boucles. Ce qui donne par exemple pour récupérer tous les encarts liés à l’article 876 : <BOUCLE_encarts(ENCARTS){id_article=876}>
.
Comme on l’a vu, pour éviter d’afficher 2 fois un encart sur une page, si l’auteur a souhaité insérer son encart au sein du texte, SPIP attribue à l’encart en question le statut « vu » à « oui ». Il suffit donc d’ajouter ce critère dans la boucle, ce qui donne : <BOUCLE_encarts(ENCARTS){id_article=876}{vu=non}>
.
Les encarts qui sont insérés par l’auteur dans son texte, possèdent la class interne
, ce qui permet de styler ces encarts différemment des encarts placés dans un autre bloc par exemple.
Installation et dépendances
Le plugin Encarts s’installe depuis l’interface privée, de la manière classique :
- configuration > Gestion des plugins
- bouton « Ajouter des plugins » ; vérifiez que vos listes de plugins soient bien à jour
- descendre sur « Encarts », cliquez sur la flèche pour télécharger
- cliquez sur « suivant » pour installer et encore sur « suivant » pour activer
- gogogo ! Les encarts sont disponibles pour votre site !
Nota : le plugin « Encarts » nécessite 2 plugins utilitaires pour fonctionner :
- afficher objets, optimisant l’affichage des objets SPIP dans l’interface privée
- saisies, facilitant l’écriture des formulaires SPIP
Limites & Évolutions
Le plugin insère un <span>
s’il trouve le code <encart>
dans le texte ; cela évite l’ajoute de balises block dans les paragraphes SPIP du texte. A terme il faut remplacer cet inclusion de span par une inclusion de div, tout en détectant si on est pas déjà dans un paragraphe.
A terme, gérer le placement d’un encart par l’emploi éventuel de « left », « center » ou "right en paramètre de la balise : <encart159| left>
.
Aucune discussion
Ajouter un commentaire
Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :
Merci d’avance pour les personnes qui vous aideront !
Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.
Suivre les commentaires :
|
![Atom](plugins/dist/plugins/comments/feed/atom.png)