J3.x

Développement d'un composant MVC - Introduction

From Joomla! Documentation

< J3.x:Developing an MVC Component
Revision as of 21:58, 19 January 2017 by FuzzyBot (talk | contribs) (Updating to match new version of source page)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Other languages:
Deutsch • ‎English • ‎Nederlands • ‎español • ‎français • ‎italiano • ‎polski • ‎português do Brasil • ‎العربية • ‎中文(中国大陆)‎ • ‎中文(台灣)‎
Joomla! 
3.x
Didacticiel
Développement d'un composant MVC

Ajout d'une requête de variable dans le type de menu

Utilisation de la base de données

Backend de base

Ajout de la gestion des langues

Ajout d'actions en backend

Ajout de décorations pour le backend

Ajout de vérifications

Ajout de catégories

Ajout de configuration

  1. Ajout d'ACL

Ajout d'un fichier script installation/désinstallation/mise à jour

Ajout d'un formulaire de frontend

  1. Ajout d'une image
  2. Ajout d'un plan
  3. Ajout d'AJAX
  4. Ajout d'un alias

Utilisation du filtre de langues

  1. Ajouter une fenêtre modale
  2. Ajout d'associations
  3. Ajout de Checkout
  4. Ajout d'un filtre
  5. Ajout de niveaux
  6. Ajout de versions
  7. Ajout de tags
  8. Ajout d'accès
  9. Ajout d'un processus de traitement
  10. Ajout d'un cache
  11. Ajout d'un fil d'actualité

Ajout d'un serveur de mise à jour

  1. Adding Custom Fields
  2. Upgrading to Joomla4



Ceci est une série qui regroupe plusieurs articles pour devenir un didacticiel sur la façon de développer un Composant pour Joomla! Joomla 3.x suivant le principe Modèle-Vue-Contrôleur.

Commencez avec l'introduction, et naviguez dans les articles de cette série soit à l'aide des boutons de navigation en bas des articles, soit grâce au menu de droite : Les articles de cette série.



Notes

Exigences techniques

Joomla! 3.0 ou supérieur (avec PHP, MySQL et Apache/IIS de Microsoft) est nécessaire pour ce didacticiel. J'ai recueilli de nombreuses informations, puis j'ai commencé à migrer le composant de Joomla! 2.5 vers Joomla! 3.0. Voici ci-dessous quelques informations importantes sur la migration. Veuillez également consulter toutes les informations sur la migration : Mise à niveau de versions. Paramétrez "display_errors" sur "On" pour faciliter le débogage des erreurs.

Migration de Joomla! 2.5 vers Joomla! 3.0

N'oubliez pas d'ajouter 'Legacy' (rétrocompatibilité) là où vous étendez de façon directe JModel, JView ou JController. Si c'est de manière indirecte (comme pour JModelList), cela n'est pas nécessaire, puisque déjà pris en charge. Outre le fait que le code obsolète (deprecated) a été supprimé (je suppose que JParameter est le plus impacté), les extensions devraient nécessiter que des changements mineurs... Vous pourrez souhaiter voir les modifications de rendu sur lesquelles Kyle travaille. Bien sûr, si vous mettez en place des applications autonomes, le nouveau MVC et JApplicationWeb/JApplicationCLI correspondent à la façon dont vous devriez travailler et, bonne nouvelle, les nouveaux paquets sont déjà là, sur votre serveur, livrés avec le CMS.

Exemples : DS - La constante DS ayant été supprimée dans Joomla! 3.0, il nous faut remplacer les utilisations de la constante dans com_media. Le changement le moins intrusif est de simplement la remplacer par la constante PHP DIRECTORY_SEPARATOR, DS en étant un alias.

(joomlacode)

if(!defined('DS')){
define('DS',DIRECTORY_SEPARATOR);
}

//$controller = JController::getInstance('HelloWorld');
$controller = JControllerLegacy::getInstance('HelloWorld');

//class HelloWorldViewHelloWorlds extends JView
class HelloWorldViewHelloWorlds extends JViewLegacy

class HelloWorldController extends JControllerLegacy

class HelloWorldModelHelloWorld extends JModelItemLegacy

class HelloWorldModelUpdHelloWorld extends JModelFormLegacy

JRegistry::getValue() now is JRegistry::get()

//Convert sample to JRegistry with LoadJSON - Sample from Joomla! 3.0 sourcecode

//				$params = new JRegistry;
//				$params->loadJSON($this->item->params);
//				$this->item->params = $params;

				$params = new JRegistry;
				$params->loadString($item->params);
				$item->params = $params;

Voici le code source : http://joomlacode.org/gf/project/hellojoomla3/frs/

Nouveau MVC dans Joomla! 3.0

"La version 12.1 de la plateforme a introduit un nouveau format pour le paradigme modèle-vue-contrôleur. En principe, les classes JModel, JView et JController sont désormais des interfaces et les classes de base sont désormais et respectivement, JModelBase, JViewBase et JControllerBase. En outre, toutes les classes ont été simplifiées, grâce à la suppression d'un grand nombre de doublon avec le CMS Joomla, qui étaient inutiles dans des applications autonomes de la plateforme Joomla"... Plateforme Joomla! - Manuel MVC

Contributeurs