Sviluppo di un componente MVC/Introduzione

 
Sviluppo di un componente MVC/Introduzione

Questa è una serie di multiplo-articolo di tutorial su come sviluppare un componente Model-View-Controller per Joomla versione 3.1.

Iniziare con l' Introduzionee navigare negli articoli di questa serie utilizzando la casella di navigazione a destra (gli articoli di questa serie).

Requisiti

Hai bisogno di Joomla 3.0 (con PHP, MySQL, Apache e Microsoft II) o maggiore per questo tutorial.

Ho raccolto un sacco di informazioni e poi ho iniziato a migrare il componente del nuovo Joomla 2.5 a 3.0. Ecco alcune informazioni importanti, utilizzati per la migrazione:

Utilizzare "display_errors su" per aiutare nel debug di errori.

Migrazione Joomla 2.5 a Joomla 3.0:

Ricordate che è necessario aggiungere Legacy qualsiasi posto si estende direttamente JModel, JView o JController. Se è indiretto (come attraverso JModellist) non è necessario, esso ha già preso cura di. Diverso da questo e il fatto che, come annunciato tempo fa deprecato codice è stato rimosso (direi che JParameter è il più grande impatto) estensioni dovrebbero solo bisogno piccole modifiche... anche se si desidera guardare i cambiamenti di uscita che Kyle sta lavorando su. Naturalmente se vi sono applicazioni stand-alone piattaforma nuovo MVC e JApplicationWeb/JApplicationCLI sono completamente il modo si dovrebbe lavorare e la cosa bella di quello che abbiamo fatto questo è che i nuovi pacchetti sono già lì sul vostro server avendo arrivato con il CMS. (Elin nella lista di sviluppo)

Campioni:

DS

Dal momento che noi abbiamo rimosso la costante DS 3.0, abbiamo bisogno di sostituire gli usi della costante nel com_media. Il cambiamento più discreto è semplicemente sostituirlo con costante di DIRECTORY_SEPARATOR di PHP, poiché DS è un alias a quello.

(joomlacode)

if(!definito('DS')){
define('DS',DIRECTORY_SEPARATOR);
}
//$controller = JController::getInstance('HelloWorld');
$controller= JControllerLegacy:getInstance('HelloWorld');
//class HelloWorldViewHelloWorlds si estende JView
classesi estende JViewLegacy
classeestende JControllerLegacy
classeestende JModelItemLegacy
classeestende JModelFormLegacy
JRegistry:getValue() ora è JRegistry:get()
//Convert campione di JRegistry con LoadJSON - campione da sourcecode Joomla 3.0
//                             $params = new JRegistry;
//                             $params -> loadJSON ($ this -> articoli -> params);
//                             $this -> menu -> params = $params;
                                $params=nuovo JRegistry;
                                $params->loadString($item->params);
                                $item->params=$params;

Qui il codice sorgente: https://joomlacode.org/gf/project/hellojoomla3/frs/

Nuovo MVC in Joomla 3.0

"Versione 12.1 della piattaforma ha introdotto un nuovo formato per paradigma model-view-controller. Principalmente, le classi JModel, JView e JController sono ora le interfacce e le classi base astratte sono ora JModelBase, JViewBase e JControllerBase rispettivamente. Nei supplementari, tutte le classi sono state semplificate rimuovendo un sacco di accoppiamento con il CMS Joomla che è inutile per standalone applicazioni piattaforma Joomla."... [Piattaforma Joomla Manuale MVC - https://developer.joomla.org/manual/chap-Joomla_Platform_Manual-MVC.html]