Marent ? a dit:
Voir la pièce jointe 113413
Bonjours a tous , on se retrouve aujourd'hui pour le début d'une petite serie de tutoriel sur le developpement d'un addon
XenForo. Pour commencer est etre operationnel pour suivre tout les tutos n'oublier pas d'activer le
mode debug de votre XenForo (
Bonjour visiteur, merci de vous
inscrire ou de vous
connecter afin de voir les liens. Cela est gratuit et ne prend que quelques secondes !
).
Pour ce premier tutoriels vous retrouver 70% du tutoriel en anglais
Bonjour visiteur, merci de vous
inscrire ou de vous
connecter afin de voir les liens. Cela est gratuit et ne prend que quelques secondes !
.
Sommaire:
- Creation de la structure de base d'un addon
- Zoom sur addon.json
- Zoom sur Setup.php
- La hierarchie XenForo
- Generation du rendue final
Creation de la structure de base d'un addon
Pour commencer nous allons generer automatiquement la base de notre addon grace a une ligne de commande. Pour ce faire ouvrer votre terminal et rendez-vous a la racine de votre XenForo, par la suite vous allez entrer la commande suivante:
php cmd.php xf-addon-create
Une serie de question va vous etres poser a laquelles vous devrez repondre:
- Enter an ID for this add-on Ici vous allez entrer le dossier dans lequels seras votre addon suivis de son nom ForoAgency/TutoRG
- Enter a title Ici vous allez entrer le nom de votre addon qui seras afficher dans l'ACP Tuto RG
- Enter a version ID Ici nous allons renseigner le numero de version sous forme de chiffre decimal 10000
- Enter a version string Ici c'est le nom de la version qui seras afficher dans l'ACP 1.0.0
- Does this add-on supersede a XenForo 1 add-on? (y/n) Ici on nous demande si notre addon remplace un addon de la version 1 de xenforo n
- Does your add-on need a Setup file? (y/n) Ici on nous demande si on a besoin d'un fichier Setup.php y
- Does your Setup need to support running multiple steps? (y/n) Ici si vous avez mis oui au-dessus je vous conseille de mettre oui aussi ici y
Voila la structure de base de votre addon a etait creer elle ce trouve donc dans src/addons/ForoAgency/TutoRG
Zoom sur addon.json
Le fichier addon.json et le fichier qui va contenir toutes les informations sur votre addon dont la plupart ce retrouverons dans l'ACP. Nous allons maintenant rentrer en details dans ce fichier, voici de quoi est composer notre fichier uen fois generer par la commande utiliser precedement:
Voir la pièce jointe 113414
legacy_addon_id L'id de votre addon XF1
title Le titre de votre addon qui seras dans l'ACP
description Une courte description de votre addon qui seras par la suite afficher dans l'ACP
version_id La version de votre addon en decimal
version_string La version de votre addon qui seras afficher dans l'ACP
dev Le nom du développeur
dev_url L'url vers laquelle seras rediriger la personne qui click sur le
dev
faq_url L'url vers laquelle seras rediriger la personne qui click sur
FAQ
support_url L'url vers laquelle seras rediriger la personne qui click sur
Support
extra_urls Un tableau de titre avec une url perso
{"Demo":"https://realitygaming.net"}
require C'est ici que vous aller mettre si besoin la version minimum de XenForo requise pour votre addon ou meme la version PHP requise etc
icon L'icon FontAwesome qui seras afficher dans l'ACP
Zoom sur Setup.php
Le fichier Setup.php est le fichier qui seras executer lors de l'installation, mise a jour et désinstallation de l'addon. Ce fichier contient des fonction fonctionnant en "step" c'est a dire que chaque fonction auras un ordre d'execution que l'on choisit. Voici un exemple de fichier Setup.php:
Voir la pièce jointe 113415
La hierarchie XenForo
Lors de la creation de vos addons XenForo impose une sorte de Norme a appliquer sur votre addon dans la facon de ranger vos fichier php. Cette norme est assez simple a retenir une fois connue, tout ce passant a la racine de votre addon:
- Les controllers que vous creer devront etre sous cette forme Pub/Controller/ ou Admin/Controller/
- Vos entitées devront etre sous cette forme Entity/
- Vos repos devront etre sous cette forme Repository/
- Vos templates devront etre sous cette forme _output/templates/public ou _output/templates/admin
- A partir du moment ou vous etendez une class deja existante dans XenForo vous devrez faire comme au-dessus pour chaques type sauf que cette fois tout devras etre dans un dossier XF J'etends la class Forum je met donc ma class dans XF/Pub/Controller/Forum.php
Le rendue final
Et pour finir pour generer le rendue final de votre addon et pouvoir le release il vous suffit d'entrer la commande suivante a la racine de votre XenForo
php cmd.php xf-addon:build-release ForoAgency/TutoRG
. Et voila le zip ce trouveras dans le dossier
_releases !
C'est tout pour ce petit tutoriel et on ce retrouve tres vite pour le prochain tutoriel XenForo !
![Dance :dance: :dance:](/data/assets/smilies/dance.gif)
Cliquez pour agrandir...