การปรับแต่ง Theme ตามใจเรา #3

การปรับแต่ง Theme ตามใจเรา #3

ตอนนี้ก็ตอนที่3แล้ว ใครที่ยังไม่ได้อ่านสองตอนก่อน คงต้องกลับไปอ่านก่อนนะครับ เพราะว่า ไม่งั้นอาจจะงง แล้วตามไม่ทันครับ และบทความเรื่อง Theme นี้ขอให้ท่านเปิดไฟล์ theme.php ของท่านขึ้นมาเพื่อศึกษาด้วยครับ (ไฟล์จะอยู่ในแฟ้ม themes/Milestone)

ก่อนอื่นเรามีข้อตกลงกันดังนี้ครับ

1. echo "xxxxxx"; คือการสั่งแสดง ผลออกมาเป็นแบบ HTML นะครับ

2.ในส่วนของ echo "xxxxx"; จะต้องไม่มี " อยู่ข้างในนะครับ ถ้าเอา Tag html มาใส่ให้เปลี่ยนจาก " เป็น ' แทนทั้งหมดครับ เช่น echo "<font color='#000000'>";

3.ค่อยๆแก้แล้วดูผลไปเรื่อยๆ อย่าแก้หมดแล้วดูผลทีเดียว เพราะว่าถ้ามันผิดแล้วจะย้อนกลับมาแก้ไม่ถูกครับ

เริ่มจากฟังก์ชั่นแรก ที่ต้องรู้ คือ function render_header() php-fusion โดยจากบทความที่แล้วก็จะทำให้ท่านทราบแล้วนะครับ ว่ามันจะมีผลต่อส่วนใหนบ้าง วันนี้ผมจะมาวิเคราะห์ให้เห็นเป็นส่วนๆครับ

<img src="" /> theme php-fusionก็ จาก Tag ที่เราเห็นนี้นะครับ เราดูตรง THEME ให้ดีๆนะครับ มันจะมี ' และ " ติดกันอยู่ ซึ่งจริงๆแล้วมันเป็นอย่างนี้ครับ src='xxxxx/xxxx.xxx' ครับ แล้วตรง THEME นั้นมันเขียนอย่างนี้ครับ ".THEME." โดยที่ ".THEME." นั้นมันคือการเรียกค่าตัวแปรในภาษา php มาใช้ครับ ซึ่งค่าตัวแปรนี้จะเก็บชื่อแฟ้ม Theme ในปัจจุบันที่เราใช้อยู่ อย่าง ตอนนี้ผมใช้ Milestone เมื่อ มันแสดงผลมันจะได้ดังนี้ครับ

เมื่อสั่งแสดงผล theme php-fusionพอจะเข้าใจใหมครับ คือ ".THEME." มันแทนด้วย themes/Milestone/ นั่นเองครับ แต่ว่าในการที่เาแก้ไข Theme เพื่อให้เป็นของเราเองนี้นั้น เราก็สามารถที่จะ ใช้แบบนี้ได้เลยทันที themes/ชื่อแฟ้มtheme ของเรา/ เพื่อ แทน ".THEME." แต่ว่า ในการทำอย่างนี้นั้น ท่านจะต้อง แม่นเรื่องชื่อด้วยนะครับ เพราะว่า เมื่อมีการแก้ไขชื่อแฟ้ม ก็จะทำให้มันไม่สามารถเรียก URL ได้เลยครับ ดังนั้น ถ้าเข้าใจ ".THEME." ก็แนะนำให้ใช้ตัวนี้จะดีกว่าครับ

ต่อมาครับ $header_content theme php-fusion เราจะเห็นว่ามี ตัวแปรมาอีกแล้ววววว ตัวนี้คือ $header_content ครับ โดยค่าที่มันเก็บเอาไว้นั่นคือ

<img src="" /> theme php-fusion ซึ่งมันคือ รูปแบนเนอร์บนหัวเว็บเรานั่นล่ะครับ(ที่เราสามารถเข้าไปเปลี่ยนได้ในเครื่อง มือผู้ควบคุม) แล้วยังประกอบด้วยคำบรรยายรูปภาพและ ไตเติ้ลรูปภาพด้วยครับ ซึ่งส่วนนี้ล่ะครับ สำหรับใครที่มองว่า หัวเว็บเรายังว่างๆก็เอามาใส่ เอาไว้ไกล้ๆตัวแปรที่ว่ากันได้เลยครับ

ซึ่งถ้าเราสังเกตโค้ดให้ดี แล้ววิเคราะห์ออกมาแล้วเนี่ย มันจะมีหน้าตาเป็นตารางดังนี้ครับ

ตรงนี้ใส่โลโก้เว็บ

