Communauté Mondiale
Ecrivez votre propre application en utilisant Joomla! Platform
- Détails
- Publié le samedi 10 décembre 2011 02:45
- Écrit par Simon
Traduction libre de l'article de Hagen Graf sur le Joomla!® Community Magazine du mois de décembre 2011 : Write your own App using Joomla! Platform
Il y a quelques jours, la Joomla! platform version 11.3 a été mise à jour. De plus en plus de personnes se demandent ce qu'est la Joomla! platform. L'article qui suit est un chapitre du futur «Joomla! Development Beginner's Guide (Guide du développeur débutant pour Joomla!) qui sortira sous forme pdf le plus sous peu. Le terme Joomla! platform est récent, il est apparu avec la sortie de Joomla! 1.6 en janvier 2011.
Histoire:
Depuis le commencement de Mambo/Joomla!, le package du CMS contient des fichiers nommés mambo.php et joomla.php.
Dans la version 1.0 de Joomla!, ces fichiers contenaient 6153 lignes de code. Ces fichiers, qui incluaient également quelques autres fichiers, étaient tout simplement trop «lourds». Ils servaient à stocker du code utilisé par le noyau ainsi que par les extensions.
Ces fichiers ont grossi au fur et à mesure jusqu'à devenir Jplatform, une sorte de système d'exploitation pour Joomla, faisant du CMS une sorte d'application qui tournerait sur ce système d'exploitation.
Depuis Joomla!1.6, la Patform s'est dissociée du CMS.
La Joomla! Platform est le framework sur lequel fonctionne le CMS Joomla!.
L'idée de cette séparation est née après le lancement de Joomla! 1.0 au cours de l'année 2005, et il aura fallu près de 6 ans pour la mettre en place. Cette séparation va changer la façon dont les développeurs, les architectes et les fournisseurs de services travailleront avec Joomla! dans l'avenir.
De nombreuses entreprises et organisations ont des exigences qui vont bien au-delà de ce qu'offre le CMS de base de Joomla!, par exemple pour l’intégration de systèmes d'e-commerce, de systèmes de réservation ou encore de gestion de membres.
Regardons cela de plus près...
La numérotation
Ce qui m'a le plus surpris la première fois que j'ai entendu parler de la Joomla! Patform a été sa numérotation.
Puis j'ai rapidement compris: le schéma de numérotation se compose du numéro de l'année en cours et d'un numéro de séquence. De cette manière, 11.1 était la première version de l'année 2011. La version qui a suivi était 11.2. La première version qui sortira en 2012 sera donc 12.1.
Cycle des Release
Tous les trois mois, une nouvelle version de la Joomla! Platform vient mettre à jour la précédente.
Contenu du Pack
Le package Joomla! Platform contient les fichiers stockés dans les répertoires /libraries et /media et ne possède pas d'interface graphique.
Le code source de la Platform est stocké sur GitHub.
Avantages et bénéfices de la séparation
1. Cela permet aux développeurs d'utiliser la Joomla! Platform indépendamment du CMS. Ce qui signifie que dans l'avenir, vous aurez le choix entre différents CMSs basés sur la Joomla! Platform. C'est révolutionnaire! Joomla! est le seul système au monde à permettre cela. Il y aura toujours un CMS fourni par le Joomla! Projet, mais d'autres projets comme Molajo pourraient également utiliser Joomla! Platform comme base.3. Une mise à jour tous les 3 mois.
Avec ce cycle relativement court de mise à jour, il est possible d'ajouter des fonctionnalités à la Platform beaucoup plus rapidement que dans le CMS. Cela est pratique pour les développeurs d’extensions pour ajouter des fonctionnalités de base nécessaires à leurs propres extensions.
4. Cela encourage le recrutement de plus de développeurs, y compris des grandes sociétés, qui n'auraient autrement pas contribué. C'est un point crucial, et tout cela fonctionnera pleinement lorsque ces collaborations seront mises en place.
Utiliser la Platform Joomla!
Pour commencer, il faut télécharger la Platform.
Vous trouvez la dernière version sur GitHub (https://github.com/joomla/joomla-platform).
-
Coding Standards: http://developer.joomla.org/standards/
Ensuite, vous devez extraire le dossier dans votre répertoire serveur (htdocs) et créer un répertoire pour vos applications (cli).
Dans le répertoire /docs vous trouverez la documentation et la norme de codage de la plateforme. Les fichiers sont au format DocBook, et c'est un peu délicat pour les visualiser. Elkuku fournit un filtre public pour la documentation où vous pouvez télécharger les docs en pdf (http://elkuku.github.com/joomla-platform/).
Testez votre environnement
La Joomla! Platform n'offre pas d'interface graphique (GUI) dans un navigateur comme le CMS Joomla!, donc nous utilisons PHP en ligne de commande (CLI) pour nos tous premiers tests.
En fonction de notre système d'exploitation et du LAMP utilisé, il est possible que PHP ne soit pas correctement installé. Vous pouvez le vérifier en entrant la commande php -version dans un terminal (Terminal pour OXS, Command Prompt pour Windows, ou Shell pour Linux). J'utilise OSX et MAMP et le résultat ressemble à cela:
web hagengraf$ php -version |
Hello World
Nous commençons simplement avec l'exemple “Hello world”. Créez un fichier hello.php et placez le dans le répertoire /cli (que vous venez de créer).(listing 1)
Listing 1: hello.phpExécutez votre nouvelle application avec la commande php hello.php, et le résultat devrait ressembler à ceci:
cli hagengraf$ php hello.php |
Vos derniers Tweets
Avez-vous un compte Tweeter? Créons une application interactive utilisant la Joomla! Platform pour lire vos derniers Tweets:(listing 2)
Listing 2: twitter.phpLorsque vous lancez l'application avec la commande php twitter.php, cela vous demande votre nom d'utilisateur Twitter et combien de Tweets vous souhaitez voir. Cela affiche ensuite les Tweets!
cli hagengraf$ php twitter.php What is your twitter handle? hagengraf How many tweets to view? 5 Did you know? Member for 8 years 7 weeks :) http://t.co/L8tzB2kz #drupal #wordpress @brianronnow can you give me the wrong link, then I will update it @brianronnow oh sorry :) the correct answer is 243 pages @brianronnow the last update was 2 days before JDay Denmark |
Nous avançons petit à petit!
Une application Web
La différence entre nos premiers exemples et une application pouvant être lancée dans un navigateur est l'utilisation du HTML. En effet l'utilisation du HTML permet l'affichage d'une page web dans un navigateur.
Pour notre première application web nous voulons juste afficher son chemin (path) ainsi que la date du jour. Le résultat dans le navigateur devrait ressembler à ceci:
|
My Web Application The current URL is http://localhost/jplatform/ The date is 2011-11-21 15:03:11 |
Pour tester cela, nous avons besoin de 2 fichiers: index.php et application.php, dans le répertoire includes/. Si vous voulez créer une application web basée sur une Joomla! Platform, il faut placer le fichier index.php dans le répertoire racine de la Joomla! Platform, et le fichier application.php dans un nouveau dossier nommé includes/.
- build |
Listing 3 :index.php
Le code de l'application se trouve dans le listing 4.
Listing 4: /includes/application.php
Si vous avez l'habitude du CMS Joomla! Vous pouvez utiliser les morceaux de code que vous connaissez pour créer votre propre application.
J'ai pris les 3 exemples dans la page de documentation de Joomla! (http://docs.joomla.org/How_to_create_a_stand-alone_application_using_the_Joomla!_Platform) et à la fin j'ai été impressionné par les possibilités pour construire de nouvelles applications simplement à partir du code de Joomla!.
Applications Web multiples
Dans notre premier exemple nous avons installé exactement une application web sur une Joomla! Platform. Si c'est ce que vous souhaitiez, c'est parfait. Mais imaginez que vous ayez plusieurs applications à lancer sur une même installation de Joomla! Platform. Dans ce cas vous avez besoin d'un fichier supplémentaire bootstrap.php (listing 5) et de la structure de répertoires suivante:
- build |
Le fichier bootstrap.php contient une seule ligne de code indiquant à votre application le chemin vers le répertoire libraries/ de Joomla!
Listing 5: bootstrap.phpPlus de ressources
Il y a un endroit sur GitHub où tous les exemples sont rassemblés (https://github.com/joomla/joomla-platform-examples). .
Ils sont organisés de la même manière que celle présentée au dessus pour les applications multiples.
Vous pouvez télécharger, extraire, et exécuter ces exemples dans le répertoire de votre Joomla! Platform.
Traduction libre de l'article de Hagen Graf sur le Joomla!® Community Magazine du mois de décembre 2011 : Write your own App using Joomla! Platform

