créer un plugin

Bonjour,
je souhaite faire mes premiers pas dans le développement d'un plugin, j'ai vu des bouts de doc sur différents sites, j'ai passé l'étape du fichier plugin.xml, un bouton dans l'interface privée, l'autoriser son affichage pour les admins, puis plus rien,
comment structurer et appeler une page ?
y a certainement des choses à déclarer à quelque par ?
comme les chemins des sous répertoires du plugin par exemple
car quand je clique sur mon bouton j'ai le message
*Fichier test introuvable*
alors que j'ai placé cette page test.php dans le sous répertoire exec de mon plugin.
donc je cherche une doc de référence pour continuer mon apprentissage.
google m'a renvoyé ces pages concernant le développement :
http://programmer.spip.org/-Developper-des-plugins-
http://www.spip.net/fr_article3448.html
http://doc.spip.org/@Les-points-d-entree-pipelines
http://www.spip-contrib.net/PointsEntreeIncTexte
et j'ai pas tout compris c'est pas toujours abordable avec mes connaissances.

ou bien y a t-il une liste dédiée à ce sujet ?

Cordialement
--
Signalez vos spams d'un simple clic. www.signal-spam.fr
<https://www.signal-spam.fr/>

bobof a écrit :

Bonjour,
je souhaite faire mes premiers pas dans le développement d'un plugin, j'ai vu des bouts de doc sur différents sites, j'ai passé l'étape du fichier plugin.xml, un bouton dans l'interface privée, l'autoriser son affichage pour les admins, puis plus rien,
comment structurer et appeler une page ?
y a certainement des choses à déclarer à quelque par ?
comme les chemins des sous répertoires du plugin par exemple
car quand je clique sur mon bouton j'ai le message
*Fichier test introuvable*
alors que j'ai placé cette page test.php dans le sous répertoire exec de mon plugin.
donc je cherche une doc de référence pour continuer mon apprentissage.
google m'a renvoyé ces pages concernant le développement :
http://programmer.spip.org/-Developper-des-plugins-
http://www.spip.net/fr_article3448.html
http://doc.spip.org/@Les-points-d-entree-pipelines
PointsEntreeIncTexte
et j'ai pas tout compris c'est pas toujours abordable avec mes connaissances.

ou bien y a t-il une liste dédiée à ce sujet ?

Cordialement

oui oui oui, j'ai les mêmes problèmes : et de *fichier truc introuvable* et de manque de doc !
De l'aide serait bienvenue... merci d'avance !

Bonsoir jonathan,
concernant le soucis de *Fichier test introuvable* spip n'a rien trouvé moi oui ici :

paragraphe :

        La mise en place d’un bouton

La création de boutons ou d’onglets implique la création d’un répertoire /exec dans le répertoire du plugin, d’un fichier .php contenant une fonction exec_prefix retenu pour le plugin dans notre cas function exec_admin_themes().

donc dans mon cas j'ai placé au début du fichier /plugin/mon_plugin_test/exec/test.php
exec_test()
et c'est ok spip trouve ce qu'il cherche, en fait il cherche la page test.php qui contient la fonction exec_test()
après je sais pas ou l'aventure va m'emmener lol
cordialement

Jonathan Chibois a écrit :

bobof a écrit :

Bonjour,
je souhaite faire mes premiers pas dans le développement d'un plugin, j'ai vu des bouts de doc sur différents sites, j'ai passé l'étape du fichier plugin.xml, un bouton dans l'interface privée, l'autoriser son affichage pour les admins, puis plus rien,
comment structurer et appeler une page ?
y a certainement des choses à déclarer à quelque par ?
comme les chemins des sous répertoires du plugin par exemple
car quand je clique sur mon bouton j'ai le message
*Fichier test introuvable*
alors que j'ai placé cette page test.php dans le sous répertoire exec de mon plugin.
donc je cherche une doc de référence pour continuer mon apprentissage.
google m'a renvoyé ces pages concernant le développement :
http://programmer.spip.org/-Developper-des-plugins-
http://www.spip.net/fr_article3448.html
http://doc.spip.org/@Les-points-d-entree-pipelines
PointsEntreeIncTexte
et j'ai pas tout compris c'est pas toujours abordable avec mes connaissances.