พอจะเข้าใจใหมครับ คือว่า มันจะมีรูปที่เกี่ยวข้องทั้งหมด8ชิ้นครับ ไม่รวมโลโก้เว็บ ซึ่งดูจากโค้ดแล้ว ท่านก็จะสามารถไปเปิดไฟล์รูปที่ถูกเก็บอยู่ในแฟ้ม images มาดูเทียบของจริงได้ครับ แล้วจะเข้าใจมากขึ้น ทีนี้วิธีแก้ของมันมีอยู่สองวิธีครับ คือ 1เราเข้าไปเปลี่ยนที่รูป โดยเราสร้างรูปมาใหม่ แล้วพยายามตัดให้ได้ขนาดแต่ละชิ้นเท่าเดิมแล้วเซฟทับในชื่อเดิมไปเลยครับ วิธีที่ 2 คือเราต้องสร้างรูปเอง ตัดอย่างไรก็ได้ แล้วแก้โค้ดให้มันเป็นตามรูปของเราครับ วิธีนี้เราจะสามารถออกแบบได้อิสระกว่าแบบแรกมาก เพราะว่า เราสามารถสร้างแบบใหนยังไงก็ได้ตามใจของเราเลยครับ

style set background theme php-fusionสำหรับคำสั่งนี้นะครับ ก็ไม่มีอะไรมากครับ มันคือคำสั่งเรียกรูปภาพขึ้นมาเป็น Background นั่นเองครับ

และสำหรับท่านไหนที่แก้โค้ดเอง โดยเขียนโค้ดที่เป็นแบบตารางเนี่ย ขอให้ท่านลบพวก Class หรือ พวก Style ออกด้วยนะครับ css style theme php-fusionเพราะว่า หลายจุดเนี่ย มันจะตีกับของท่านที่กำลังเขียนอยู่ครับ(สำหรับคนที่อิงโครงสร้างเดิม)

แล้ว ยังจำเรื่องฟังก์ชั่นที่มันเปิดตารางครึ่งๆกลางๆ ได้ใหมครับ ความจริงมันไม่ได้รันครึ่งๆกลางๆหรือคนเขียนๆผิดนะครับ แต่มันมีการทำงานอย่างนี้ครับ

รันเนื้อหามาใส่ในตาราง

คือมันเริ่มรันตารางจากซ้ายบนไล่ไปด้านขวา แล้วมันก็รันคอลัมน์ซ้าย แถวที่สองมาอันนึง แล้วมันจึงเปิด คอลัมน์ที่สองทิ้งเอาไว้ (ส่วนของสีแดงทั้งหมด) เพื่อให้ ไปรันเนื้อหามาใส่ยังไงล่ะครับ เมื่อใส่ ครบแล้วจึงค่อยๆตามปิดฟังก์ชั่น Tag ของตารางจนครบครับ (ส่วนของสีน้ำเงินทั้งหมด) มันจึงออกมาเป็นตารางที่สมบูรณ์ยังไงล่ะครับ

และโค้ดที่เขียนออกมานั้น ก็ไม่แตกต่างจากการรันโค้ดเท่าไรนะครับ ดังนั้นถ้าสามารถดูแล้วเข้าใจได้คงแก้ได้ไม่ยาก

อย่างไรก็ตาม มันเป็นเรื่องที่ยากลำบากมากๆสำหรับมือใหม่ ดังนั้นใครมือใหม่ก็ขอให้ใช้ไปจนชินก่อนนะครับ เข้าใจระบบการทำงานของมันจนครบ แล้วต่อมาเราจึงค่อยๆเริ่มด้วยการศึกษา TAG ของ HTML แล้วจึงเริ่มไปศึกษา TAG PHP ครับ แล้วที่นี่ เราก็อาศัยความคิดสร้างสรรค์การออกแบบของแต่ละบุคคลแล้วล่ะครับ ว่า จะออกแบบมาให้สร้างสรรค์กันได้แค่ใหน

เรื่องนี้มันยากจริงๆครับ ผมตั้งใจจะทำเรื่องนี้มานานมากแล้วครับ แต่ก็ติดตรงที่มันยากนี้ล่ะครับ มันติดอยู่ที่ปาก พูดไม่ค่อยถูกเท่าไรอ่ะครับ

เอาเป็นว่าใครสงสัยอะไรก็ไปถามได้ที่บอร์ดแล้วกันนะครับ ผมจะคอยตอบให้เรื่อยๆครับ

อย่างไรก็ตามผมจะพยายามทำ Theme ออกมาแจกเพื่อนๆกันเรื่อยๆนะครับ เหอๆๆ ทำคนเดียวเหนื่อยมากครับ แล้วผมกำลังเตรียมจะเอา Template มาแจกด้วยครับ แต่ไม่ใช่ สำหรับ php Fusion นะครับเป็น Template ทั่วไปน่ะครับ(แต่มันสามารถนำมาใช้กับ phpFusion ได้แต่เราต้องแก้โค้ดพอประมาณเลย)

Create: Modify : 2006-11-19 07:00:00 Read : 5721 URL :