ให้เรตสมาชิก: 2 / 5

ดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

สารบัญ

Front End และ Back End ใน Joomla Component

การสร้างคอมโพเน้นท์ของจูมล่านั้นจะมีการแบ่งออกเป็นสองส่วนคือ Front End (สำหรับผู้ใช้งานทั่วไป) และ Back End (สำหรับผู้ดูแลระบบ)

ซึ่งในบทความนี้จะพูดถึงเฉพาะ Front End และ Back End สำหรับหลักการเขียน Component ของ Joomla ดูได้ที่บทความ สร้าง Component เรียนรู้ MVC แบบ Joomla

Front End

1.สร้างโฟลเดอร์คอมโพเน้นท์ com_frontbackend

2. สร้างไฟล์เริ่มแรกของคอมโพเน้นท์ com_frontbackend/frontbackend.php

Code ของไฟล์ frontbackend.php

บรรทัดที่ 23 : เป็นการกำหนดชื่อคลาสของ Controller

 

3. Model

3.1 สร้างโฟล์เดอร์ models

3.2 สร้างไฟล์ models/a.php

 

Code ของไฟล์ models/a.php

 

4. Controller

4.1 สร้าง Default Controller โดยตั้งชื่อไฟล์เป็น controller.php

Code ของไฟล์ controller.php

 

4.2 สร้างโฟลเดอร์ controllers

4.3 สร้างไฟล์ controllers/a.php

 

Code ของไฟล์ controllers/a.php

 

บรรทัดที่ 8-9 : เป็นการกำหนดให้ใช้ View (a) และ Layout (default)

5. View

5.1 สร้างโฟลเดอร์ views เพื่อเก็บ View ทั้งหมดที่เราใช้งาน

5.1 สร้างโฟลเดอร์ views/a

5.2 สร้างไฟล์ views/a/a.php

 

 

Code ของไฟล์ views/a/view.html.php

 

บรรทัดที่ 8 : เป็นการเรียกใช้เมธอด getData() จาก Model A แล้วเก็บค่าใส่ตัวแปร $mydata

บรรทัดที่ 9 :เป็นการสร้างตัวแปร item เพื่อนำไปใช้ใน Layout

 

5.3 สร้างโฟลเดอร์ tmpl

5.4 สร้างไฟล์ views/a/tmpl/default.php

 

Code ของไฟล์ views/a/tmpl/default.php

 

ทดสอบคอมโพเน้นในส่วนของ Front End

http://localhost/joomla/index.php?option=com_frontbackend&controller=a

 

 


 

1. Copy โฟลเดอร์คอมโพเน้นท์ com_frontbackend ทั้งโฟลเดอร์ไปไว้ในโฟลเดอร์ administrator/components

 

2. เปลี่ยนชื่อไฟล์ frontbackend.php เป็น admin.frontbackend.php

3. เปิดไฟล์ administrator/com_frontbackend/admin.frontbackend.php

แก้ไขโค็ดบรรทัดที่ 11 และ 14 โดยเปลี่ยนจาก JPATH_COMPONENT เป็น JPATH_COMPONENT_ADMINISTRATOR

3. เปิดไฟล์ administrator/com_frontbackend/views/a/tmpl/default.php

แก้ไขบรรทัดที่ 4 นิดหน่อย

ทดสอบคอมโพเน้นในส่วนของ Back End

http://localhost/joomla/administrator/index.php?option=com_frontbackend&controller=a

 

 

