Connexion
S'inscrire
Actualités
Quoi de neuf
Activités générales
Auteurs
Forums
Nouveaux messages
Rechercher un forum
Quoi de neuf
Nouveaux messages
Nouveaux messages de profil
Activités générales
Membres
Membres inscrits
Visiteurs actuels
Nouveaux messages de profil
Rechercher dans les messages des profils
Teams
Créé ton équipe
Quoi de neuf ?
Nouveaux messages
Rechercher un forum
Menu
Connexion
S'inscrire
Install the app
Install
Forums
Forums généraux
Informatique
Développement
XenForo 2: Structure d'un addon #1
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
Vous utilisez un navigateur non à jour ou ancien. Il ne peut pas afficher ce site ou d'autres sites correctement.
Vous devez le mettre à jour ou utiliser un
navigateur alternatif
.
Répondre à la discussion
Message
<blockquote data-quote="Mathieu ?" data-source="post: 7287710" data-attributes="member: 712193"><p style="text-align: center">[ATTACH=full]113413[/ATTACH]</p> <p style="text-align: center"></p> <p style="text-align: center">Bonjours a tous <span style="color: rgb(41,105,176)">[fa]fa-code[/fa]</span>, on se retrouve aujourd'hui pour le début d'une petite serie de tutoriel sur le developpement d'un addon <span style="color: rgb(41,105,176)">XenForo</span>. Pour commencer est etre operationnel pour suivre tout les tutos n'oublier pas d'activer le<span style="color: rgb(226,80,65)"> mode debug</span> de votre XenForo (<a href="https://xenforo.com/xf2-docs/dev/development-tools/#debug-mode" target="_blank">debug</a>).</p> <p style="text-align: center"></p> <p style="text-align: center">Pour ce premier tutoriels vous retrouver 70% du tutoriel en anglais <a href="https://xenforo.com/xf2-docs/dev/add-on-structure/" target="_blank">ici</a>.</p><p></p><p>[fa]fa-list[/fa] Sommaire:</p><ul> <li data-xf-list-type="ul">Creation de la structure de base d'un addon</li> <li data-xf-list-type="ul">Zoom sur <strong>addon.json</strong></li> <li data-xf-list-type="ul">Zoom sur <strong>Setup.php</strong></li> <li data-xf-list-type="ul">La hierarchie XenForo</li> <li data-xf-list-type="ul">Generation du rendue final</li> </ul><p></p><p><strong>[fa]fa-border fa-gg[/fa] Creation de la structure de base d'un addon</strong></p><p></p><p>Pour commencer nous allons generer automatiquement la base de notre addon grace a une ligne de commande. Pour ce faire ouvrer votre terminal [fa]fa-code[/fa] et rendez-vous a la racine de votre XenForo, par la suite vous allez entrer la commande suivante:</p><p></p><p><code>php cmd.php xf-addon-create</code></p><p></p><p>Une serie de question va vous etres poser a laquelles vous devrez repondre:</p><ul> <li data-xf-list-type="ul"><span style="color: rgb(65,168,95)">Enter an ID for this add-on</span> [fa]fa-arrow-right[/fa] Ici vous allez entrer le dossier dans lequels seras votre addon suivis de son nom [fa]fa-arrow-right[/fa]<strong>ForoAgency/TutoRG</strong></li> <li data-xf-list-type="ul"><span style="color: rgb(65,168,95)">Enter a title</span> [fa]fa-arrow-right[/fa] Ici vous allez entrer le nom de votre addon qui seras afficher dans l'ACP [fa]fa-arrow-right[/fa] <strong>Tuto RG</strong></li> <li data-xf-list-type="ul"><span style="color: rgb(65,168,95)">Enter a version ID</span> [fa]fa-arrow-right[/fa] Ici nous allons renseigner le numero de version sous forme de chiffre decimal [fa]fa-arrow-right[/fa]<strong>10000</strong></li> <li data-xf-list-type="ul"><span style="color: rgb(65,168,95)">Enter a version string</span> [fa]fa-arrow-right[/fa] Ici c'est le nom de la version qui seras afficher dans l'ACP [fa]fa-arrow-right[/fa] 1.0.0</li> <li data-xf-list-type="ul"><span style="color: rgb(65,168,95)">Does this add-on supersede a XenForo 1 add-on? (y/n)</span> [fa]fa-arrow-right[/fa] Ici on nous demande si notre addon remplace un addon de la version 1 de xenforo [fa]fa-arrow-right[/fa] <strong>n</strong></li> <li data-xf-list-type="ul"><span style="color: rgb(65,168,95)">Does your add-on need a Setup file? (y/n)</span> [fa]fa-arrow-right[/fa] Ici on nous demande si on a besoin d'un fichier Setup.php [fa]fa-arrow-right[/fa] <strong>y</strong></li> <li data-xf-list-type="ul"><span style="color: rgb(65,168,95)">Does your Setup need to support running multiple steps? (y/n)</span> [fa]fa-arrow-right[/fa] Ici si vous avez mis oui au-dessus je vous conseille de mettre oui aussi ici [fa]fa-arrow-right[/fa] <strong>y</strong></li> </ul> <p style="text-align: center"><span style="color: rgb(41,105,176)">[fa]fa-bomb[/fa]</span> Voila la structure de base de votre addon a etait creer elle ce trouve donc dans <strong>src/addons/ForoAgency/TutoRG </strong></p><p></p><p><strong>[fa]fa-border fa-gg[/fa] Zoom sur addon.json</strong></p><p></p><p>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:</p><p></p><p style="text-align: center">[ATTACH=full]113414[/ATTACH]</p><p></p><p><span style="color: rgb(65,168,95)">legacy_addon_id</span> [fa]fa-arrow-right[/fa] L'id de votre addon XF1</p><p><span style="color: rgb(65,168,95)">title</span> [fa]fa-arrow-right[/fa] Le titre de votre addon qui seras dans l'ACP</p><p><span style="color: rgb(65,168,95)">description</span> [fa]fa-arrow-right[/fa] Une courte description de votre addon qui seras par la suite afficher dans l'ACP</p><p><span style="color: rgb(65,168,95)">version_id</span> [fa]fa-arrow-right[/fa] La version de votre addon en decimal</p><p><span style="color: rgb(65,168,95)">version_string</span> [fa]fa-arrow-right[/fa] La version de votre addon qui seras afficher dans l'ACP</p><p><span style="color: rgb(65,168,95)">dev</span> [fa]fa-arrow-right[/fa] Le nom du développeur</p><p><span style="color: rgb(65,168,95)">dev_url</span> [fa]fa-arrow-right[/fa] L'url vers laquelle seras rediriger la personne qui click sur le <strong>dev</strong></p><p><span style="color: rgb(65,168,95)">faq_url</span> [fa]fa-arrow-right[/fa] L'url vers laquelle seras rediriger la personne qui click sur <strong>FAQ</strong></p><p><span style="color: rgb(65,168,95)">support_url</span> [fa]fa-arrow-right[/fa] L'url vers laquelle seras rediriger la personne qui click sur <strong>Support</strong></p><p><span style="color: rgb(65,168,95)">extra_urls</span> [fa]fa-arrow-right[/fa] Un tableau de titre avec une url perso [fa]fa-arrow-right[/fa] <code>{"Demo":"https://reality-gaming.fr"}</code></p><p><span style="color: rgb(65,168,95)">require</span> [fa]fa-arrow-right[/fa] 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</p><p><span style="color: rgb(65,168,95)">icon</span> [fa]fa-arrow-right[/fa] L'icon FontAwesome qui seras afficher dans l'ACP</p><p></p><p><strong>[fa]fa-border fa-gg[/fa] Zoom sur Setup.php</strong></p><p></p><p>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:</p><p></p><p style="text-align: center">[ATTACH=full]113415[/ATTACH]</p><p></p><p><strong>[fa]fa-border fa-gg[/fa] La hierarchie XenForo</strong></p><p></p><p>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:</p><ul> <li data-xf-list-type="ul"><span style="color: rgb(41,105,176)">Les controllers</span> que vous creer devront etre sous cette forme [fa]fa-arrow-right[/fa] Pub/Controller/ ou Admin/Controller/</li> <li data-xf-list-type="ul"><span style="color: rgb(41,105,176)">Vos entitées</span> devront etre sous cette forme [fa]fa-arrow-right[/fa] Entity/</li> <li data-xf-list-type="ul"><span style="color: rgb(41,105,176)">Vos repos</span> devront etre sous cette forme [fa]fa-arrow-right[/fa] Repository/</li> <li data-xf-list-type="ul"><span style="color: rgb(41,105,176)">Vos templates</span> devront etre sous cette forme [fa]fa-arrow-right[/fa] _output/templates/public ou _output/templates/admin</li> <li data-xf-list-type="ul">A partir du moment ou vous<span style="color: rgb(41,105,176)"> etendez une class</span> deja existante dans XenForo vous devrez faire comme au-dessus pour chaques type sauf que cette fois tout devras etre dans <span style="color: rgb(41,105,176)">un dossier XF</span> [fa]fa-arrow-right[/fa] J'etends la class Forum je met donc ma class dans XF/Pub/Controller/Forum.php</li> </ul><p></p><p><strong>[fa]fa-border fa-gg[/fa] Le rendue final</strong></p><p></p><p style="text-align: center">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 <code>php cmd.php xf-addon:build-release ForoAgency/TutoRG</code>. Et voila le zip ce trouveras dans le dossier <strong>_releases</strong> !</p><p></p><p style="text-align: center">C'est tout pour ce petit tutoriel et on ce retrouve tres vite pour le prochain tutoriel XenForo ! <img src="/images/smiley-pack/dance.gif" class="smilie" loading="lazy" alt=":dance:" title="Dance :dance:" data-shortname=":dance:" /></p> <p style="text-align: center"></p></blockquote><p></p>
[QUOTE="Mathieu ?, post: 7287710, member: 712193"] [CENTER][ATTACH=full]113413[/ATTACH] Bonjours a tous [COLOR='rgb(41,105,176)'][fa]fa-code[/fa][/COLOR], on se retrouve aujourd'hui pour le début d'une petite serie de tutoriel sur le developpement d'un addon [COLOR='rgb(41,105,176)']XenForo[/COLOR]. Pour commencer est etre operationnel pour suivre tout les tutos n'oublier pas d'activer le[COLOR='rgb(226,80,65)'] mode debug[/COLOR] de votre XenForo ([URL='https://xenforo.com/xf2-docs/dev/development-tools/#debug-mode']debug[/URL]). Pour ce premier tutoriels vous retrouver 70% du tutoriel en anglais [URL='https://xenforo.com/xf2-docs/dev/add-on-structure/']ici[/URL].[/CENTER] [fa]fa-list[/fa] Sommaire: [LIST] [*]Creation de la structure de base d'un addon [*]Zoom sur [B]addon.json[/B] [*]Zoom sur [B]Setup.php[/B] [*]La hierarchie XenForo [*]Generation du rendue final [/LIST] [B][fa]fa-border fa-gg[/fa] Creation de la structure de base d'un addon[/B] Pour commencer nous allons generer automatiquement la base de notre addon grace a une ligne de commande. Pour ce faire ouvrer votre terminal [fa]fa-code[/fa] et rendez-vous a la racine de votre XenForo, par la suite vous allez entrer la commande suivante: [ICODE]php cmd.php xf-addon-create[/ICODE] Une serie de question va vous etres poser a laquelles vous devrez repondre: [LIST] [*][COLOR='rgb(65,168,95)']Enter an ID for this add-on[/COLOR] [fa]fa-arrow-right[/fa] Ici vous allez entrer le dossier dans lequels seras votre addon suivis de son nom [fa]fa-arrow-right[/fa][B]ForoAgency/TutoRG[/B] [*][COLOR='rgb(65,168,95)']Enter a title[/COLOR] [fa]fa-arrow-right[/fa] Ici vous allez entrer le nom de votre addon qui seras afficher dans l'ACP [fa]fa-arrow-right[/fa] [B]Tuto RG[/B] [*][COLOR='rgb(65,168,95)']Enter a version ID[/COLOR] [fa]fa-arrow-right[/fa] Ici nous allons renseigner le numero de version sous forme de chiffre decimal [fa]fa-arrow-right[/fa][B]10000[/B] [*][COLOR='rgb(65,168,95)']Enter a version string[/COLOR] [fa]fa-arrow-right[/fa] Ici c'est le nom de la version qui seras afficher dans l'ACP [fa]fa-arrow-right[/fa] 1.0.0 [*][COLOR='rgb(65,168,95)']Does this add-on supersede a XenForo 1 add-on? (y/n)[/COLOR] [fa]fa-arrow-right[/fa] Ici on nous demande si notre addon remplace un addon de la version 1 de xenforo [fa]fa-arrow-right[/fa] [B]n[/B] [*][COLOR='rgb(65,168,95)']Does your add-on need a Setup file? (y/n)[/COLOR] [fa]fa-arrow-right[/fa] Ici on nous demande si on a besoin d'un fichier Setup.php [fa]fa-arrow-right[/fa] [B]y[/B] [*][COLOR='rgb(65,168,95)']Does your Setup need to support running multiple steps? (y/n)[/COLOR] [fa]fa-arrow-right[/fa] Ici si vous avez mis oui au-dessus je vous conseille de mettre oui aussi ici [fa]fa-arrow-right[/fa] [B]y[/B] [/LIST] [CENTER][COLOR='rgb(41,105,176)'][fa]fa-bomb[/fa][/COLOR] Voila la structure de base de votre addon a etait creer elle ce trouve donc dans [B]src/addons/ForoAgency/TutoRG [/B][/CENTER] [B][fa]fa-border fa-gg[/fa] Zoom sur addon.json[/B] 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: [CENTER][ATTACH=full]113414[/ATTACH][/CENTER] [COLOR='rgb(65,168,95)']legacy_addon_id[/COLOR] [fa]fa-arrow-right[/fa] L'id de votre addon XF1 [COLOR='rgb(65,168,95)']title[/COLOR] [fa]fa-arrow-right[/fa] Le titre de votre addon qui seras dans l'ACP [COLOR='rgb(65,168,95)']description[/COLOR] [fa]fa-arrow-right[/fa] Une courte description de votre addon qui seras par la suite afficher dans l'ACP [COLOR='rgb(65,168,95)']version_id[/COLOR] [fa]fa-arrow-right[/fa] La version de votre addon en decimal [COLOR='rgb(65,168,95)']version_string[/COLOR] [fa]fa-arrow-right[/fa] La version de votre addon qui seras afficher dans l'ACP [COLOR='rgb(65,168,95)']dev[/COLOR] [fa]fa-arrow-right[/fa] Le nom du développeur [COLOR='rgb(65,168,95)']dev_url[/COLOR] [fa]fa-arrow-right[/fa] L'url vers laquelle seras rediriger la personne qui click sur le [B]dev[/B] [COLOR='rgb(65,168,95)']faq_url[/COLOR] [fa]fa-arrow-right[/fa] L'url vers laquelle seras rediriger la personne qui click sur [B]FAQ[/B] [COLOR='rgb(65,168,95)']support_url[/COLOR] [fa]fa-arrow-right[/fa] L'url vers laquelle seras rediriger la personne qui click sur [B]Support[/B] [COLOR='rgb(65,168,95)']extra_urls[/COLOR] [fa]fa-arrow-right[/fa] Un tableau de titre avec une url perso [fa]fa-arrow-right[/fa] [ICODE]{"Demo":"https://reality-gaming.fr"}[/ICODE] [COLOR='rgb(65,168,95)']require[/COLOR] [fa]fa-arrow-right[/fa] 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 [COLOR='rgb(65,168,95)']icon[/COLOR] [fa]fa-arrow-right[/fa] L'icon FontAwesome qui seras afficher dans l'ACP [B][fa]fa-border fa-gg[/fa] Zoom sur Setup.php[/B] 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: [CENTER][ATTACH=full]113415[/ATTACH][/CENTER] [B][fa]fa-border fa-gg[/fa] La hierarchie XenForo[/B] 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: [LIST] [*][COLOR='rgb(41,105,176)']Les controllers[/COLOR] que vous creer devront etre sous cette forme [fa]fa-arrow-right[/fa] Pub/Controller/ ou Admin/Controller/ [*][COLOR='rgb(41,105,176)']Vos entitées[/COLOR] devront etre sous cette forme [fa]fa-arrow-right[/fa] Entity/ [*][COLOR='rgb(41,105,176)']Vos repos[/COLOR] devront etre sous cette forme [fa]fa-arrow-right[/fa] Repository/ [*][COLOR='rgb(41,105,176)']Vos templates[/COLOR] devront etre sous cette forme [fa]fa-arrow-right[/fa] _output/templates/public ou _output/templates/admin [*]A partir du moment ou vous[COLOR='rgb(41,105,176)'] etendez une class[/COLOR] deja existante dans XenForo vous devrez faire comme au-dessus pour chaques type sauf que cette fois tout devras etre dans [COLOR='rgb(41,105,176)']un dossier XF[/COLOR] [fa]fa-arrow-right[/fa] J'etends la class Forum je met donc ma class dans XF/Pub/Controller/Forum.php [/LIST] [B][fa]fa-border fa-gg[/fa] Le rendue final[/B] [CENTER]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 [ICODE]php cmd.php xf-addon:build-release ForoAgency/TutoRG[/ICODE]. Et voila le zip ce trouveras dans le dossier [B]_releases[/B] ![/CENTER] [CENTER]C'est tout pour ce petit tutoriel et on ce retrouve tres vite pour le prochain tutoriel XenForo ! :dance: [/CENTER] [/QUOTE]
Insérer les citations…
Vérification
Publier la réponse
Forums
Forums généraux
Informatique
Développement
XenForo 2: Structure d'un addon #1
Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
Acceptez
En savoir plus.…
Haut