Mengembangkan Komponen MVC/Pendahuluan

 
Mengembangkan Komponen MVC/Pendahuluan

Ini adalah serangkaian multiple-artikel tutorial tentang cara untuk mengembangkan Model-View-Contoller sebuah komponen untuk Joomla versi 3.1.

Mulai dengan pengantar, dan menavigasi artikel dalam seri ini dengan menggunakan kotak navigasi ke kanan ( artikel dalam seri ini).

Persyaratan

Anda perlu Joomla 3.0 (dengan PHP, MySQL, Apache dan Microsoft II) atau lebih untuk tutorial ini.

Saya mengumpulkan banyak informasi dan kemudian aku mulai bermigrasi komponen Joomla baru 2.5 untuk 3.0. Berikut adalah beberapa informasi penting yang digunakan untuk migrasi:

Gunakan "display_errors pada" untuk membantu dalam kesalahan debug.

Bermigrasi Joomla 2.5 untuk Joomla 3.0:

Ingat bahwa Anda perlu menambahkan warisan tempat Anda langsung memperpanjang JModel, JView atau JController. Jika itu tidak langsung (seperti melalui JModellist) Anda tidak perlu, itu telah telah diambil dari perawatan. Selain itu dan fakta bahwa sebagai mengumumkan kode usang lama telah dihapus (saya akan menebak bahwa JParameter adalah dampak terbesar) ekstensi harus hanya memerlukan perubahan kecil... meskipun Anda akan ingin untuk melihat perubahan output yang Kyle bekerja pada. Tentu saja jika Anda sedang membangun aplikasi platform berdiri sendiri MVC baru dan JApplicationWeb JApplicationCLI yang benar-benar cara yang Anda harus bekerja dan yang bagus tentang cara kita melakukan ini adalah bahwa paket baru yang sudah di sana pada server Anda telah tiba dengan CMS. (Elin dalam pengembangan daftar)

Contoh:

DS

Karena kami telah menghapus konstan DS di 3.0, kita perlu mengganti penggunaan konstan dalam com_media. Perubahan yang paling mencolok adalah untuk hanya menggantinya dengan PHP DIRECTORY_SEPARATOR konstan karena DS adalah alias untuk itu.

(JoomlaCode yang)

if(!didefinisikan('DS')){
define('DS',DIRECTORY_SEPARATOR);
}
//$controller = JController::getInstance('HelloWorld');
$controller= JControllerLegacy:getInstance()'HelloWorld');
//class HelloWorldViewHelloWorlds meluas JView
kelasmeluas JViewLegacy
kelasmeluas JControllerLegacy
kelasmeluas JModelItemLegacy
kelasmeluas JModelFormLegacy
JRegistry:getValue() sekarang adalah JRegistry:mendapatkan()
//Convert sampel untuk JRegistry dengan LoadJSON - sampel dari Joomla 3.0 sourcecode
//                             $params = new JRegistry;
//                             $params -> loadJSON ($ ini -> item -> params);
//                             $this -> item -> params = $params;
                                $params=baru JRegistry;
                                $params->loadString($item->params);
                                $item->params=$params;

Kode sumber di sini: https://joomlacode.org/gf/project/hellojoomla3/frs/

Baru MVC di Joomla 3.0

"Versi 12.1 platform memperkenalkan format baru untuk model-view-controller paradigma. Principly, kelas JModel, JView dan JController yang sekarang antarmuka dan abstrak kelas dasar sekarang JModelBase, JViewBase dan JControllerBase masing-masing. Dalam tambahan, semua kelas telah disederhanakan mengeluarkan banyak kopel dengan Joomla CMS yang tidak perlu untuk standalone aplikasi Joomla Platform."... [Joomla Platform Manual MVC - https://developer.joomla.org/manual/chap-Joomla_Platform_Manual-MVC.html]