ou bien y a t-il une liste dédiée à ce sujet ?

Cordialement

oui oui oui, j'ai les mêmes problèmes : et de *fichier truc introuvable* et de manque de doc !
De l'aide serait bienvenue... merci d'avance !
_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

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

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

Irc : de l'aide à toute heure : http://spip.net/irc

--

Signalez vos spams d'un simple clic. www.signal-spam.fr <https://www.signal-spam.fr/&gt;

En gros: le dossier exec pour l'affichage dans la partie privé : les fichiers php contiennent la fonction du même nom par exemple ma_page dans ma_page.php sera vu dans l'espace privé avec /?exec=ma_page
dossier fonds pour cfg
monplugins_pipelines.php... sans commentaire, ça parle de lui même
dossier img_pack pour les images
modeles pour les modèles
base pour déclarer les nouvelles tables
balises et formulaires qui sont étroitement liés
En fait c'est comme le dossier squelettes

Le mieux pour commencer c'est de prendre un plugin tout simple et faire comme avec un réveil. Le démonter et tripoter dedans pour voir comment ça marche
Il y a quelques infos ici aussi : http://www.plugandspip.com ( balises et présentation des pages privées sous spip2)
BB

bobof a écrit :

Bonjour,
je souhaite faire mes premiers pas dans le développement d'un plugin, j'ai vu des bouts de doc sur différents sites, j'ai passé l'étape du fichier plugin.xml, un bouton dans l'interface privée, l'autoriser son affichage pour les admins, puis plus rien,
comment structurer et appeler une page ?
y a certainement des choses à déclarer à quelque par ?
comme les chemins des sous répertoires du plugin par exemple
car quand je clique sur mon bouton j'ai le message
*Fichier test introuvable*
alors que j'ai placé cette page test.php dans le sous répertoire exec de mon plugin.
donc je cherche une doc de référence pour continuer mon apprentissage.
google m'a renvoyé ces pages concernant le développement :
http://programmer.spip.org/-Developper-des-plugins-
http://www.spip.net/fr_article3448.html
http://doc.spip.org/@Les-points-d-entree-pipelines
PointsEntreeIncTexte
et j'ai pas tout compris c'est pas toujours abordable avec mes connaissances.

ou bien y a t-il une liste dédiée à ce sujet ?

Cordialement

Pour créer un bouton facilement dans plugin.xml
<bouton id='xxxx' parent='naviguer'>
      <icone>img_pack/mon image.gif</icone>
      <titre>Mon titre</titre>
  </bouton>
xxxx est ne nom du fichier /exec/xxxx.php
naviguer va placer le bouton dans le sous menu EDITION
Mon titre sera le titre du bouton

BB
bobof a écrit :

Bonsoir jonathan,
concernant le soucis de *Fichier test introuvable* spip n'a rien trouvé moi oui ici :
Création d'un plugin - SPIP-Contrib
paragraphe :

       La mise en place d’un bouton

La création de boutons ou d’onglets implique la création d’un répertoire /exec dans le répertoire du plugin, d’un fichier .php contenant une fonction exec_prefix retenu pour le plugin dans notre cas function exec_admin_themes().

donc dans mon cas j'ai placé au début du fichier /plugin/mon_plugin_test/exec/test.php
exec_test()
et c'est ok spip trouve ce qu'il cherche, en fait il cherche la page test.php qui contient la fonction exec_test()
après je sais pas ou l'aventure va m'emmener lol
cordialement

Jonathan Chibois a écrit :

bobof a écrit :