โหลดโค้ดตัวอย่างได้ที่ โค้ดตัวอย่างประกอบบทความ

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ไม่เข้าใจคำสั่ง preg_replace
โดย profess79 ส 20 มิ.ย. 2020 11:56 am บอร์ด Programming - PHP
1
112
ส 20 มิ.ย. 2020 6:19 pm โดย profess79
วิธีการทำทศนิยม 3 ตำแหน่ง ด้วย python
โดย bolue ศ 19 มิ.ย. 2020 4:49 pm บอร์ด Python Knowledge
0
84
ศ 19 มิ.ย. 2020 4:49 pm โดย bolue
วิธีการ เพิ่มข้อมูล ลงฐานข้อมูล พร้อม รีเทิร์น id กลับมา ด้วยคำสั่ง sql
โดย bolue ศ 19 มิ.ย. 2020 3:25 pm บอร์ด SQL Knowledge
0
554
ศ 19 มิ.ย. 2020 3:25 pm โดย bolue
เจอปัญหา ส่งเมลผิดพลาด : Language string failed to load: from_failed บน phpmailer
โดย mindphp ศ 19 มิ.ย. 2020 3:26 am บอร์ด Programming - PHP
2
1610
ศ 19 มิ.ย. 2020 5:47 pm โดย mindphp
กฎหมายที่ใช้ควบคุมโรค โควิด-19 ฝ่าฝืนได้รับโทษอย่างไรบ้าง?
โดย Decha Thaweeumanjvaroj พฤ 18 มิ.ย. 2020 10:17 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
106
พฤ 18 มิ.ย. 2020 10:17 am โดย Decha Thaweeumanjvaroj
ไม่สามารถ start openerp-server ของ openerp 7 ได้
โดย bolue พฤ 18 มิ.ย. 2020 10:09 am บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
10
176
ศ 19 มิ.ย. 2020 12:49 pm โดย bolue
ติดตั้ง ERP 7 ไม่ได้ค่ะ
โดย bolue พ 17 มิ.ย. 2020 4:01 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
12
165
ส 27 มิ.ย. 2020 12:47 am โดย mindphp
การ count ตาราง จากการรวมข้อมูล 2 ตารางเข้าด้วยกันด้วยคำสั่ง sql
โดย bolue อ 16 มิ.ย. 2020 5:01 pm บอร์ด SQL Knowledge
0
169
อ 16 มิ.ย. 2020 5:01 pm โดย bolue
การใส่ไวยากรณ์สำหรับความคิดเห็นใน php พื้นฐาน
โดย phennapa อ 16 มิ.ย. 2020 3:28 pm บอร์ด PHP Knowledge
0
47
อ 16 มิ.ย. 2020 3:28 pm โดย phennapa
ตัวแปร php พื้นฐาน
โดย phennapa อ 16 มิ.ย. 2020 1:45 pm บอร์ด PHP Knowledge
0
52
อ 16 มิ.ย. 2020 1:45 pm โดย phennapa
แนะนำ php พื้นฐาน
โดย phennapa อ 16 มิ.ย. 2020 12:37 pm บอร์ด PHP Knowledge
0
52
อ 16 มิ.ย. 2020 12:37 pm โดย phennapa
เริ่มต้นการเขียน PHP
โดย phennapa อ 16 มิ.ย. 2020 11:46 am บอร์ด PHP Knowledge
0
51
อ 16 มิ.ย. 2020 11:46 am โดย phennapa
การใช้ Style ตกแต่งเว็บเพจ ด้วยภาษา(CSS)ขั้นพื้นฐาน
โดย phennapa อ 16 มิ.ย. 2020 6:20 am บอร์ด CSS Knowledge
0
56
อ 16 มิ.ย. 2020 6:20 am โดย phennapa
การออกแบบหน้าlogin ขั้นพื้นฐาน php
โดย phennapa อ 16 มิ.ย. 2020 5:23 am บอร์ด PHP Knowledge
0
76
อ 16 มิ.ย. 2020 5:23 am โดย phennapa
Android - การออกแบบUI หน้าlogin พื้นฐาน
โดย phennapa จ 15 มิ.ย. 2020 6:39 pm บอร์ด Mobile Application Developing- Android, iOS
1
194
อ 16 มิ.ย. 2020 2:59 am โดย บุคคลทั่วไป
การจับ error ใน ฟังก์ชั่น ด้วยการใช้ current_app ใน python
โดย bolue จ 15 มิ.ย. 2020 6:18 pm บอร์ด Python Knowledge
0
44
จ 15 มิ.ย. 2020 6:18 pm โดย bolue
วิธีการเดินทางจาก อำเภอกันทรลักษ์ จังหวัดศรีสะเกษ มา กรุงเทพ.
โดย phennapa จ 15 มิ.ย. 2020 5:12 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
37
จ 15 มิ.ย. 2020 5:12 pm โดย phennapa
อยากทราบว่าใส่รูปยังไงคะในกระทู้ค่ะ
โดย phennapa จ 15 มิ.ย. 2020 4:49 pm บอร์ด MindPHP News & Feedback
1
63
จ 15 มิ.ย. 2020 5:01 pm โดย thatsawan
ไม่สามารถใช้ route methods get ได้ ใน flask_classful
โดย bolue จ 15 มิ.ย. 2020 1:08 pm บอร์ด Programming - C/C++ & java & Python
2
69
จ 15 มิ.ย. 2020 3:28 pm โดย bolue
สอบถามค่ะ บาง url ที่ดึงมา ใช้ไม่ได้ค่ะ
โดย bolue พฤ 11 มิ.ย. 2020 2:40 pm บอร์ด Programming - C/C++ & java & Python
7
177
จ 15 มิ.ย. 2020 8:52 am โดย bolue