สร้าง Component สำหรับ Joomla 2.5 การสร้างส่วน view

หมวดสำหรับแบ่งบันความ รู้ต่างๆ จะมีหมวดย่อยๆ ในหมวดนี้ เช่น php, SQL, XML, CSS

Moderators: mindphp, ผู้ดูแลกระดาน

User avatar
tsukasaz
PHP VIP Members
PHP VIP Members
Posts: 11751
Joined: 18/04/2012 9:39 am

สร้าง Component สำหรับ Joomla 2.5 การสร้างส่วน view

Post by tsukasaz »

ส่วน view คืออะไร ถ้าไม่เข้าใจศึกษาแนวคิดนะครับ
แนวคิด MVC Joomla

ก่อนอื่นต้องมีไฟล์ตามขั้นตอนนี้มาก่อน สร้าง Component สำหรับ Joomla 2.5 แบบพื้นฐาน

1. ไปที่โฟลเดอร์ helloworld ที่เราสร้างไว้ในหัวข้อที่แ้ล้ว เข้าไปที่ site -> helloworld.php เปิดไฟล์ขึ้นมา เขียนโค้ดลงไปครับ

Code: Select all

<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import joomla controller library
jimport('joomla.application.component.controller');
 
// Get an instance of the controller prefixed by HelloWorld
$controller = JController::getInstance('HelloWorld');
 
// Perform the Request task
$controller->execute(JRequest::getCmd('task'));
 
// Redirect if set by the controller
$controller->redirect();
?>
2. ในโฟลเดอร์ site ให้สร้างไฟล์ controller.php แล้วใส่โค้ด

Code: Select all

<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import Joomla controller library
jimport('joomla.application.component.controller');
 
/**
 * Hello World Component Controller
 */
class HelloWorldController extends JController
{
}
?>
3. สร้างโฟลเดอร์ views เปิดเข้าไป สร้างโฟลเดอร์ชื่อ helloworld เปิดเข้าไป สร้างไฟล์ view.html.php ใส่โค้ด

Code: Select all

<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
 
// import Joomla view library
jimport('joomla.application.component.view');
 
/**
 * HTML View class for the HelloWorld Component
 */
class HelloWorldViewHelloWorld extends JView
{
    // Overwriting JView display method
    function display($tpl = null) 
    {
        // Assign data to the view
        $this->msg = 'Hello World';
 
        // Display the view
        parent::display($tpl);
    }
}
?>
4. ให้สร้างโฟลเดอร์ tmpl เปิดเข้าไป สร้างไฟล์ default.php ใส่โค้ด

Code: Select all

<?php
// No direct access to this file
defined('_JEXEC') or die('Restricted access');
?>
<h1><?php echo $this->msg; ?></h1>
?>
5. เปิดไฟล์ helloworld.xml ขึ้นมาแก้

Code: Select all

<version>0.0.1</version>
เปลี่ยนเป็น

Code: Select all

<version>0.0.2</version>
และ

Code: Select all

<files folder="site">
		<filename>index.html</filename>
		<filename>helloworld.php</filename>
	</files>
เปลี่ยนเป็น

Code: Select all

<files folder="site">
		<filename>index.html</filename>
		<filename>helloworld.php</filename>
		<filename>controller.php</filename>
		<folder>views</folder>
	</files>

6. ทำเป็น .zip แล้ว เข้าไปหน้าของ administrator ไปเพิ่ม extensions เ้ข้าไปใหม่

รันโค้ดโดยพิม URL = index.php?option=com_helloworld
Attachments
view.JPG
view.JPG (26.69 KiB) Viewed 3290 times
The last bug isn't fixed until the last user is dead. (Sidney Markowitz, 1995)

gain9999
PHP Jr. Member
PHP Jr. Member
Posts: 26
Joined: 07/08/2012 4:53 pm

Re: สร้าง Component สำหรับ Joomla 2.5 การสร้างส่วน view

Post by gain9999 »

Tip: ปัญหาแบ่งหน้าแล้วมีปัญหา stat ไม่จำค่า แก้ด้วย ตั้งชื่อตามรูปแบบตัวอย่าง

Post Reply
  • Similar Topics
    Replies
    Views
    Last post

Return to “Share Knowledge”

Who is online

Users browsing this forum: No registered users and 7 guests