Bonjour,
je souhaite faire mes premiers pas dans le développement d'un plugin, j'ai vu des bouts de doc sur différents sites, j'ai passé l'étape du fichier plugin.xml, un bouton dans l'interface privée, l'autoriser son affichage pour les admins, puis plus rien,
comment structurer et appeler une page ?
y a certainement des choses à déclarer à quelque par ?
comme les chemins des sous répertoires du plugin par exemple
car quand je clique sur mon bouton j'ai le message
*Fichier test introuvable*
alors que j'ai placé cette page test.php dans le sous répertoire exec de mon plugin.
donc je cherche une doc de référence pour continuer mon apprentissage.
google m'a renvoyé ces pages concernant le développement :
http://programmer.spip.org/-Developper-des-plugins-
http://www.spip.net/fr_article3448.html
http://doc.spip.org/@Les-points-d-entree-pipelines
PointsEntreeIncTexte
et j'ai pas tout compris c'est pas toujours abordable avec mes connaissances.

ou bien y a t-il une liste dédiée à ce sujet ?

Cordialement

oui oui oui, j'ai les mêmes problèmes : et de *fichier truc introuvable* et de manque de doc !
De l'aide serait bienvenue... merci d'avance !
_______________________________________________
liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

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

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

Irc : de l'aide à toute heure : http://spip.net/irc

Bonjour,

J'ai moi aussi fourragé quelque peu pour créer un premier plugin. Je pense que nous avons tous procédé de la même manière: bouquiner des sites dans un premier temps pour se faire une idée générale de l'organisation des fichiers. Puis dans un second temps, désosser quelques plugins pas trop complexes pour en analyser le fonctionnement.

Ceci dit, arrêtez moi si je me trompe, mais j'ai l'impression que suite à l'apparition de la branche 2.X de spip, pas mal de choses ont changé dans la manière de concevoir les plugins. Je pense en particulier à toute la couche d'abstraction pour crééer/accéder/modifier la base de données, et aux squelettes en partie interne.

Si j'ai bien intégré ce que j'ai pu lire de ci de la, la structure d'un plugin est similaire à celle des répertoires internes de spip ( prive, ecrire ... ).
On peut donc prendre les fichiers qui s'y baladent comme références. Voici ce que j'ai pou constater en regardant comment les brèves fonctionnent :
Dans : /prive/formulaires/ , il y a :
prive/formulaires/editer_breve.html
prive/formulaires/editer_breve.php
Ceci dit, ce n'est qu'un formulaire à la sauce spip, il manque donc un élément pour l'appeler. On trouvera une première référence ici :
ecrire/exec/breves_edit.php
Dans celle ci, on trouve (entre autres ) ceci :

        $contexte = array(
        'icone_retour'=>$new=='oui'?'':icone_inline(_T('icone_retour'), generer_url_ecrire("breves_voir","id_breve=$id_breve"), "breve-24.gif", "rien.gif",$GLOBALS['spip_lang_left']),
        'redirect'=>generer_url_ecrire("breves_voir"),
        'titre'=>$titre,
        'new'=>$new == "oui"?$new:$id_breve,
        'id_rubrique'=>$id_rubrique,
        'config_fonc'=>'breves_edit_config'
        );

        echo recuperer_fond("prive/editer/breve", $contexte);

On poursuit donc dans : prive/editer/breve et la nous y voila:

<div class='cadre-formulaire-editer'>
<div class="entete-formulaire">
        #ENV**{icone_retour}
        [<:info_modifier_breve:>
        <h1>(#ENV{titre})</h1>]
</div>
#FORMULAIRE_EDITER_BREVE{#ENV{new},#ENV{id_rubrique},#ENV{redirect},#ENV{lier_trad},#ENV{config_fonc}}
</div>

Toujours sous réserve, il y aurait donc trois éléments distincts pour constituer une page d'admin manipulant un objet spip :
- une première partie qui est dans exec qui constitue la peau de la vache: elle construit l'ossature de la page d'administration, vérifie les droits etc.
- un squelette permettant d'appeler le formulaire situé dans editer.
- et enfin le formulaire à proprement parler est de la forme classique de spip et se situe dans un répertoire formulaires.
Cela vous semble t'il cohérent ou me suis-je planté quelque part ?

Cordialement,

Vincent