ให้เรตสมาชิก: 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

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
มี Joomla Extension ตัวไหน ทำ Youtube แกลอลี่ ได้บ้าง
โดย Anonymous อ 04 ส.ค. 2020 8:23 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
1
8
อ 04 ส.ค. 2020 8:27 pm โดย mindphp
How To Write HTML To Make SEO Freindly Website?
โดย Ridahashmi อ 04 ส.ค. 2020 8:04 pm บอร์ด HTML CSS
0
6
อ 04 ส.ค. 2020 8:04 pm โดย Ridahashmi
ภ.พ.36 คืออะไร
โดย natthanit.r2538 อ 04 ส.ค. 2020 5:54 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
5
อ 04 ส.ค. 2020 5:54 pm โดย natthanit.r2538
อุตสาหกรรมเกษตรน่านแฟร์ 2020
โดย krittaphon อ 04 ส.ค. 2020 10:23 am บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
11
อ 04 ส.ค. 2020 10:23 am โดย krittaphon
R - AI แยกชาย/หญิง
โดย mindphp ศ 31 ก.ค. 2020 8:08 pm บอร์ด FDD (Main)
0
1
ศ 31 ก.ค. 2020 8:08 pm โดย mindphp
สอบถามเรื่อง cron.task.core เวลาในการตั้งค่า ให้ระบบทำงาน
โดย thatsawan ศ 31 ก.ค. 2020 5:34 pm บอร์ด Programming - PHP
2
41
ศ 31 ก.ค. 2020 6:19 pm โดย thatsawan
ผมไปโหลดโปรเเกรมนึงมาพอผมติดตั้งตามปกติเเต่เหมือนจะเป็นไวรัสผมเลยรีบลบ
โดย Anonymous ศ 31 ก.ค. 2020 12:18 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
35
ศ 31 ก.ค. 2020 4:06 am โดย mindphp
ถ้าเราต้องการ timestamp เวลา 0.00 น. เที่ยงคืนของวันปัจจุบัน ทำได้ยังไงค่ะ
โดย thatsawan พ 29 ก.ค. 2020 11:24 am บอร์ด Programming - PHP
4
71
พฤ 30 ก.ค. 2020 5:50 pm โดย anawat2050
[Tip]excel วิธี save as เป็นไฟล์ .csv โดยใช้ | คั่นคอลัมน์แทน ,
โดย jataz2 พ 29 ก.ค. 2020 9:14 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
36
พ 29 ก.ค. 2020 9:14 am โดย jataz2
Webboard สำหรับ WP
โดย wichai007 อ 28 ก.ค. 2020 9:01 pm บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS, CRM
0
65
อ 28 ก.ค. 2020 9:01 pm โดย wichai007
ถอด วันที่จาก excel มาได้ผลลัพท์เเต่ละ แถว row ไม่เหมือนกัน
โดย thatsawan อ 28 ก.ค. 2020 8:18 pm บอร์ด Programming - PHP
2
54
อ 28 ก.ค. 2020 8:40 pm โดย mindphp
B - ตัวอย่างคำสั่งที่ไม่เข้าไปใน e-mail [2020-07][002]
โดย natthanit.r2538 ศ 24 ก.ค. 2020 6:28 pm บอร์ด MD-CRM - Tester
2
8
อ 28 ก.ค. 2020 7:12 pm โดย mindphp
สอบถาม มีวิธีเขียน pyhon อ่านไฟล์ .dll มั้ยครับ
โดย jirawoot ศ 24 ก.ค. 2020 2:36 pm บอร์ด Programming - C/C++ & java & Python
0
135
ศ 24 ก.ค. 2020 2:36 pm โดย jirawoot
จะต้องทำยังไงถึงจะสมบรูณ์ GroundOverlay overlay
โดย niran พ 22 ก.ค. 2020 11:19 pm บอร์ด JavaScript & Jquery Ajax
0
159
พ 22 ก.ค. 2020 11:19 pm โดย niran
จะต้องทำยังไงถึงจะสมบรูณ์
โดย Anonymous พ 22 ก.ค. 2020 9:14 pm บอร์ด HTML CSS
2
177
พฤ 23 ก.ค. 2020 8:30 pm โดย บุคคลทั่วไป
สอบถามเกี่ยวกับการรองรับจำนวนผู้ใช้งาน postgresql
โดย Anonymous พ 22 ก.ค. 2020 2:56 pm บอร์ด SQL - Database
1
153
พ 22 ก.ค. 2020 4:45 pm โดย mindphp
การรองรับจำนวนผู้ใช้ postgreSQL
โดย Anonymous พ 22 ก.ค. 2020 2:33 pm บอร์ด PostgreSQL
1
159
พ 22 ก.ค. 2020 4:45 pm โดย mindphp
ข้อควรคิดเรื่องสถานที่จัดงาน ก่อนเลือกธีมงานแต่งงาน
โดย thongdeesmilesuk พ 22 ก.ค. 2020 12:30 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
117
พ 22 ก.ค. 2020 12:30 pm โดย thongdeesmilesuk
ทำความรู้จักกับ Apache Hadoop
โดย moo1997 อ 21 ก.ค. 2020 5:42 pm บอร์ด Microsoft Office Knowledge & line & Etc
0
104
อ 21 ก.ค. 2020 5:42 pm โดย moo1997
Marketplace คืออะไร
โดย moo1997 อ 21 ก.ค. 2020 3:50 pm บอร์ด Accounting software & ERP โปรแกรมบัญชี ระบบอีอาร์พี
0
105
อ 21 ก.ค. 2020 3:50 pm โดย moo1997