Motivations
Avec les versions actuelles de SPIP, il est possible d’afficher des documents avec les articles de deux façons :
- en les attachant à l’article (les documents sont alors juste affiché en bas de l’article [1]),
- en utilisant les balises <docXXX|...>
pour insérer un document directement dans le texte.
Cette dernière méthode permet d’utiliser n’importe quel document, même si il n’est pas à l’origine attaché à l’article. Plusieurs contribs permettent déjà de parcourir tous les documents du site, pour trouver le bon ID.
Malheureusement, il y a des cas où l’on ne veut pas insérer le document dans le texte. Dans ce cas, il n’y a pour l’instant aucun moyen de réutiliser un document déjà sur le site. Il faut alors le re-télécharger et avoir un fichier en double sur le serveur. Si l’on fait cela avec beaucoup de documents, le quota du fournisseur va vite exploser.
Par exemple, sur mon site, je gère une galerie d’image avec le squelette qui suppose que les images à afficher soit associées à l’article, mais pas dans le texte — il n’y a pas de texte à une galerie. Si je veux donc avoir une image dans plusieurs galerie, je dois la télécharger plusieurs fois.
Un deuxième cas est la gestion des traductions. Quand on fait une traduction sur SPIP, on aimerait dans certain cas utiliser les mêmes documents dans chaque langue de l’article. Si ces documents n’ont pas pour but d’être insérés dans le texte, alors on est encore confronté au problème discuté ici.
Solutions
SPIP gère l’association des documents à un article à travers une table mysql très simple :
id_document | id_article |
---|---|
234 | 1 |
235 | 1 |
345 | 2 |
... | ... |
On peut donc facilement associer des documents à des articles en ajoutant une nouvelle ligne :
INSERT INTO spip_documents_articles (id_document, id_article) VALUES ($id_document, $id_article)
Utilisation
Cette nouvelle page s’intègre à l’interface privée de SPIP, vous pouvez y accéder à partir de l’adresse :
votre_site.net/ecrire/associer_document.php
une fois le fichier installé.
L’association se passe en deux temps :
vous devez d’abord choisir l’article où vous voulez prendre les documents et l’article où vous voulez les mettre.
Ensuite, vous choisissez les documents que vous souhaitez associer et validez.
Et VOILA.
ATTENTION
Il faut tout de même faire attention à deux choses :
- Les documents sont associés à d’autres articles et peuvent donc être effacé par d’autres personnes. SPIP est fait de tel façon que si l’on efface un document dans un article, il sera effacé dans tous les articles.
- Ces autres articles peuvent être mis à la poubelle. Ils ne seront pas physiquement effacés et les documents qui y sont attachés ne seront pas touchés. Vous pouvez donc mettre un article à la poubelle sans que les documents qu’il partage soient enlevés des autres articles.
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 : |