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

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

สารบัญ

วิธีสร้างเทมเพลต(template) ของ Joomla 1.5


ความรู้ที่ควรมีในการสร้าง template คือ
1. ความรู้ทางด้าน กราฟฟิก แต่งรูป
2. HTML และ CSS
3. XML (ใช้ในการทำตัวติดตั้ง template)

มาเริ่มกันเลย ดีกว่า
ก่อนที่เราจะสร้าง template ขึ้นมาใช้งานเอง ต้องสำรวจโครงสร้าง file ของ Joomla ทั้งระบบกันก่อนว่าอะไรอยู่ตรงไหนบ้าง
รูป โครงสร้าง file และ directory

โครงสร้าง file ของ Joomla 1.5

จะเห็นได้ว่ามี folder หนึ่งชื่อ templates folder นี้คือ folder ที่ใช้ เก็บ template ทั้งหมดของ Joomla

Template ต้องประกอบ ด้วย ไฟล์ อย่างน้อยที่สุด สามไฟล์ คือ
1.index.php
2.templateDetails.xml
3.template_thumbnail.png หรือ template_thumbnail.jpg

วิธีการสร้าง template เริ่มด้วย
1.สร้าง folder ย่อยใน folder templates
ตัวอย่าง ผมตั้งชื่อ my_template ก็จะได้ templates/my_template/
2.สร้างไฟล์ index.php ใน folder templates/my_template/ ไฟล์นี้ อาจจะประกอบด้วย โค้ด php,html,css และอื่นๆ ที่เราต้องการ ขึ้นอยู่กับการออกแบบของเรา
ตัวอย่าง ข้อมูลในไฟล์นี้ (เน้นการทำเพื่อให้เข้าใจง่ายๆนะครับ)
ตำแหน่งต่างๆ ใน template ตาม รูป
วิธีการสร้าง template Joomla



โค้ดของ template
---------------------------
<?php
defined('_JEXEC')?or?die(?'Restricted?access'?);??//?ป้องกันการเข้าถึงไฟล์นี้โดยตรง
?>
<html?xmlns="http://www.w3.org/1999/xhtml"?xml:lang="<?php?echo?$this->language;??>"?lang="<?php?echo?$this->language;??>"?>
<head>
<jdoc:include?type="head"?/>
</head>

<body>
<table?width="100%"?border="0"?align="center">
<tr>
<td?colspan="3">Top
<jdoc:include?type="modules"?name="top"?/>????</td>
</tr>
<tr>
<td?colspan="2">User?3
<jdoc:include?type="modules"?name="user3"?/>???</td>
<td?width="26%">User?4
<jdoc:include?type="modules"?name="user4"?/>????</td>
</tr>
<tr>
<td?colspan="3">User?5
<jdoc:include?type="modules"?name="breadcrumb"?/>?
</td>
</tr>
<tr>
<td?width="20%"?rowspan="2">Left
<?php?if($this->countModules('left'))?:??>
<jdoc:include?type="modules"?name="left"?style="rounded"?/>
<?php?endif;??></td>
<td?colspan="2"><table?width="100%"?border="0">
<tr>
<td>User?1
<jdoc:include?type="modules"?name="user1"?style="xhtml"?/>????????</td>
<td>User?2
<jdoc:include?type="modules"?name="user2"?style="xhtml"?/>????????</td>
</tr>

</table></td>
</tr>
<tr>
<td?width="54%"><p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>Component
<jdoc:include?type="component"?/>
</p>
<p>&nbsp;</p>
<p>&nbsp;</p></td>
<td>Right
<jdoc:include?type="modules"?name="right"?style="xhtml"/>????</td>
</tr>
<tr>
<td?colspan="3">Foot
<jdoc:include?type="modules"?name="footer"?style="xhtml"/></td>
</tr>
<tr>
<td?colspan="3"><jdoc:include?type="modules"?name="syndicate"?/></td>
</tr>
</table>
<jdoc:include?type="modules"?name="debug"?/>
</body>
</html>

