[spip-dev] Etendre SPIP ou comment faire des "plug'in"

Bonjour

Est ce qu'il existe déjà des informations sur "comment bien faire pour ajouter une fonction à SPIP" ?

En fait j'ai deux petits developpements que je souhaite faire, mais qui n'ont pas forcément à être ajouté dans SPIP

1° le suivi du moteur interne de SPIP pour connaitre les mots clefs utilisés sur le site.

2° une fonction qui permettra d'ajouter un mot clef à un objet sans être auteur.

La deuxieme n'est pas compliqué, puisqu'un peu de php dans une page devrait régler le probleme. Par contre pour l'autre, je me pose quelques questions :
- J'aimerai utiliser la même base de données que SPIP. Est ce qu'il y a une convention de nomage pour les tables hors standard SPIP (histoire qu'il n'y ai jamais collision)
- Comment faire pour ajouter un nouveau "TAG SPIP" ? Et qu'il soit pris en compte dans la "moulinette" ?
- Comment intégrer une page d'administration ? pour simplement obtenir des résultats ?
- Comment profiter de l'ouverture de la base de données par SPIP ? (histoire de pas dupliquer les paramétrages)

a+
Olivier

Est ce qu'il existe déjà des informations sur "comment bien faire pour
ajouter une fonction à SPIP" ?

Non, car ça n'est pas vraiment recommandé en général. Ce n'est pas la
philosophie du projet.

- J'aimerai utiliser la même base de données que SPIP. Est ce qu'il y a
une convention de nomage pour les tables hors standard SPIP (histoire
qu'il n'y ai jamais collision)

Toutes les tables utilisées par SPIP commencent par spip_

- Comment faire pour ajouter un nouveau "TAG SPIP" ? Et qu'il soit pris
en compte dans la "moulinette" ?

Compliqué, et pas recommandé : il faut regarder inc-calcul-squel.php3

- Comment intégrer une page d'administration ? pour simplement obtenir
des résultats ?

Tu peux dupliquer une page existante, c'est en général assez lisible. Pour
ajouter un lien vers ta nouvelle page, c'est dans inc_presentation (pas
recommandé non plus)

- Comment profiter de l'ouverture de la base de données par SPIP ?
(histoire de pas dupliquer les paramétrages)

Utilise la fonction spip_query("SELECT....") : elle se charge d'ouvrir la
connexion à la base si besoin, etc. Il y a d'autres fonctions associées
(spip_fetch_array, etc.), que tu trouveras dans inc_db_mysql.php3.

-- Fil