XenForo 2: Structure d'un addon #1

Mathieu 🏝

IT Officer @STATION F
Contributeur
Inscription
19 Novembre 2016
Messages
1 215
Réactions
1 337
Points
4 810
    Réponse de Mathieu 🏝 Informatique ⌨️ Tutoriels : XenForo 2: Structure d'un addon #1
  • #1
You must be registered for see images attach


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 ( ).

Pour ce premier tutoriels vous retrouver 70% du tutoriel en anglais .​

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:

You must be registered for see images attach

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.fr"}
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:

You must be registered for see images attach

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:
 
Dernière édition:

Hayzen.

Contributeur
Inscription
10 Août 2012
Messages
8 654
Réactions
4 075
Points
16 902
    Réponse de Hayzen. Informatique ⌨️ Tutoriels : XenForo 2: Structure d'un addon #1
  • #2
Good job marent ^^
 

Rayan67

Premium
Contributeur
Inscription
16 Février 2013
Messages
737
Réactions
407
Points
7 816
    Réponse de Rayan67 Informatique ⌨️ Tutoriels : XenForo 2: Structure d'un addon #1
  • #3
Après 20 add-ons on à droit a 20 tutoriels :trollface: good Marent :D
 

Kong'

Retraité
Ancien staff RG
Inscription
14 Mai 2016
Messages
2 680
Réactions
1 077
Points
5 650
    Réponse de Kong' Informatique ⌨️ Tutoriels : XenForo 2: Structure d'un addon #1
  • #4
Continue comme ça ! :neo:
 

Thomas'

Ancien staff
Ancien staff RG
Inscription
3 Avril 2015
Messages
3 027
Réactions
1 573
Points
7 276
    Réponse de Thomas' Informatique ⌨️ Tutoriels : XenForo 2: Structure d'un addon #1
  • #5
You must be registered for see images attach


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 ( ).

Pour ce premier tutoriels vous retrouver 70% du tutoriel en anglais .​

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:

You must be registered for see images attach

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.fr"}
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:

You must be registered for see images attach

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:
Continue comme ça c'est du bon travail :)
 

Benjamin

Commercial
Commercial
Inscription
19 Janvier 2013
Messages
15 684
Réactions
5 353
Points
19 005
    Réponse de Benjamin Informatique ⌨️ Tutoriels : XenForo 2: Structure d'un addon #1
  • #6
Really good job !
 

Xyna

Ancien staff RG
Inscription
25 Octobre 2016
Messages
4 095
Réactions
3 115
Points
5 388
    Réponse de Xyna Informatique ⌨️ Tutoriels : XenForo 2: Structure d'un addon #1
  • #7
Nice tout ça :cool:
 

SyTry'

Contributeur
Contributeur
Inscription
22 Mai 2015
Messages
2 479
Réactions
854
Points
5 421
    Réponse de SyTry' Informatique ⌨️ Tutoriels : XenForo 2: Structure d'un addon #1
  • #8
Salut, tu compte faire la suite de cette série ? :idk:

SyTry,
 
Auteur Discussions similaires Forum Réponses Date
Ray’ Tutoriels 1

Discussions similaires


Haut Bas