---------------------------
3.สร้างไฟล์ templateDetails.xml ใน folder templates/my_template/
ในไฟล์นี้โค้ดตามนี้นะครับ
---------------------------------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<install version="1.5" type="template">
<name>my_emplate</name>
<creationDate>01/01/2009</creationDate>
<author>Akkachai</author>
<authorEmail>myemail@e-mail.com</authorEmail>
<authorUrl>http://www.mindphp.com</authorUrl>
<copyright></copyright>
<license>GNU/GPL</license>
<version>1.0.1</version>
<description>simple template</description>
<files>
<filename>index.php</filename>
<filename>templateDetails.xml</filename>
<filename>template_thumbnail.png</filename>
</files>
<positions>
<position>breadcrumb</position>
<position>left</position>
<position>right</position>
<position>top</position>
<position>user1</position>
<position>user2</position>
<position>user3</position>
<position>user4</position>
<position>user5</position>
<position>footer</position>
<position>debug</position>
<position>syndicate</position>
</positions>
</install>

---------------------------------------------------------------



4.สร้าง ไฟล์ template_thumbnail.png เก็๋บไว้ใน folder templates/my_template/
เสร็จแล้ว ให้ Login เข้าหน้า ACP
เข้าไปที่ Extensions > Template Manager

?

จะเห็น template ที่เราสร้างเพิ่มขึ้นมา ในที่นี้คือ my_template

เทมเพลต จุมล่า หน้า admin
ลองตั้งค่าให้ เป็น Default tempalte แล้ว ไปหน้าหน้าเว็บของเราดูครับ
จะได้ template ของเว็บที่เป็น แบบฉบับของเราเอง แล้ว

ต่อไปถ้าจะเอา template นี้ไปแจก เพื่อน ก็ให้ zip folder my_template แล้ว แจกเพื่อนๆ ได้เลยครับ



มีข้อสงสัยโพสถามได้ที่บอร์ด
http://www.mindphp.com/forums/viewforum.php?f=21

