Spip 2 dispose t-il d'une API ?

Oui, je connais ce site. Mais s’il semble montrer que Spip 2 devient plus ou moins un framework, il ne répond pas à mes questions…

Objet : Re: [Spip] Spip 2 dispose t-il d’une API ?

  • dimitri.malo tapuscrivait, le 17/04/2009 08:47:

Bonjour,

Spip dispose t-il véritablement d’une API ? C’est à dire un jeu de fonctions sur lesquelles il serait possible de s’appuyer pour étendre Spip ?

Je n’ai pas réussi à trouver une documentation précise. Aucune, en tout cas, avec la syntaxe précise des fonctions, comme s’écrit habituellement une doc d’interface (nom de la fonction, ce qu’elle renvoie, paramètres à lui passer et types attendus, etc.)

Je me sert actuellement des informations du site http://doc.spip.org

Mais les fonctions indiquées peuvent-elles être considérées comme faisant partie d’une API de développement ?

Par exemple, si j’utilise aujourd’hui session_get(), une prochaine version de Spip ne risque t-elle pas de supprimer, renommer ou changer le fonctionnement de cette fonction ? Quelle stabilité dans le temps ont ses fonctions ? Quelle pérennité pour les plugins les utilisants ?

Merci pour vos lumières.
http://programmer.spip.org/

Créez votre adresse électronique prenom.nom@laposte.net
1 Go d’espace de stockage, anti-spam et anti-virus intégrés.

Salut Dimitri,

si si, vas-y, lis la documentation sur programmer.spip.org (merci Matthieu!) ca t'aidera à comprendre les API des SPIP même si le terme n'y figure pas explicitement:

Tu peux par exemple surcharger la totalité des fonctions de SPIP. Ceci constitue une API de SPIP qui existait longtemps avant l'introduction des plugins.
http://programmer.spip.org/spip.php?page=recherche&recherche=surcharger&lang=fr

Si tu connais doc.spip org tu as peut-être découvert l'article sur les points d'entrée:
http://doc.spip.org/@Les-points-d-entree-pipelines
Il explique l'essentiel sur l'API officielle de SPIP.

Dans l'article sur les formulaires CVT il est également question d'une interface de programmation pour la création d'interfaces pour les utilisateurs.

Apart ca tu peux considérer jQuery comme une sorte d'API pour SPIP, pas au sens propre du terme mais tu peux réaliser pas mal de trucs avec qui se font normalement avec une API. Tu peux te référer aux articles qui traitent l'utilisation d'AJAX par SPIP et à la doc de jQuery.

Puisque tout ca est en évolution contante tu profiteras également des échanges dans spip-zon@rezo.net (pour tout ce qui est exérieur au noyau de SPIP) et spip-dev@rezo.net.

Il y a encore d'autres approches mais tu devrais nous raconter un peu ce que tu as envie de réaliser pour qu'on puisse t'orienter vers la bonne solution.

Les API qui existent aujourd'hui constituent une base stable, puisqu'avec le changement de Version 1->2 la quasi totalité des anciennes fonctions qui posaient problème a été abandonnée.

Enfin, si tu ne t'y retrouves pas dans la galaxie SPIP tu peux demander à ton pote Google s'il en sait quelque chose sur les mots clé que je viens de mentionner.

Bonne programmation,
klaus+

dimitri.malo@laposte.net schrieb:

Oui, je connais ce site. Mais s'il semble montrer que Spip 2 devient plus ou moins un framework, il ne répond pas à mes questions...

Objet : Re: [Spip] Spip 2 dispose t-il d'une API ?

* dimitri.malo tapuscrivait, le 17/04/2009 08:47:

Bonjour,

Spip dispose t-il véritablement d'une API ? C'est à dire un jeu de fonctions sur lesquelles il serait possible de s'appuyer pour étendre Spip ?

Je n'ai pas réussi à trouver une documentation précise. Aucune, en tout cas, avec la syntaxe précise des fonctions, comme s'écrit habituellement une doc d'interface (nom de la fonction, ce qu'elle renvoie, paramètres à lui passer et types attendus, etc.)

Je me sert actuellement des informations du site http://doc.spip.org

Mais les fonctions indiquées peuvent-elles être considérées comme faisant partie d'une API de développement ?

Par exemple, si j'utilise aujourd'hui session_get(), une prochaine version de Spip ne risque t-elle pas de supprimer, renommer ou changer le fonctionnement de cette fonction ? Quelle stabilité dans le temps ont ses fonctions ? Quelle pérennité pour les plugins les utilisants ?

Merci pour vos lumières.

http://programmer.spip.org/

Créez votre adresse électronique prenom.nom@laposte.net 1 Go d'espace de stockage, anti-spam et anti-virus intégrés.

------------------------------------------------------------------------

_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip

Documentation de SPIP : http://www.spip.net/

irc://irc.freenode.net/spip ou http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip

klaus++ a écrit :

Salut Dimitri,

si si, vas-y

Non non, Dimitri a raison, il n'y a pas d'API officielle, de présentation de fonctions avec leurs parametres.

Il manque cela à SPIP (participants bienvenus!) entre autre, qui a maintenant de plus en plus de fonctions bien carrées, des API, mais dispersées et non définies officiellement. La plupart se trouvent dans les fichiers du répertoire inc/ ou base/

Pendant un temps cerdic se disait que l'on pourrait faire un fichier spécial /inc/api.php listant et redirigeant les diverses fonctions d'API. C'est resté en pour-parler.

Enfin, il y a toujours l'idée dans l'air de produire un phpDoc de la documentation (mais il faut réécrire les commentaires des fonctions de SPIP pour cela, ce qui n'est pas fait). Et comme SPIP utilise beaucoup de fonctions déclarées en variable ($fonc = charger_fonction('ma_fonction','inc'); $fonc(); ) une partie des liens du phpDoc entre les fonctions ne sera pas possible.

Concernant la documentation que j'ai écrit (site programmer), il en reste au moins la moitié à écrire (plutot concernant le PHP) puisque l'essentiel de l'écriture de squelette est expliquée. C'est encore un long chantier. (participants bienvenus :p). Il faut que ça reste une écriture légère de petits articles pour espérer un jour en produire un document papier sous une licence CC ou autre libre.

--
MM.

Bon, alors j'ai fait le c.. - pleins d'interfaces, pas d'API.
Merci Matthieu.
klaus++

klaus++ a écrit :

Bon, alors j'ai fait le c.. - pleins d'interfaces, pas d'API.

SI, plein d'API, mais pas toutes documentées et pas d'officialisées :wink:

--
MM.