- KhunArt : ขอบคุณครับ
- prommart : «link»
- prommart : ใช้ cb superthum ครับ
- KhunArt : อุ๊ย เพิ่งสังเกตว่า สมาชิกที่ออนไลน์ แสดงเป็นรูป ไม่ใช่อักษร ขอเรียนถามว่าใช้โมดูลอะไรครับ
- numcode : สวัสดีครับ
- hutcomputer : ขอบคุณเว็บนี้ ทำให้ผมเข้าใจปัญหาต่างๆ ได้มากขึ้นครับ
- prommart : อยู่ที่การกำหนดค่าครับ
- guy : jcomment เวลาที่แสดงมันเพี้ยนครับ จะหาตัวสมบูรณ์ได้จากไหน
- chogun91 :

- umeu : kill.sys automatic detection
- pao21944 :

- prommart : สวัสดีครับ
- hangman : แอ้ จำเราได้มะ
- hangman : ดีคับ แวะมาคับ
- padektep :

- sorkrai : ดีคับพี่น้อง
- shishi : สวัสดีค่ะทุกๆคน

- prommart : ถามได้เลยครับ ในเว็บบอร์ดก็ได้ครับ
- spiderman : รบกวนถามได้ไหม
- spiderman : หวัดครับ admin
เฉพาะผู้ลงทะเบียนเท่านั้น






![]() | วันนี้ | 13 |
![]() | เมื่อวาน | 280 |
![]() | สัปดาห์นี้ | 13 |
![]() | เดือนนี้ | 3845 |
![]() | ทั้งหมด | 91280 |
การปรับแต่งและใช้งานเทมเพลตของเว็บนี้
เทมเพลตของเว็บนี้มีคำสั่งที่ตรวจสอบหน้า หรือคอมโพแนนท์ที่เปิด แล้วกำหนดการแสดงจำนวนคอลัมน์ให้เหมาะสม เช่น กำหนดให้แสดงหน้าแรกเป็นสามคอลัมน์, หน้าที่เป็นเนื้อหาเป็นสองคอลัมน์ หรือหน้าของคอมโพแนนท์บางตัวที่ต้องใช้พื้นที่เยอะให้แสดงคอลัมน์เดียวเป็นต้น โดยเราสามารถปรับแต่งเงื่อนไขเพิ่มเติมได้
หากต้องการรู้ว่าในเทมเพลตมีตำแหน่งอะไรอยู่ตรงไหนบ้างให้พิมพ์ index.php?tp=1 ต่อท้ายชื่อเว็บ เช่นของเว็บนี้จะเป็น http://www.thaisolution.net/index.php?tp=1
ตัวอย่างกำหนดการแสดงในเว็บนี้
หน้าแรกแสดงเป็นสามคอลัมน์ ด้านบนมีโดดูลสำหรับแสดงเนื้อหาที่ต้องการให้แสดงหน้า(Front Page)แรกตลอดไม่ตกไปหากเพิ่มเนื้อหามาใหม่ ด้านล่างแสดงโมดูลกระทู้ล่าสุด กระทู้ยอดนิยม ข้อคิดเห็นล่าสุด และบทความแก้ไขล่าสุด โดยจะแสดงในหน้าแรก(Front Page) หน้าหนึ่งเท่านั้นหากผู้ใช้กดไปตั้งแต่หน้าสองจะไม่แสดงอีก
ภาพแสดงโมดูลในตำแหน่ง top (กำหนดให้แสดงในหน้าหนึ่งเท่านั้น)
ภาพแสดงโมดูลในตำแหน่ง bottom (กำหนดให้แสดงในหน้าหนึ่งเท่านั้น) ในภาพจะอยู่ด้านล่างบริเวณที่เป็นสีเหลือง