สนใจเรียน การสร้าง template ,สร้าง Component,module,plugin ของ Joomla และ เรียน php ติดต่อ
http://www.mindphp.com/forums/viewtopic.php?f=6&t=2518

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
วิธีการเดินจากบ้านมากทม.
โดย Phakakrong อ 07 ก.ค. 2020 12:03 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
3
อ 07 ก.ค. 2020 12:03 pm โดย Phakakrong
Note
โดย Phakakrong อ 07 ก.ค. 2020 11:16 am บอร์ด M105 - ผกากรอง กุสาวดี
0
3
อ 07 ก.ค. 2020 11:16 am โดย Phakakrong
list ความรู้ที่มี ว่าเคยเรียน หรือ เคยทำอะไรมาบ้าง
โดย Phakakrong อ 07 ก.ค. 2020 11:01 am บอร์ด M105 - ผกากรอง กุสาวดี
2
11
อ 07 ก.ค. 2020 11:18 am โดย Phakakrong
ให้เขียนประวัติ และ Job description ที่เคยทำมาแต่ละบริษัท โดยระบุประเภทธุรกิจที่เคยทำมา
โดย Phakakrong อ 07 ก.ค. 2020 11:01 am บอร์ด M105 - ผกากรอง กุสาวดี
0
2
อ 07 ก.ค. 2020 11:01 am โดย Phakakrong
Work's on Hand ผกากรอง กุสาวดี M105
โดย Phakakrong อ 07 ก.ค. 2020 11:00 am บอร์ด M105 - ผกากรอง กุสาวดี
0
3
อ 07 ก.ค. 2020 11:00 am โดย Phakakrong
งานประจำวันที่ 7 กรกฏาคม 2563
โดย Phakakrong อ 07 ก.ค. 2020 10:58 am บอร์ด M105 - ผกากรอง กุสาวดี
1
17
อ 07 ก.ค. 2020 11:23 am โดย Phakakrong
ฟอร์มรับเงิน Omise เราสามารถเปลี่ยน logo ได้มั้ยคะ
โดย thatsawan ศ 03 ก.ค. 2020 6:03 pm บอร์ด Programming - PHP
0
25
ศ 03 ก.ค. 2020 6:03 pm โดย thatsawan
input type="date" ไม่เเสดงเป็นปฎิทินวันที่ให้ใน safari แก้ไขยังไงคะ
โดย thatsawan พฤ 02 ก.ค. 2020 2:31 pm บอร์ด HTML CSS
0
47
พฤ 02 ก.ค. 2020 2:31 pm โดย thatsawan
การสร้าง bot messenger ของ facebook โดยใช้ pymessenger
โดย jirawoot พฤ 02 ก.ค. 2020 1:44 pm บอร์ด Python Knowledge
0
50
พฤ 02 ก.ค. 2020 1:44 pm โดย jirawoot
Q - ทดลองทำเอกสารยื่นแบบผ่านเน็ตแล้ว ไฟล์ txt ใช้ไม่ได้
โดย natthanit.r2538 พ 01 ก.ค. 2020 4:59 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
3
58
พ 01 ก.ค. 2020 5:41 pm โดย natthanit.r2538
สรุปการยื่นแบบภาษีออนไลน์
โดย natthanit.r2538 อ 30 มิ.ย. 2020 5:32 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
1
61
อ 30 มิ.ย. 2020 7:18 pm โดย natthanit.r2538
หลักการคิดค่าคอมมิชชั่น และวิธีการคิด รายได้จาก Commission
โดย natthanit.r2538 อ 30 มิ.ย. 2020 11:31 am บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
55
อ 30 มิ.ย. 2020 11:31 am โดย natthanit.r2538
MJUpgrade อัพเกรดไม่สำเร็จ Error: zip file not found
โดย chaiyaphat ศ 26 มิ.ย. 2020 11:01 am บอร์ด Joomla Development
3
510
ศ 26 มิ.ย. 2020 1:24 pm โดย mindphp
ตั้งค่าใช้ Email ใน phpbb เเล้ว ไม่ทำงาน
โดย thatsawan พฤ 25 มิ.ย. 2020 5:37 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
5
104
ส 27 มิ.ย. 2020 4:43 pm โดย thatsawan
เจอปัญหาตอนทำรายการ Omise เป็นบางครั้ง Error Uncaught OmiseInvalidChargeException
โดย thatsawan พฤ 25 มิ.ย. 2020 3:56 pm บอร์ด Programming - PHP
2
77
จ 29 มิ.ย. 2020 5:29 pm โดย thatsawan
ต้องการจะสร้างไฟล์ HTML เเต่นำค่า php ไป HTML โดย Twig เขียนใน phpbb จะทำยังไงคะ
โดย thatsawan พ 24 มิ.ย. 2020 5:45 pm บอร์ด Programming - PHP
3
79
พฤ 25 มิ.ย. 2020 3:49 pm โดย Sirayu
ถ้าเราต้องการแสดงค่าตอน onchange ใน option ที่มี value มากกว่า 1
โดย thatsawan อ 23 มิ.ย. 2020 12:51 pm บอร์ด JavaScript & Jquery Ajax
2
134
อ 23 มิ.ย. 2020 3:01 pm โดย thatsawan
4 จุดเช็คอิน เกาะล้าน ยอดฮิต
โดย A2d จ 22 มิ.ย. 2020 10:44 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
2
79
ส 27 มิ.ย. 2020 12:01 am โดย A2d
ต้องการจะเปลี่ยนคำปุ่ม omise จาก Pay with Omise เป็นคำที่เรากำหนดขึ้นเอง
โดย thatsawan จ 22 มิ.ย. 2020 5:18 pm บอร์ด PHP Knowledge
2
110
จ 22 มิ.ย. 2020 5:39 pm โดย thatsawan
สาเหตุที่เด็กทารกแพ้นมวัว คุณแม่จะรับมือปัญหานี้อย่างไรดี
โดย medalezga จ 22 มิ.ย. 2020 1:58 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
70
จ 22 มิ.ย. 2020 1:58 pm โดย medalezga