Phát triển một phần MVC/Giới thiệu

 
Phát triển một phần MVC/Giới thiệu

Đây là một bài viết nhiều loạt các hướng dẫn trên làm thế nào để phát triển một mô hình-xem-Contoller thành phần cho Joomla Phiên bản 3.1.

Bắt đầu với việc giới thiệuvà di chuyển các bài viết trong loạt bài này bằng cách sử dụng hộp menu bên phải ( bài viết trong loạt bài này).

Yêu cầu

Bạn cần Joomla 3.0 (với PHP, MySQL, Apache và Microsoft II) hoặc cao hơn cho hướng dẫn này.

Tôi thu thập rất nhiều thông tin và sau đó tôi bắt đầu di chuyển các thành phần của 2.5 Joomla mới đến 3.0. Dưới đây là một số thông tin quan trọng được sử dụng để di chuyển:

Sử dụng "display_errors ngày" để giúp đỡ trong lỗi gỡ lỗi.

Di chuyển Joomla 2,5 cho Joomla 3.0:

Hãy nhớ rằng bạn cần phải thêm di sản bất cứ nơi nào bạn đang trực tiếp mở rộng JModel, JView hoặc JController. Nếu nó là gián tiếp (như thông qua JModellist) bạn không cần phải, nó có đã đưa chăm sóc. Khác hơn so với điều đó và thực tế rằng, cũng như công bố lâu phản đối mã đã được loại bỏ (tôi đoán JParameter là tác động lớn nhất) Tiện ích mở rộng chỉ cần thay đổi nhỏ... mặc dù bạn cần phải nhìn vào những thay đổi sản lượng Kyle đang làm việc trên. Tất nhiên nếu bạn đang xây dựng đứng một mình nền tảng ứng dụng MVC mới và JApplicationWeb/JApplicationCLI hoàn toàn là cách bạn nên làm việc và những điều tốt đẹp về cách thức chúng tôi đã làm điều này là các gói mới đã có ngay trên máy chủ của bạn đã đến với CMS. (Elin trong phát triển danh sách)

Mẫu:

DS

Kể từ khi chúng tôi đã loại bỏ các liên tục DS trong 3.0, chúng ta cần phải thay thế việc sử dụng hằng số trong com_media. Sự thay đổi đặt không phô trương là đơn giản chỉ cần thay thế nó bằng PHP DIRECTORY_SEPARATOR liên tục kể từ khi DS là một bí danh đó.

(joomlacode)

if(!định nghĩa('DS')){
define('DS',DIRECTORY_SEPARATOR);
}
//$controller = JController::getInstance('HelloWorld');
$controller= JControllerLegacy:getInstance('HelloWorld');
//class HelloWorldViewHelloWorlds mở rộng JView
lớp họcmở rộng JViewLegacy
lớp họckéo dài JControllerLegacy
lớp họckéo dài JModelItemLegacy
lớp họckéo dài JModelFormLegacy
JRegistry:getValue() bây giờ là JRegistry:nhận được()
//Convert mẫu để JRegistry với LoadJSON - mẫu từ Joomla 3.0 sourcecode
//                             $params = mới JRegistry;
//                             $params -> loadJSON ($ này -> mục -> chủ);
//                             $this -> mục -> params = $params;
                                $params=mới JRegistry;
                                $params->loadString($item->params);
                                $item->chủ=$params;

Mã nguồn tại đây: https://joomlacode.org/gf/project/hellojoomla3/frs/

MVC mới trong Joomla 3.0

"Phiên bản 12,1 nền tảng giới thiệu một định dạng mới cho model-view-controller mô hình. Nằm, các lớp học JModel, JView và JController đang giao diện và các lớp trừu tượng cơ sở là bây giờ, JModelBase, JViewBase và JControllerBase tương ứng. Trong bổ sung, tất cả các lớp học đã được đơn giản hóa loại bỏ rất nhiều khớp nối với Joomla CMS là không cần thiết cho độc lập ứng dụng nền tảng Joomla."... [Nền tảng Joomla hướng dẫn sử dụng MVC - https://developer.joomla.org/manual/chap-Joomla_Platform_Manual-MVC.html]