Joomla! 1.5 Template Design By joomla thai club
จัดทําโดย joomlathaiclub.com
Joomla! 1.5 Template Design By joomla thai club สั่งสมประสบการณมาพอสมควร joomla แบบเบสิกคงจะไดกันหมดแลว คราวนี้มาพูดถึงเรื่องการออกแบบ joomla 1.5 template กันดีกวา ความจริงผมก็ไมไดเกงกาจอะไรนักหนานะครับเพียงแตไดใชงาน joomla บอย มาก ๆ ตั้งแตกอนเริ่มที่จะมาเปน joomla ดวยซ้ํา เลยมีความชํานาญสักหนอย แตเรื่องเขียนโคดโปรแกรม ของผมนี่คงจะไมคอย ไดเรื่องเทาไหร อาศัยแบบงู ๆ ปลา ๆ ไปเรื่อย ๆ จะใหเขียนโคดแบบผูท ี่เขาเรียนมาโดยตรงคงไมไดครับ ผมเองก็ไมได เรียนมาโดยตรงทางนี้ซะดวย อาศัยศึกษาดวยตนเอง มีเวลาวางเมื่อไหรก็จะมานั่งศึกษากัน สวนใหญก็จะไมคอยวางมานั่ง ศึกษาการเขียนโปรแกรมอยางจริงจัง เพราะตองทํางานหาเงินดวยอะ พอดีไดหนังสือมาเลมหนึ่ง เปนของตางประเทศ ฝรั่งเขียนเรื่องการออกแบบ joomla 1.5 template design ก็เลยนั่งอาน ๆ ก็ ออ ๆ เออ มันเปนอยางนี้ ตองเอาตรงนี้มาใส ตรงนั้น เอาตรงนั้นไปใสจะเปนอยางนี้ อืม ๆ พอได ๆ ก็เลยเอามาเลาสูกันฟง เอาละโมมาก็มาก มาดูกอนควรจะมีพื้นฐาน อะไรบางสําหรับการที่จะออกแบบ joomla 1.5 template ไดนี่ ไมตองเอาเกงนะครับ (หรือจะเกงก็ไดไมวากัน) อันที่จริง จะไดคยุ กันรูเรื่องไงครับวาที่ผมสื่อไปนี้มันคืออะไร พื้นฐานที่ควรมี 1.ความรูพื้นฐานดาน HTML, XHTML 2.ความรูพื้นฐานดาน php 3.ความรูพื้นฐานดาน CSS แนะนําเว็บศึกษาเรื่อง css ครับ http://www.divland.com/blog/ หวังเปนอยางยิ่งวา เอกสารฉบับนี้จะเปนประโยชนแกผูที่สนใจศึกษาการสราง joomla template ผูจัดทํามิไดหวัง ผลทางการคา แตอยางใด และไมสงวนลิขสิทธิ์ สําหรับขอความ รูปประกอบ ในทุกสวนของเอกสารฉบับนี้ หากผูใ ด ตองการนําไปเผยแพรตอ ก็สามารถทําได แตขอใหระบุแหลงที่มาของเอกสารนี้
เริ่มตน พื้นฐานที่ควรมี 1.ความรูพื้นฐานดาน HTML, XHTML 2.ความรูพื้นฐานดาน php 3.ความรูพื้นฐานดาน CSS แนะนําเว็บศึกษาเรื่อง css ครับ http://www.divland.com/blog/ 4.การใชงานโปรแกรม Dreamweaver หรือโปรแกรมอื่น ๆ สําหรับออกแบบเว็บเพจ 5.การใชงานโปรแกรม editor สําหรับแกไขโคด เชน edit plus, rapid CSS 6.การใชงานโปรแกรม photo shop ใชในการตกแตงรูปภาพ โปรแกรมที่จาํ เปนตองใช 1.edit plus, rapid CSS 2.photoshop 3.Macromedia Dreamweaver (เดี๋ยวนี้เขาเปลี่ยนเปน adobe แลวมั้ง) 4.โปรแกรมเบราเซอร Mozilla Firefox, Internet Explorer 6, 7, 8 เอาไวทดสอบ หนาเว็บเพจ กอนอื่นก็ตองมีไฟลพื้นฐานที่ตองมีกอนก็คือ สามารถดาวนโหลด template ตัวอยางในเอกสารนี้ไดที่ http://cid2e42788f51f66ec7.skydrive.live.com/self.aspx/.Public/Templates/ex/Template-ex.zip
Joomla 1.5 Core Template Files - templateName/index.php - templateName/templateDetails.xml - templateName/template_thumbnail.png - templateName/images/… /* สําหรับเก็บไฟลรูปที่ใชกับ template - templateName/css/… /* สําหรับเก็บไฟล css
ไฟล template_thumbnail.png สําหรับแสดงรูปยอแบบนีค้ รับ โคดพื้นฐานทีต่ องมีในไฟล index.php
1 <?php 2 defined('_JEXEC') or die('Restricted access'); 3 ?> 4 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 5 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 6 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang=" 7 <?php echo $this->language; ?>"> 8 <head> 9 <jdoc:include type="head" /> 10 11 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/system/css/system.css" 12 type="text/css" /> 13 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/system/css/general.css" 14 type="text/css" /> 15 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?> 16 /css/template.css" type="text/css" />
</head> <body> </body> </html> Template Modules (& code to call modules) สําหรับเรียกวางตําแหนงโมดูล 1 <jdoc:include type="modules" name="user1" style="xhtml" /> 2 <jdoc:include type="modules" name="user2" style="xhtml" /> 3 <jdoc:include type="modules" name="user3" style="xhtml" /> 4 <jdoc:include type="modules" name="user4" style="xthml" /> 5 <jdoc:include type="modules" name="user5" style="xthml" /> 6 <jdoc:include type="modules" name="user6" style="xthml" /> 7 <jdoc:include type="modules" name="user7" style="xthml" /> 8 <jdoc:include type="modules" name="top" style="xhtml" /> 9 <jdoc:include type="module" name="breadcrumbs" style="none" /> 10 <jdoc:include type="component" /> <!-- Main Content --> 11 <jdoc:include type="modules" name="footer" style="none" /> 12 <jdoc:include type="modules" name="debug" style="none" /> การใสคําสั่งโหลดโมดูลก็จะเปนประมาณนี้ 1 <?php if ($this->countModules('user1')) : ?> 2 <jdoc:include type="modules" name="user1" style="xhtml" /> 3 <?php endif; ?> 4 templateDetails.xml 1 <?xml version="1.0" encoding="utf-8"?> 2 <install version="1.5.1" type="template"> 3 <name>templateName</name> 4 <creationDate>Month Date Year</creationDate> 5 <author>Authors Name</author> 6 <copyright>GPL</copyright> 7 <authorEmail> 8 name@mySite.com </authorEmail> 9 <authorUrl>www.mySite.ca</authorUrl>
10 <version>1.0</version> 11 <description>Brief description of template design here</description> 12 <files> 13 <filename>index.php</filename> 14 <filename>templateDetails.xml</filename> 15 <filename>template_thumbnail.png</filename> 16 <filename>images/logo.gif</filename> 17 <filename>images/header.jpg</filename> 18 <filename>css/template.css</filename> 19 </files> 20 <positions> 21 <position>user1</position> 22 <position>top</position> 23 <position>left</position> 24 <position>banner</position> 25 <position>right</position> 26 <position>footer</position> 27 </positions> </install>
สําหรับตรวจสอบไฟลและบอกพาธสําหรับติดตั้ง
1 <files> 2 <filename>index.php</filename> 3 <filename>templateDetails.xml</filename> 4 <filename>template_thumbnail.png</filename> 5 <filename>images/logo.gif</filename> 6 <filename>images/header.jpg</filename> 7 <filename>css/template.css</filename> 8 </files>
สวนกําหนดตําแหนงโมดูลตาง ๆ 1 <positions> 2 <position>user1</position> 3 <position>top</position> 4 <position>left</position> 5 <position>banner</position> 6 <position>right</position> 7 <position>footer</position> 8 </positions> 9 </install> เริ่มแรกก็มารางแบบกันกอนวาตองการโมดูลในตําแหนงไหนบาง ใชรางงาย ๆ ในกระดาษก็ไดครับ อยางของผมก็ตองการ การวางตําแหนงโมดูลแบบนี้ (อาจจะบูด ๆ เบี้ยว ๆ ไปหนอย)
กอนอื่นก็วางแบบโครงสรางกอนโดยใช <div> ยังไมตองใสคําสั่งโหลดโมดูล แลวใช css เปนตัวกําหนดรูปแบบของ <div> 1 <?php 2 defined('_JEXEC') or die('Restricted access'); 3 ?> 4 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 5 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 6 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang=" 7 <?php echo $this->language; ?>"> 8 <head> 9 <jdoc:include type="head" /> 10 11 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/system/css/system.css" 12 type="text/css" /> 13 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/system/css/general.css" 14 type="text/css" /> 15 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?> 16 /css/template.css" type="text/css" /> 17 </head> 18 <body> 19 20 <a name="top"></a><!--anchor for top--> 21 <div id="mainbody"><!---start mainbody--> 22 23 <div id="user1"> 24 <em> พื้นทีส่ ําหรับแสดงuser1</em> 25 </div><!---end user1--> 26 27 <div id="header"> 28 <em> พื้นทีส่ ําหรับแสดง head</em> 29 </div><!---end header--> 30 31 <div id="user2">
32 <em>user2</em> 33 </div><!---end user2--> 34 35 <div id="user3"> 36 <em>user3</em> 37 </div><!---end user3--> 38 39 40 41 <div id="content"> 42 <em>main content พื้นที่สําหรับแสดงบทความในหนา front page</em> 43 </div><!---end content--> 44 45 <div id="breadcrumbs"> 46 <em>breadcrumbs</em> 47 </div><!---end breadcrumbs--> 48 49 <div id="user4"> 50 <em>user4</em> 51 </div><!---end user4--> 52 53 <div id="user5"> 54 <em>user5</em> 55 </div><!---end user5--> 56 57 <div id="user6"> 58 <em>user6</em> 59 </div><!---end user6--> 60 61 <div id="footer1"> 62 <div id="user7"> 63 <em>user7</em> 64 </div><!---end user7--> 65 66 <div id="footer">
67 <em>footer</em> 68 </div><!---end footer--> 69 70 </div> 71 </div><!---end mainbody--> <div id="debug"> <em>debug</em> </div><!---end footer--> </body> </html> ไฟล template.css แบบวางโครงรางไวกอน 1 /*////////// GENERAL //////////*/ 2 body { 3 border: 1px solid #008080; อันนี้จะมีในทุกบรรทัดคําสั่งเพื่อใหแสดงแสดงใหเห็นขอบเขตของขอมูล 4 margin: 0 auto; 5 min-width: 750px; 6 max-width: 960px; 7 height: 0 auto; 8} 9 10 /*////////// TYPEOGRAPHY //////////*/ 11 h1, h4 { 12 font-family: Georgia, Times, serif; 13 } 14 15 h2, h3{ 16 17 font-family: "Trebuchet MS", Arial, Helvetica, sans-serif; 18 } 19 20 h1 { 21 font-size: 32px; 22 } 23
24 h2 { 25 font-size: 22px; 26 } 27 28 h3 { 29 font-size: 16px; 30 } 31 32 h4 { 33 font-size: 14px; 34 } 35 36 p { 37 margin-bottom: 18px; 38 } 39 40 41 a { 42 text-decoration: none; 43 font-weight: bold; 44 } 45 46 a:hover { 47 text-decoration: underline; 48 } 49 50 a:visited {} 51 52 /*////////// HEADERS //////////*/ 53 #header { 54 border: 1px solid #000000; 55 padding: 3px; 56 margin: 5px; 57 height: 0 auto; 58
59 } 60 61 /*////////// CONTENT //////////*/ 62 #content { 63 border: 1px solid #FF00FF; 64 margin-top: auto; 65 margin: 2% 66 67 } 68 69 #mainbody { 70 border: 1px solid #ff0000; 71 margin: 5px; 72 /*padding-top: 250px;*/ 73 74 } 75 76 #user1 { 77 border: 1px solid #00ffff; 78 margin: 5px; 79 } 80 81 #user2 { 82 border: 1px solid #ff0000; 83 margin: 5%; 84 min-width: 375px; 85 max-width: 480px; 86 height: 0 auto; 87 float: left; 88 margin-bottom: auto; 89 } 90 91 #user3 { 92 border: 1px solid #ff0000; 93 margin: 5%;
94 min-width: 375px; 95 max-width: 480px; 96 height: 0 auto; 97 float: left; 98 margin-bottom: auto; 99 } 100 101 #user4 { 102 border: 1px solid #660000; 103 margin: 5px; 104 height: 0 auto; 105 float: left; 106 } 107 108 #user5 { 109 border: 1px solid #660000; 110 margin: 5px; 111 height: 0 auto; 112 float: left; 113 } 114 115 #user6 { 116 border: 1px solid #660000; 117 margin: 5px; 118 height: 0 auto; 119 float: left; 120 121 } 122 123 #user7 { 124 border: 1px solid #009900; 125 margin: 10px; 126 height: 10%; 127 128
129 } 130 131 #breadcrumbs { 132 border: 1px solid #CC0033; 133 height: 33px; 134 margin: 5px; 135 padding-left: 32px; 136 padding-top: 8px; 137 background: url(../images/homei.gif) 0 0 no-repeat; 138 } 139 140 /*////////// SIDEBARS //////////*/ 141 142 /*////////// NAV //////////*/ 143 144 145 /*////////// FORMS //////////*/ 146 147 148 /*////////// FOOTER //////////*/ 149 #footer { 150 border: 1px solid #009900; 151 margin: 10px; 152 height: 10%; 153 154 } 155 156 #footer1 { 157 border: 1px solid #009900; 158 margin: 5px; 159 margin-top: 50px 160 } 161 162 #footer2 { 163 border: 1px solid #000000;
164 margin: 5px; 165 166 } 167 168 #debug { 169 border: 1px solid #cc0033; 170 clear:both; 171 } 172 173 /*////////// IMAGES //////////*/
ก็จะไดหนาตาแบบนี้
ในตอนแรกกลาวถึงการรางโครงรางและวางโครงสรางใหเห็นวา template มีหนาตาอยางไร โดยยังไมใสคําสั่งสําหรับ โหลดโมดูล และทําการกําหนดคา css ใหไดขนาดโครงสรางตามตองการ
จะเห็นวาการกําหนดหนาตาของ template นั้น ขึ้นอยูก ับการออกแบบใน css เปนสวนใหญ คราวนีก้ ็ทําการใสคําสั่ง สําหรับโหลดโมดูล ใหกับ template คําสั่งที่จะใช jdoc:include รูปแบบ Component <jdoc:include type="component" /> องคประกอบนี้ควรจะปรากฏในองคประกอบ <body> ของ template เพื่อแสดงเนื้อหา/บทความของ เว็บไซต รูปแบบ Head 1 <jdoc:include type="head" /> 2 องคประกอบนี้ควรจะปรากฏในองคประกอบ <head> ของ template เพื่อแสดงลักษณะสคริปตและองคประกอบของ meta ที่ใชเชื่อมโยงกับเพจปจจุบัน รูปแบบ Installation 1 <jdoc:include type="installation" /> องคประกอบนี้จะใชเฉพาะในการติดตั้ง joomla template ใชแสดงเนื้อหาหลักขั้นตอนการติดตั้ง รูปแบบ Message 1 <jdoc:include type="message" /> 2 องคประกอบนี้ควรจะปรากฏในองคประกอบ <body> ของ template เพื่อใชแสดงขอความผิดพลาดและขอความในคํา ขออื่น ๆ สไตล CSS สําหรับขอความ ระบบสามารถพบไดใน template\system\css\system.css รูปแบบ Module 1 <jdoc:include type="module" name="breadcrumbs" /> 2 <jdoc:include type="module" name="menu" /> 3 <jdoc:include type="module" name="submenu" style="rounded" id="submenu-box" /> องคประกอบนี้แสดงผลโมดูลเดียว โดยอางอิงชื่อโมดูล
รูปแบบ Modules 1 <jdoc:include type="modules" name="debug" /> 2 <jdoc:include type="modules" name="icon" /> 3 <jdoc:include type="modules" name="left" style="rounded" /> 4 <jdoc:include type="modules" name="left" style="xhtml" /> 5 <jdoc:include type="modules" name="right" style="xhtml" /> 6 <jdoc:include type="modules" name="status" /> 7 <jdoc:include type="modules" name="syndicate" /> 8 <jdoc:include type="modules" name="title" /> 9 <jdoc:include type="modules" name="toolbar" /> 10 <jdoc:include type="modules" name="top" /> 11 <jdoc:include type="modules" name="top" style="xhtml" /> 12 <jdoc:include type="modules" name="user1" style="xhtml" /> 13 <jdoc:include type="modules" name="user2" style="xhtml" /> 14 <jdoc:include type="modules" name="user3" /> 15 <jdoc:include type="modules" name="user4" /> คําสั่งแทรกโมดูลมาแสดงยังพื้นที่นั้น ๆ แยกเปนพืน้ ที่ ๆ แตกตางกันไปตาม template และตําแหนงที่กําหนดในไฟล templatedetails.xml การใชงาน jdoc:include's name="[template position name]" ทําการแทรกตําแหนงโมดูล (module position) 1 ตําแหนง 1 <?php if ($this->countModules('user1')) : ?> 2 <div id="user1"> ใช div ครอบไว ปรับแตงคา id ของ div ที่ template.css 3 <jdoc:include type="modules" name="user1" style="xhtml" /> 4 </div><!---end user1--> 5 <?php endif; ?> วางตําแหนงโมดูล (module position) 2 หรือ 3 ตําแหนง 1 <?php if ($this->countModules('user2 or user3')) : ?> 2 <?php if ($this->countModules('user2')) : ?> 3 <div id="user2"> 4 <jdoc:include type="modules" name="user2" style="xhtml" /> 5 </div><!---end user2--> 6 <?php endif; ?> 7 8 <?php if ($this->countModules('user3')) : ?>
9 <div id="user3"> <jdoc:include type="modules" name="user3" style="xhtml" /> 10 11 </div><!---end user3--> 12 <?php endif; ?> 13 <?php endif; ?>
คราวนี้ผมก็ใส ตําแหนงโมดูล (module position) ตามรูปแบบที่ไดรางไวใน
1 <?php 2 defined('_JEXEC') or die('Restricted access'); 3 ?> 4 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 5 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 6 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang=" 7 <?php echo $this->language; ?>" lang="<?php echo $this->language; ?>"> 8 <head> 9 <jdoc:include type="head" /> 10 11 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/system/css/system.css" 12 type="text/css" /> 13 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/system/css/general.css" 14 type="text/css" /> 15 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/ 16 <?php echo $this->template ?>/css/template.css" type="text/css" /> 17 </head> 18 <body> 19 20 <a name="top"></a><!--anchor for top--> 21 <div id="mainbody"><!---start mainbody--> 22 23 <?php if ($this->countModules('user1')) : ?> 24 <div id="user1"> 25 <jdoc:include type="modules" name="user1" style="xhtml" />
26 </div><!---end user1--> 27 <?php endif; ?> 28 29 <?php if ($this->countModules('header')) : ?> 30 <div id="header"> 31 <jdoc:include type="modules" name="header" style="xhtml" /> 32 </div><!---end header--> 33 <?php endif; ?> 34 35 <?php if ($this->countModules('user2 or user3')) : ?> 36 <?php if ($this->countModules('user2')) : ?> 37 <div id="user2"> 38 <jdoc:include type="modules" name="user2" style="xhtml" /> 39 </div><!---end user2--> 40 <?php endif; ?> 41 42 <?php if ($this->countModules('user3')) : ?> 43 <div id="user3"> 44 <jdoc:include type="modules" name="user3" style="xhtml" /> 45 </div><!---end user3--> 46 <?php endif; ?> 47 <?php endif; ?> 48 49 <div id="content"> 50 <jdoc:include type="message" /> 51 52 <jdoc:include type="component" /> 53 54 </div><!---end content--> 55 56 <div id="breadcrumbs"> 57 <jdoc:include type="modules" name="breadcrumb" style="raw" /> 58 </div><!---end breadcrumbs--> 59 60 <?php if ($this->countModules('user4 or user5 or user6')) : ?>
61 <?php if ($this->countModules('user4')) : ?> 62 <div id="user4"> 63 <jdoc:include type="modules" name="user4" style="xhtml" /> 64 </div><!---end user4--> 65 <?php endif; ?> 66 67 <?php if ($this->countModules('user5')) : ?> 68 <div id="user5"> 69 <jdoc:include type="modules" name="user5" style="xhtml" /> 70 </div><!---end user5--> 71 <?php endif; ?> 72 73 <?php if ($this->countModules('user6')) : ?> 74 <div id="user6"> 75 <jdoc:include type="modules" name="user6" style="xhtml" /> 76 </div><!---end user6--> 77 <?php endif; ?> 78 <?php endif; ?> 79 80 81 <div id="footer1"> 82 <div id="user7"> 83 <jdoc:include type="modules" name="user7" style="xhtml" /> 84 </div><!---end user7--> 85 86 <div id="footer"> 87 <jdoc:include type="modules" name="footer" style="none" /> 88 </div><!---end footer--> 89 90 </div> 91 </div><!---end mainbody--> 92 <div id="debug"> <jdoc:include type="modules" name="debug" style="none" /> </div><!---end footer-->
</body> </html>
template.css 1 /*////////// GENERAL //////////*/ 2 body { 3 border: 1px solid #008080; 4 margin: 0 auto; 5 min-width: 750px; 6 max-width: 960px; 7 height: 0 auto; 8} 9 10 /*////////// TYPEOGRAPHY //////////*/ 11 h1, h4 { 12 font-family: Georgia, Times, serif; 13 } 14 15 h2, h3{ 16 17 font-family: "Trebuchet MS", Arial, Helvetica, sans-serif; 18 } 19 20 h1 { 21 font-size: 32px; 22 } 23 24 h2 { 25 font-size: 22px; 26 } 27 28 h3 { 29 font-size: 16px; 30 }
31 32 h4 { 33 font-size: 14px; 34 } 35 36 p { 37 margin-bottom: 18px; 38 } 39 40 41 a { 42 text-decoration: none; 43 font-weight: bold; 44 } 45 46 a:hover { 47 text-decoration: underline; 48 } 49 50 a:visited {} 51 52 /*////////// HEADERS //////////*/ 53 #header { 54 /* border: 1px solid #000000; */ 55 padding: 3px; 56 margin: 5px; 57 height: 0 auto; 58 59 } 60 61 /*////////// CONTENT //////////*/ 62 #content { 63 /* border: 1px solid #FF00FF; */ 64 margin-top: auto; 65 margin: 2%
66 67 } 68 69 #mainbody { /*border: 1px solid #ff0000; */ 70 71 margin: 5px; 72 /*padding-top: 250px;*/ 73 74 } 75 76 #user1 { 77 /* border: 1px solid #00ffff; */ 78 margin: 5px; 79 } 80 81 #user2 { 82 /*border: 1px solid #ff0000; */ 83 margin: 5%; 84 min-width: 375px; 85 max-width: 480px; 86 height: 0 auto; 87 float: left; 88 margin-bottom: auto; 89 } 90 91 #user3 { 92 /*border: 1px solid #ff0000;*/ 93 margin: 5%; 94 min-width: 375px; 95 max-width: 480px; 96 height: 0 auto; 97 float: left; 98 margin-bottom: auto; 99 } 100
101 #user4 { border: 1px solid #660000;*/ 102 /* 103 margin: 5px auto; 104 height: 0 auto; 105 float: left; 106 } 107 108 #user5 { 109 /* border: 1px solid #660000;*/ 110 margin: 5px auto; 111 height: 0 auto; 112 float: left; 113 } 114 115 #user6 { 116 /*border: 1px solid #660000;*/ 117 margin: 5px auto; 118 height: 0 auto; 119 float: left; 120 121 } 122 123 #user7 { 124 /* border: 1px solid #009900; */ 125 margin: 10px; 126 height: 10%; 127 128 } 129 130 #breadcrumbs { 131 /* border: 1px solid #CC0033;*/ 132 height: 33px; 133 margin: 5px; 134 padding-left: 32px; 135 padding-top: 8px;
136 background: url(../images/homei.gif) 0 0 no-repeat; 137 } 138 139 /*////////// SIDEBARS //////////*/ 140 141 /*////////// NAV //////////*/ 142 143 144 /*////////// FORMS //////////*/ 145 146 147 /*////////// FOOTER //////////*/ 148 #footer { border: 1px solid #009900; */ 149 /* 150 margin: 10px; 151 height: 10%; 152 153 } 154 155 #footer1 { 156 /*border: 1px solid #009900; */ 157 margin: 5px; 158 margin-top: 50px 159 } 160 161 #footer2 { 162 /*border: 1px solid #000000;*/ 163 margin: 5px; 164 165 } 166 167 #debug { 168 /* border: 1px solid #cc0033; */ 169 clear:both; 170 }
171 172 /*////////// IMAGES //////////*/ 173 สวนคา css ก็ปรับแตงเรียบรอยแลวในตอนที่ 1 ก็ไมตองปรับอะไรมากมายเพียงแคเอาเสนออกแคนั้นเอง /*border: 1px solid #cc0033; */ โดยใชแท็กคอมเมนตปด ไว คราวนี้กล็ อง preview ดู เขาทาแคไหน
จากที่ไดออกแบบโครงสรางเรียบรอยแลวคราวนี้ก็มาใสลวดลาย ให template กันเพือ่ ใหเกิดความสวยงาม
จาก template เปลา ๆ หนาขาว ๆ ก็จะเติมพื้นหลังใหกับ template โดยใชรูป โดยการกําหนดที่ <body> โดยใส id ของ css ลงไป <body id="page_bg"> ตั้งชื่อเปน page_bg css กําหนดเปน ออ เกือบลืม เอารูป ใสไวในโฟลเดอร images ดวยนะครับ ชื่อของไฟลรูปคือ page_bg.png 1 #page_bg { 2 background: #fff url(../images/page_bg.png) repeat-x top left; 3} สวยขึ้นมาหนอย พื้นหลังเปนสีเทา ๆ
กําหนดพื้นหลังเปนอยางอื่นก็ไดนะครับ เชนกําหนดพืน้ หลังเปนสี
1 #page_bg { 2 background: #000000; <---เปลี่ยนเปนโคดสี 3}
จากนั้นก็จะใสรูปสักหนอย โดยเอารูปดานลางนี้ใสที่บริเวณ header คลุมไปถึง user1
ชื่อรูป headerimg.jpg ขนาด 960*340 px เชนเดิมก็เอารูปนี้ใสไวในโฟลเดอร images
โดยจะเอา <div id="header1"> </div> ครอบสวน header, user1 ไว 1 <div id="header1"> 2 <?php if ($this->countModules('user1')) : ?> 3 <div id="user1"> 4 <jdoc:include type="modules" name="user1" style="xhtml" /> 5 </div><!---end user1--> 6 <?php endif; ?> 7 8 9 <?php if ($this->countModules('header')) : ?> 10 <div id="header"> 11 <jdoc:include type="modules" name="header" style="xhtml" /> 12 </div><!---end header--> 13 <?php endif; ?> 14 </div> <!---end header1--->
เขียน css "header1" เพิ่ม ดังนี้ 1 #header1 { position:relative; 2 margin:0 auto; 3 height:301px; 4 width:744px; 5 padding:64px 0 0 216px; 6 background: transparent url(../images/headerimg.jpg) no-repeat top center; 7 8}
ก็จะออกมาเปนแบบนี้ครับ
หัวโลง ๆ แบบนี้ไมดีแน เติมตนคริสมาส เขาไปที่หัวเว็บสักหนอย โดยใชรูปนี้
โดยการเพิ่ม <div id="headerimage"></div> เขาไปใตแท็ก <div id="header1"> เปนแบบนี้ <div id="header1"> <div id="headerimage"></div> <------ที่ไดเพิ่มเขาไป <?php if ($this->countModules('user1')) : ?> <div id="user1"> <jdoc:include type="modules" name="user1" style="xhtml" /> </div><!---end user1--> <?php endif; ?> <?php if ($this->countModules('header')) : ?> <div id="header"> <jdoc:include type="modules" name="header" style="xhtml" /> </div><!---end header--> <?php endif; ?> </div><!---end header1--->
เขียน css "headerimage" เพิม่ ดังนี้
1 #headerimage { 2 position:absolute; 3 top:0; 4 left:0; 5 width:216px; 6 height:365px; 7 background: transparent url(../images/img.jpg) no-repeat top left; 8}
เริ่มดูดีขึ้นมาทันที
เพื่อใหรูปสามารถเปนลิ้งกเพือ่ กลับสูหนาแรกไดดว ยก็ใส <a href="/joomla/index.php" title="กลับสูหนาแรก"></a> ครอบ <div id="headerimage"></div>
1 <a href="index.php" title="กลับสูหนาแรก"><div id="headerimage"></div></a>
ในสวน footer ดูโลง ๆ ใสเสนไปซักหนอย โดยใชรูปนี้
เหมือนเดิมครับใช <div> ครอบ footer ไว 1 <div id="footer_holder"> <jdoc:include type="modules" name="footer" style="none" /> 2 3 </div><!---end footer_holder--->
คราวนี้ ผมจะเอาเสนที่ระบุขอบเขตของพื้นที่ออก border: 1px solid #008080; ที่อยูในสวนตาง ๆ ของ css จากนี้กใ็ สเสนของที่ main content โดยใชรูปภาพที่ทําไวแลว เปนลักษณะเสนเล็ก ๆ ดังในรูปดานลาง
โดยใส <div id="maincolumn_full"> ครอบ <jdoc:include type="component" /> ไว 1 <div id="maincolumn_full"> <jdoc:include type="message" /> 2 3 <jdoc:include type="component" /> 4 </div> เขียน css maincolumn_full โดยใชรูปเสนเล็ก ๆ 1 #maincolumn_full { 2 width:960px; 3 margin:0 0 10px 0; 4 background: transparent url(../images/content_m_full.gif) repeat-y top center; 5} จากนั้นก็ใสเสนลอมรอบ main content ไว ซาย ขวา บน ลาง 1 <div id="maincolumn_full"> 2 <div class="top_full"> 3 <div class="bottom_full"> 4 5 </div> 6 7 </div> 8 </div>
<jdoc:include type="message" /> <jdoc:include type="component" />
เขียน css ดังนี้
1 .top_full { 2 background: transparent url(../images/content_t_full.gif) no-repeat top center; 3} 4 5 .bottom_full { 6 padding: 10px; 7 background: transparent url(../images/content_b_full.gif) no-repeat bottom center; 8} ก็จะไดผลดังนี้
รูปแบบ template แบบเต็ม ๆ หนา ขนาดความกวางสูงสุด 960px
เอาเปนวา วางรูปแบบตางเสร็จเรียบรอยหมดแลว คราวนี้ก็ลอง enable โมดูลใหอยูต ามตําแหนงตาง ๆ บน template ให หมดแลวดูวา ผิดเพี้ยนหรือไม ถาไมไดตามตองการใหไปปรับแกที่ css เอา ในการดูตําแหนง module position ของ joomla ใหเติม ?tp=1 ตอทาย url ลงไป ก็จะเห็นตําแหนง module ทั้งหมดบนหนา template เชน http://www.you.com/?tp=1
คราวนี้ก็ลอง preview ดู กับหลาย ๆ เบราเซอร วาการแสดงผลเปนปกติหรือไม ดังรูปบน เปนการ ดูใน firefox ปกติดี
สวนอันนี้เปนการดูใน IE6 (Internet Explorer 6) จะเห็นวาในสวนของ content นั้น ชิดซายอยู สวน head นั้นอยูที่เดิม วิธีแกไขคือ สรางไฟล CSS อีกชุดหนึ่งเอาไวใชกับ เฉพาะ ie6 โดยเฉพาะ โดยการก็อปป โคด css อันเดิมที่ใช (template.css) แลวนํามาตั้งชื่อใหม เปน ie6.css
แลวเพิ่มโคดนีล้ งไปใน index.php ของ template ในแท็ก <head> เพื่อเรียก css ตัวนีข้ ึ้นมาเฉพาะเมื่อเปดกับ ie6 1 <!--[if lte IE 6]> 2 <link href="/joomla/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?> 3 /css/ie6.css" rel="stylesheet" type="text/css" /> <![endif]-->
ก็จะเปนแบบนี้ 1 <?php 2 defined('_JEXEC') or die('Restricted access'); 3 ?> 4 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org 5 /TR/xhtml1/DTD/xhtml1-transitional.dtd"> 6 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang=" 7 <?php echo $this->language; ?>"> 8 <head> 9 <jdoc:include type="head" /> 10 11 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/system/css/system.css" 12 type="text/css" /> 13 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/system/css/general.css" 14 type="text/css" /> 15 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?> 16 /css/template.css" type="text/css" /> 17 <?php if ($this->countModules('user1')): ?> 18 <?php if ($this->params->get('user1Type') == 'css'): ?> 19 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/css/sosdmenu.css" type="text/css" /> 20 <script language="javascript" type="text/javascript" src="/joomla/<?php echo $this->template ?> 21 /js/cssmenu.js"></script> 22 <?php else: ?> 23 <link rel="stylesheet" href="/joomla/<?php echo $this->baseurl ?>/templates/<?php echo $this->template ?> 24 /css/sosdmenu.css" type="text/css" /> 25 <script language="javascript" type="text/javascript" src="/joomla/<?php echo $this->template ?>/templates/ 26 <?php echo $this->template ?>/js/moomenu.js"></script> 27 <?php endif; ?> 28 <?php endif; ?> 29 <!--[if lte IE 6]> 30 <link href="/joomla/<?php echo $this->baseurl ?>/templates/<?php echo $this->template 31 ?> 32 /css/ie6.css" rel="stylesheet" type="text/css" /> 33 <![endif]--> 34
35 </head> 36 <body id="page_bg"> 37 38 <a name="top"></a> 39 40 <div id="mainbody"> 41 <div id="header1"> 42 <div class="logo"><a href="/joomla/index.php"><?php echo $mainframe->getCfg('sitename') ;?></a></div> 43 <a href="/joomla/index.php" title="กลับสูหนาแรก"><div id="headerimage"></div></a> 44 <?php if ($this->countModules('user1')) : ?> 45 <div id="user1"> 46 <div id="mainnav"> 47 <jdoc:include type="modules" name="user1" style="xhtml" /> 48 </div> 49 </div> 50 <?php endif; ?> 51 52 53 <?php if ($this->countModules('header')) : ?> 54 <div id="header"> 55 <jdoc:include type="modules" name="header" style="xhtml" /> 56 </div> 57 <?php endif; ?> 58 </div> 59 <?php if ($this->countModules('user2 or user3')) : ?> 60 <?php if ($this->countModules('user2')) : ?> 61 <div id="user2"> 62 <jdoc:include type="modules" name="user2" style="xhtml" /> 63 </div> 64 <?php endif; ?> 65 66 <?php if ($this->countModules('user3')) : ?> 67 <div id="user3"> 68 <jdoc:include type="modules" name="user3" style="xhtml" /> 69 </div>
70 <?php endif; ?> 71 <?php endif; ?> 72 73 <div id="maincolumn_full"> 74 <div class="top_full"> 75 <div class="bottom_full"> 76 <jdoc:include type="message" /> 77 <?php if($this->params78 >get('showComponent')) : ?> 79 <jdoc:include type="component" /> 80 <?php endif; ?> 81 </div> 82 </div> 83 </div> 84 <div id="userall"> 85 <div id="breadcrumbs"> 86 <jdoc:include type="modules" name="breadcrumb" style="raw" /> 87 </div> 88 </div> 89 <div id="userall"> 90 <table width="980"> 91 <tr> 92 <?php if ($this->countModules('user4 or user5 or user6')) : ?> 93 <?php if ($this->countModules('user4')) : ?> 94 <td> 95 <jdoc:include type="modules" name="user4" style="raw" 96 /> 97 </td> 98 <?php endif; ?> 99 100 <?php if ($this->countModules('user5')) : ?> 101 <td> 102 <jdoc:include type="modules" name="user5" style="raw" 103 /> 104 </td>
105 <?php endif; ?> 106 107 <?php if ($this->countModules('user6')) : ?> 108 <td> 109 <jdoc:include type="modules" name="user6" style="raw" 110 /> 111 </td> 112 <?php endif; ?> 113 <?php endif; ?> 114 </tr> 115 </table> 116 </div> 117 118 <div id="userall"> 119 <div id="user7"> 120 <jdoc:include type="modules" name="user7" style="xhtml" /> 121 </div> 122 </div> <div id="userall"> <div id="footer"> <div id="footer_holder"> Powered by <a href="http://www.joomlathaiclub.com/" target="_blank">Joomla!</a> and designed by joomlathaiclub <a href="http://www.joomlathaiclub.com/" target="_blank">joomla thai</a> </div> </div> </div> </div> <div id="userall"> <div id="debug"> <jdoc:include type="modules" name="debug" style="none" /> </div> </div> </body> </html>
css ของ ie6 1 /*////////// GENERAL //////////*/ 2 body { 3 margin: 0 auto; 4 height: 0 auto; 5 6 font-family: Tahoma, Verdana, Arial, sans-serif; 7 line-height: 1.3em; 8 font-size: 11px; 9 color: #666666; 10 background: #fff; 11 } 12 13 /*////////// TYPEOGRAPHY //////////*/ 14 h1, h4, h2, h3{ 15 font-family: Georgia, Times, serif; 16 } 17 18 h1, h2, h3, h4, h5, h6, 19 h1 a, h2 a, h3 a, h4 a, h5 a, h6 a 20 h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover 21 h1 a:visited, h2 a:visited, h3 a:visited, h4 a:visited, h5 a:visited, h6 a:visited 22 { 23 font-weight: normal; 24 font-style: normal; 25 text-decoration: none; 26 } 27 28 a img, a img.preview { 29 border: none; 30 text-decoration: none; 31 } 32 33 /*////////// HEADERS //////////*/ 34
35 .logo { 36 position:absolute; 37 top:26px; 38 right:0; 39 width:800px; 40 height:25px; 41 padding:0; 42 margin:0; 43 overflow:hidden; 44 text-align:right; 45 } 46 47 48 49 #page_bg { 50 background: #fff url(../images/page_bg.png) repeat-x top left; 51 } 52 53 #header { 54 padding-top: 118px; 55 margin: 5px; 56 height: 0 auto; 57 58 } 59 60 #header1 { 61 position:relative; 62 margin:0 auto; 63 height:301px; 64 width:744px; 65 padding:64px 0 0 216px; 66 background: transparent url(../images/headerimg.jpg) no-repeat top center; 67 } 68 69 #headerimage {
70 position:absolute; 71 top:0; 72 left:0; 73 width:216px; 74 height:365px; 75 background: transparent url(../images/img.jpg) no-repeat top left; 76 } 77 78 /*////////// CONTENT //////////*/ 79 #content { 80 margin-top: auto; 81 margin: 2% 82 83 } 84 85 #mainbody { 86 margin: 5px; 87 } 88 89 #user1 { 90 margin: 0 auto; 91 } 92 93 #user2 { 94 margin: 0 0 0 14%; 95 min-width: 375px; 96 max-width: 480px; 97 height: 0 auto; 98 float: left; 99 margin-bottom: 2%; 100 } 101 102 #user3 { 103 margin: 0 0 0 14%; 104 min-width: 375px;
105 max-width: 480px; 106 height: 0 auto; 107 float: left; 108 margin-bottom: 2%; 109 } 110 111 #userall { 112 margin: 0 0 0 14%; 113 } 114 115 #breadcrumbs { 116 height: 33px; 117 margin: 5px; 118 width:770px; 119 padding-left: 32px; 120 padding-top: 8px; 121 background: url(../images/homei.gif) 0 0 no-repeat; 122 } 123 124 /*////////// SIDEBARS //////////*/ 125 126 /*////////// NAV //////////*/ 127 #maincolumn_full { 128 width:960px; 129 margin: 0 0 0 14%; 130 background: transparent url(../images/content_m_full.gif) repeat-y top center; 131 } 132 133 .top_full { 134 background: transparent url(../images/content_t_full.gif) no-repeat top center; 135 } 136 137 .bottom_full { 138 padding: 10px; 139 background: transparent url(../images/content_b_full.gif) no-repeat bottom center;
140 } 141 142 /*////////// FORMS //////////*/ 143 144 145 /*////////// FOOTER //////////*/ 146 #footer { 147 width:960px; 148 height:44px; 149 text-align:center; 150 margin:0 0 20px; 151 background: transparent url(../images/footer.png) no-repeat top center; 152 153 } 154 155 #footer_holder { 156 height:26px; 157 width:936px; 158 color: #fff; 159 font-weight:400; 160 line-height: 25px; 161 padding:0 12px; 162 margin:0 auto; 163 overflow:hidden; 164 } 165 166 #footer a { 167 color: #fff; 168 font-weight:400; 169 text-decoration: none; 170 } 171 172 173 #footer a:hover { 174 text-decoration:underline;
175 } 176 177 a.footer123:link, a.footer123:visited { 178 color: #000; 179 font-family: Tahoma, Arial, sans-serif; 180 text-decoration: underline; 181 } 182 183 #f123 { 184 text-align: right; 185 width: 100%; 186 margin: 0 auto; 187 font-family: Tahoma, Arial, sans-serif; 188 } 189 .f123 { 190 text-align: right; 191 font-family: Tahoma, Arial, sans-serif; 192 text-decoration: none; 193 } 194 .f123_bg { 195 background:url(../images/123_bg.png); 196 width:134px; 197 height:30px; 198 text-align:center; 199 padding: 0 3px; 200 } 201 .f123_1 { 202 display: block; 203 font-size: 10px; 204 font-family: Tahoma, Arial, sans-serif; 205 color: #666; 206 text-align: left; 207 padding: 0 0 2px 4px; 208 } 209
210 211 a.link_123:link, a.link_123:visited { 212 font-size: 15px; 213 font-family: Tahoma, Verdana,Arial,Helvetica,sans-serif; 214 color: #797979; 215 text-decoration:none; 216 font-weight: 700; 217 } 218 a.link_123:hover { 219 font-size: 15px; 220 font-family: Tahoma, Verdana,Arial,Helvetica,sans-serif; 221 color: #797979; 222 text-decoration:none; 223 font-weight: 700; 224 } 225 226 227 #debug { 228 padding: 2px 229 } /*////////// IMAGES //////////*/
multiple IE โปรแกรมที่บรรจุ Internet Explorer หลาย ๆ เวอรชั่นเอาไวขางใน ทําใหคุณสามารถใช ie หลายๆ เวอรชั่น เพื่อทดสอบเว็บไซตไดในเครื่องเดียวกัน ดูรายละเอียดเพิม่ เติมที่นี่ http://tredosoft.com/Multiple_IE
เมื่อดูในทุกเบราเซอรลงตัวดีแลว จากนั้นก็มาสรางรูปยอ สําหรับ template โดยใชโปรแกรม photoshop ขนาดรูปไมตอง ใหญนักประมาณ 200*150px บันทึกเปนไฟลชื่อ template_thumbnail.png เก็บไวในโฟลเดอรเดียวกัน
จากนั้นก็สรางรายชื่อไฟล วาใน template มีไฟลอะไรมั่ง เพื่อใชในการติดตั้ง แลวทําการบันทึกรายชือ่ ไฟลตาง ๆ ที่มีใน template ไวใน templateDetails.xml
บางทานอาจจะมีไฟลรูปภาพเยอะมาก อาจจะตกหลนในการเก็บรายชื่อ มีเครื่องมือที่ชวยลิสตรายชื่อไฟล ใหก็อปปโคด ดานลางแลว เซฟเปนไฟลชอื่ remove.php
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org 2 /TR/xhtml1/DTD/xhtml1-transitional.dtd"> 3 <html> <head> 4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 5 <title>templateDetails.xml generator REMOVE PRIOR TO PACAKGING!!</title> 6 </head> 7
<body> 8 9 <h2>Remove this file prior to packaging your template!</h2> 10 11 <?php 12 13 $dir="html"; // change this to template directory where files are stored. "." = root. 14 15 if ($dir_list = opendir($dir)){ 16 17 if ($dir == "."){ $dir = ""; 18 }else{ 19 $dir = $dir."/"; 20 }//if/else 21 22 while(($filename = readdir($dir_list)) !== false){ 23 if ($filename != ".DS_Store" && $filename != "." && $filename != ".." && $filename != "remove.php" 24 25 && $filename != "css" && $filename != "html" && $filename != "images" && $filename != "js"){ ?> 26 27 28 &lt;filename&gt;&lt;/filename&gt;<br/> 29 30 <?php }//if 31 32 }//while 33 closedir($dir_list); 34 }//if 35 36 ?> 37 38 </body> </html>
นําไปวางไวในโฟลเดอรของ template จากนั้นก็รนั ไฟลนี้ผานทางเบราเซอร แกไขสวนนีน้ ิดหนอยเพื่อใหเขาไปลิสต รายชื่อไฟลในโฟลเดอรที่ลึกกวา นี้
1 $dir="html"; // change this to template directory where files are stored. "." = root. 2
แกไขที่ "html" ใหเปนชื่อโฟลเดอรที่ตองการจะลิสตรายชื่อไฟล หรือกําหนด เปน (.) จุด เพื่อเปน root โฟลเดอร
ก็จะแสดงผลลิสตรายชื่อไฟลออกมาใหแถมใสแท็กคําสั่งใหอีกตางหากก็ทํา การก็อปปรายชื่อไฟลดงั กลาวมาใสไวใน ไฟล templateDetails.xml
จากนั้นก็ทําการบีบไฟลทั้งหมดใหเปนไฟลซิป (zip)
จากนั้นก็ลองติดตั้งดู
ถาขึ้น Install Template Success ก็แสดงวาผาน ถา error ลองตรวจสอบวาไฟลอะไรขาดไปหรือเปลาครับ จบครับ ขอใหสนุกกับการออกแบบเว็บไซต
tip
การแทรกไฟลแฟลชใหแสดงใน template
1 <div id="flashHeader"> 2 <object data="<?php echo $this->baseurl; ?>/templates/ 3 <?php echo $this->template; ?>/green-flash-sample.swf" 4 type="application/x-shockwave-flash" 5 width="320" 6 height="75" 7 FlashVars="itemID=<?php echo $newItemid;?>"> 8 <param name="movie" value="<?php echo $this->baseurl; ?> 9 /templates/<?php echo $this->template; ?>/green-flash-sample.swf" /> 10 <param name="menu" value="false" /> 11 <param name="FlashVars" value="itemID=<?php echo $newItemid;?>"/> 12 <param name="wmode" value="transparent" /> 13 <param name="quality" value="best" /> 14 </object> css (หรือไมจําเปนตองใช css ก็ได)
1 #flashHeader{ 2 margin: 0; 3 margin-top: 1px; 4 width: 320px; 5 height: 75px; 6} เปลี่ยนตรงชื่อไฟลแฟลช green-flash-sample.swf เปนของคุณเอง กําหนดความกวางความสูงตามใจชอบ