Voici quelques exemples des boucles que permettent les itérateurs de SPIP :
- lire un tableau de données produit par une fonction quelconque
- afficher le contenu d’un fichier local au format XML, CSV, JSON, YAML, iCalendar, etc.
- boucler sur la liste des fichiers présents dans un répertoire du serveur
- faire une requête sur un webservice et afficher les résultats.
Concrètement, on peut sans grand effort faire des boucles « Web 1.0 » sur toutes sortes de fichiers déposés sur le serveur. On peut aussi boucler en « Web 2.0 » sur des vidéos YouTube, sur des photos Flickr, des livres (par titre ou par numéro ISBN), sur des requêtes de traduction sur google.translate, sur un tableur édité sur Google Documents, etc.
Pour ne prendre qu’un seul exemple, voici une boucle qui permet d’afficher le contenu d’un tableur Google Documents :
Boucle :
[(#REM) Identifiant de notre tableur]
#SET{key,0AolUP3c6K9JodGwxRjJzb2hyTGZLU29qRVItRXk1VXc}
<B_csv>
<table>
<BOUCLE_csv(DATA)
{source csv, https://spreadsheets.google.com/pub?key=#GET{key}&hl=en&output=csv}>
<tr>
<td>#VALEUR{0}</td>
<td>#VALEUR{1}</td>
<td>#VALEUR{2}</td>
</tr>
</BOUCLE_csv>
</table>
</B_csv>
Résultat :
Pays PIB Population Rémitanie 12 1 Baldoghistan 23 2 Républiques Unies 43 3 Diloduristan 12 4 Zarlatie 9 5
Ce plugin a été intégré dans SPIP 3 : https://www.spip.net/fr_article5444.html
Les liens de la documentation originale/officieuse (et en version bêta) :
- Les itérateurs de SPIP
- Exemples de
BOUCLE(DATA)
- Exemples de boucles YQL
- Quelques plugins exploitant les itérateurs
Si vous utilisez ce plugin, n’hésitez pas à partager dans le forum ci-dessous vos formats, et toutes vos astuces pour boucler sur différents services et fichiers.
Discussions par date d’activité
24 discussions
Petit exemple pour afficher une image au hasard dans un répertoire :
Oui c’est un usage typique. Note qu’on vient de modifier un peu la syntaxe et qu’il vaut mieux désormais utiliser :
J’ajoute aussi que si on veut manipuler des attributs des fichiers (date de création, de modification, taille, extension etc.) on peut utiliser le format
ls
à la place deglob
.En fait je n’avais pas vu le dossier de démo... Y’a plein d’exemples dedans, c’est parfait. Encore bravo pour cette écriture qui simplifie la vie... Sans compter le nouveau critère si qui évite l’utilisation de la boucle CONDITION... Bref, merci
Répondre à ce message
Petit détail : le lien vers spip-contrib dans le fichier plugin.xml est invalide.
http://www.spip-contrib.net/3667
Merci c’est réparé (le fichier
.htaccess
de SPIP-Contrib n’était pas à jour).Répondre à ce message
Bonjour, Fil, bonjour, Matthieu,
Je prendrai le temps de tester cet ensemble de fonctionnalités dès qu’un moment se libèrera. Je lis qu’avec booksearch, on peut pointer sur le webservice d’Amazone, ce qui m’intéresse au plus haut point ! Cette connexion serait-elle possible (en théorie, ou avec un peu d’huile de coude) avec une application comme zotéro ?
J’ai parcouru très rapidement les différentes publications, mais il me faudra du temps pour que j’entre dans la logique de tout cela. Vous signalez, en début d’article :
Faites-vous référence à d’autres pages ?
Quoi qu’il en soit, félicitations pour ce bond en avant ! Comme cela, en fin d’année, c’est comme mettre un pied sur mars en 2011 !!!
Bonne continuation !
KMk
Zotero est sans aucun doute interrogeable, mais il faudrait trouver exactement comment (sa doc http://www.zotero.org/support/dev/s... n’est pas super claire, ne donnant aucun exemple concret).
Visiblement leur API renvoie des résultats au format ATOM, du coup on peut déjà par exemple lister les éléments d’un utilisateur via :
mais ce n’est pas très différent d’un flux de syndication... on peut sûrement faire beaucoup plus intéressant.
Re- bonjour,
Dès que se dessine « l’ombre d’une éclaircie », je m’y mets... l’envie est trop grande !
Merci pour cette réponse.
Bonne fin d’année,
KMk.
Répondre à ce message
Je voulais juste dire un grand merci pour ce superbe plugins qui laisse augurer de grandes choses pour la prochaine version de Spip...
Répondre à ce message
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 : |