รูปด้านล่างแสดงการวางตำแหน่งต่าง ๆ ในเทมเพลตของเว็บนี้
ตำแหน่ง user3 จะอยู่บนสุด (ในเว็บนี้ใช้แสดงปุ่มเมนูด้านบน)
ตำแหน่ง header จะอยู่บนตำแหน่ง top จะแสดงในทุกหน้า (ยังไม่ได้ใช้)
ตำแหน่ง footer จะอยู่ถัดจากตำแหน่ง bottom จะแสดงในทุกหน้า (ในเว็บนี้จะแสดง Google Adsense)
ด้านซ้ายมือจะเป็นตำแหน่ง left
ด้านขวามือจะเป็นตำแหน่ง right
การเปลี่ยนภาพหัวเว็บด้านบน ให้ใช้ภาพที่มีขนาดเท่ากันบันทึกแทนไฟล์เดิมที่อยู่ในกล่อง images ชื่อไฟล์ Header.jpg และภาพอื่น ๆ ในกล่อง images สามารถใช้โปรแกรมตกแต่งภาพแก้ไขได้ทุกไฟล์เพียงแต่ให้มีความกว้างยาวเท่าเดิม
การเปลี่ยนชื่อและสโลแกนเว็บไซต์ ให้แก้ในไฟล์ index.php ของเทมเพลตแล้วแก้ในส่วนนี้
รูปด้านล่างแสดงภาพหัวเว็บ ชื่อ และสโลแกนของเว็บไซต์
การใส่ไฟล์ Flash บนหัวเว็บ
ถ้าต้องการให้แสดงไฟล์ Flash บนหัวเว็บเหมือนในเว็บนี้ ให้อัพโหลดไฟล์ Flash ชื่อ header.swf หรือชื่ออะไรก็ได้แต่ต้องแก้ในโค้ดให้ตรงกันไปไว้ในกล่อง images แล้วแทรกคำสั่งต่อไปนี้ในไฟล์ index.php ของเทมเพลตในระหว่างแท็ก
แสดงตัวอย่างโค้ด
code-insert-flash.txtในโค้ดจะมีคำสั่ง PHP ตรวจสอบหน้าที่ไม่ต้องการให้แสดงไฟล์ Flash เช่นในหน้า Editor เพราะเมื่อใช้เครื่องมือของบางตัวที่เปิดหน้าต่าง Popup จะถูกบังโดยไฟล์ Flash ทำให้ใช้งานไม่สะดวก
การแก้ไขการตรวจสอบเงื่อนไขของหน้าหรือคอมโพแนนท์
ถ้าต้องการกำหนดการแสดงจำนวนคอลัมน์ที่แตกต่างจากที่กำหนดไว้เดิม ให้แก้ไขในไฟล์ index.php ของเทมเพลต ให้ระวังเรื่องของรูปแบบคำสั่งให้มากครับ ถ้าผิดนิดนึงเทมเพลตอาจใช้ไม่ได้ ในการแก้ไขควรมีความรู้ภาษา PHP พอสมควร
โดยเงื่อนไขการเปรียบเทียบเราสามารถดูได้จาก URL ของหน้าที่เราต้องการตรวจสอบ ซึ่งจะอยู่หลัง index.php ต่อจากเครื่องหมาย ? เช่น ?task=editpost หรือ ?option=com_content เป็นต้น เราจะเห็น URL แบบนี้ได้ต้องไม่เปิดระบบ SEF ของ Joomla นะครับ ถ้าเปิดอยู่ให้ปิดดูก่อนเสร็จแล้วค่อยเปิดทีหลังได้ครับ
การกำหนดเงื่อนไขสำหรับให้แสดงคอลัมน์เดียว ให้แก้ไขบริเวณนี้ครับ
if(JRequest::getCmd('mode') == 'post' or JRequest::getCmd('mode') == 'edit'
or JRequest::getCmd('mode') == 'reply' or JRequest::getCmd('mode') == 'quote'
or JRequest::getCmd('layout') == 'form' or JRequest::getCmd('task') == 'edit'
or JRequest::getCmd('task') == 'editpost' or JRequest::getCmd('layout') == 'entry'
or JRequest::getCmd('option') == 'com_jpfchat' or JRequest::getCmd('task') == 'icalevent.edit'
or JRequest::getCmd('option') == 'com_ccboard' or JRequest::getCmd('option') == 'com_projectfork'
or JRequest::getCmd('view') == 'addpost') {
/* Start assign parameters for one column */
$cols_num = 1;
$main_pos = "left";
$div_class = "content-full";
/* End assign parameters for one column */
การกำหนดเงื่อนไขสำหรับให้แสดงสองคอลัมน์ ให้แก้ไขบริเวณนี้ครับ อยู่ถัดจากโค้ดข้างบนเลย
} elseif($this->countModules('left')) { /* if not one column condition */
if(JRequest::getCmd('view') == 'article' or JRequest::getCmd('option') == 'com_comprofiler'
or JRequest::getCmd('option') == 'com_frontenduserarticlelist'
or JRequest::getCmd('option') == 'com_alphacontent'
or JRequest::getCmd('option') == 'com_fabrik' or JRequest::getCmd('option') == 'com_cbmailing'
or JRequest::getCmd('option') == 'com_uddeim' or JRequest::getCmd('layout') == 'blog'
or JRequest::getCmd('option') == 'com_blog' or JRequest::getCmd('option') == 'com_lyftenbloggie') {
/* Start assign parameters for two column some component */
$cols_num = 2;
$main_pos = "right";
$div_class = "content-middle";
/* End assign parameters for two column some component */
ตรงนี้ไม่ขออธิบายมากครับ ถ้าไม่จำเป็นก็ไม่ควรแก้ไข เขียนไว้คร่าว ๆ สำหรับผู้ที่มีประสบการณ์ในการแก้ไขเทมเพลตครับ
โค้ดคำสั่งกำหนดเงื่อนไขในการแสดงจำนวนคอลัมน์ของเทมเพลต
ตรงนี้จะแสดงและอธิบายโค้ดคำสั่งที่ใช้ในการตรวจสอบเงื่อนไขการแสดงจำนวนคอลัมน์ของเทมเพลต เพื่อใช้เป็นแนวทางสำหรับผู้ที่ต้องการแก้ไขเทมเพลตอื่น ๆ
ให้ทำการแก้ไขไฟล์ index.php ของเทมเพลตที่ใช้ ควรสำรองไฟล์ index.php เดิมเก็บไว้ก่อน แทรกโค้ดคำสั่งนี้ไปแทนที่คำสั่งเดิมของเทมเพลต ตั้งแต่ส่วนที่แสดงตำแหน่งโมดูล left จะถึงตำแหน่งโมดูล right ส่วนนี้สำหรับผู้ที่มีประสบการณ์ในการแก้ไขเทมเพลตเท่านั้นนะครับ ถ้าคุณยังไม่เคยแก้ไขเทมเพลตให้ศึกษาคำสั่ง PHP และรูปแบบของเทมเพลตก่อน
รูปแบบคำสั่งมีดังนี้
คำสั่งที่ใส่ในส่วนของตัวอย่างนั้นให้คัดลอกมาจากเทมเพลตที่คุณใช้อยู่ครับ
ส่วนสำคัญอันหนึ่งคือต้องกำหนดความกว้างของหน้าในไฟล์ CSS ของเทมเพลตที่ใช้ด้วยตัวแปล $div_class สามารถกำหนดตาม CSS ที่ใช้ได้ อาจจะคัดลอกจากของเดิมเป็นสามชุด แล้วเปลี่ยนชื่อให้ตรงกับที่กำหนดในตัวแปล ส่วนค่าอื่น ๆ เอาไว้เหมือนเดิมเปลี่ยนแต่ค่า width อย่างเดียว
ตัวอย่าง
หลักการก็คือคำสั่งในไฟล์ index.php จะตรวจสอบเงื่อนไขของหน้าเว็บหรือคอมโพแนนท์ แล้วกำหนดในค่าตัวแปล $div_class ตามการแสดงจำนวนคอลัมน์แล้วไปกำหนดให้แท็ก
ในการใช้งานจริงการแก้ไขแต่ละเทมเพลตจะมีรายละเอียดไม่เหมือนกัน ต้องปรับใช้กันเองตามเทมเพลตที่ใช้ครับ
สำหรับผู้ที่สนใจเทมเพลตในเว็บนี้สามารถติดต่อรายละเอียดกับผมได้ครับ
แก้ไขล่าสุด (วันพฤหัสบดีที่ 19 พฤศจิกายน 2009 เวลา 17:48 น.)








ข้อคิดเห็น