smf mod จะมีบางกรณีที่ไม่สามารถลงแบบอัตโนมัติได้
ก็จำเป็นต้องลงแบบเมนวล แกะโค๊ดเอง
- บางทีอาจเพราะไม่สามารถเปอมิสชันไฟล์ 777 ได้ เมื่อ 777 ไม่ได้ ไฟล์ก็เขียนทับไม่ได้
- บางทีไฟล์เขียนได้ แต่ไม่สามารถแอดดาต้าเบสได้ (บางม็อดจำเป็นต้องแอด)
- บางบอร์ดยำโค๊ดไฟล์จนเละเทะ ม็อดแบบออโตไม่สามารถหาโค๊ดเพื่อเขียนทับได้
- ม็อดบางตัว แก้ไฟล์ภาษาเยอะ เพราะฉะนั้นถ้าเราใช้ภาษาไทย เมนวลเอายังจะง่ายกว่าเสียอีก
แต่ทั้งนี้ การเมนวลม็อดนั้น ไม่ใช่ว่าจะเป็นข้อเสีย กลับเป็นข้อดีเสียด้วยซ้ำ
- ได้ฝึกการอ่านโค๊ดจากไฟล์ติดตั้ง
- ได้รู้ลักษณะโครงสร้างของม็อด ทั้งเรื่องภาษา การทำงาน การขยายไฟล์
- ได้เรียนรู้การอ่านโค๊ดของไฟล์เว็บบอร์ด การจัดวางด้วยภาษาพีเอชพี
- โดยเฉพาะคนที่มีพื้นฐานเอชทีเอมแอลมาแล้ว จะเรียนรู้ได้อย่างรวดเร็ว
ตอนต่อไป
มาดูวิธีติดตั้งแบบครบสมบูรณ์ ทั้งดาต้าเบส วิธีแก้ไฟล์ วิธีอ่านไฟล์ติดตั้ง
smf-blog
บล็อกสำหรับรวบรวมบทความปรับแต่งเอสเอ็มเอฟเว็บบอร์ด บทความส่วนใหญ่จะเขียนโดย ข้าพเจ้าเอง ในนาม เซียวเหล่งนึ่งฯ บทความเผยแพร่อยู่ใน http://www.justusers.net
วันพฤหัสบดีที่ 24 กุมภาพันธ์ พ.ศ. 2554
วันอังคารที่ 22 กุมภาพันธ์ พ.ศ. 2554
ลงม็อดทำอย่างไร Modification (การลงม็อดแบบออโตแพ็คเกจ)
Modification หรือถ้าเทียบกับพวกจุมลาก็จะเป็นโมดูล หรือเป็นปลักอินในเว็บแอพพลิเคชันอื่นๆ
ม็อด ใช้ทำอะไร
1. ใช้เพิ่มความสามารถบางประการที่บอร์ดไม่ได้ทำมาให้ หรือทำมาให้แต่ไม่เพียงพอ
เช่น แอนติบ็อท-สแปม การแสดงคลิปวีดีโอ การปรับแต่งโฆษณา เป็นต้น
2. ใช้เปลี่ยนแปลงและเพิ่มสมรรถนะบางประการให้กับฟีเจอร์ที่มีอยู่แล้ว
เช่น เพิ่มเติมการตอบด่วน การสมัครสมาชิก เป็นต้น
Modification ม็อดนี้หาได้จากไหน
http://custom.simplemachines.org/mods/
เลือกดูตามลักษณะการใช้งานได้เลยว่าเราจะปรับแต่งอะไร
วิธีลงม็อด มีอยู่ 2 วิธี
1. แบบออโตแพ็คเกจ
- ดาวน์โหลดม็อดที่ต้องการ จากนั้นอัพขึ้นโฟลเดอร์แพ็คเกจ บนโฮสต์
- จากนั้นเปอมิสชั่น 777 ไฟล์หน้าแรก โฟลเดอร์ ธีม ซอร์ส แพ็คเกจ
- เข้าไปที่ผู้ดูแล / ศูนย์จัดการแพ็คเกจ / เลือกดูแพ็คเกจ
จะเจอม็อดที่เราอัพขึ้นไป จากนั้นคลิกที่บันทึกม็อด
ลงม็อดแล้วไม่แสดงผล
* ม็อดบางตัวลงแล้วแสดงผลทันที นั่นก็เพราะไม่มีการปรับแต่งในส่วนที่แอดมินต้องไปเปิด หรือเลือกดำเนินการ
* ม็อดบางตัวลงแล้ว ต้องไปแก้ไฟล์ภาษาไทยด้วยถึงจะแสดงผล วิธีสังเกตุ ต้องดูว่าม็อดตัวนั้น แก้ไขไฟล์ภาษาอะไรบ้าง วิธีการดู
จากรูป เราจะเห็นว่า ม็อดตัวนี้มีเวอร์ชันล่าสุด 1.0
ม็อดตัวนี้ สนับสนุนเวอรืชัน 2.0 อาซี5 จากนั้นไปที่เมนูเลือกเวอรืชันของบอร์ดเรา
จากนั้นคลิกที่เพียร์
ลองดูส่วนท้ายๆ มักจะมีการแก้ภาษา จากรูปเขาบอกให้ แก้ที่ไฟล์ม็อด.อิงลิส
เราก้ต้องไปแก้ที่ไฟล์ ม็อด.ไทย (เพราะเราใช้ภาษาไทย)
* การจะดูว่าเปิดใช้งานหรือตั้งค่าม็อดได้จากไหน ให้ดูจากลิงก์ม็อดต้นฉบับนั้นๆ เช่น custom.simplemachines.org/mods/index.php?mod=1623 อ่านเอาจาก Description: ม็อดตัวนี้แสดงผลทันที
อีกวิธีคือ ดูว่าม็อดนั้นๆแก้ไฟล์อะไรบ้าง เช่น แก้ไฟล์แอดมินเทมเพลท แสดงว่าจะต้องมีเมนูเพิ่มมาในหน้าแอดมิน
หรือแก้ไฟล์เปอมิสชัน แสดงว่าจะต้องมีการเพิ่มการอนุญาต
ม็อด ใช้ทำอะไร
1. ใช้เพิ่มความสามารถบางประการที่บอร์ดไม่ได้ทำมาให้ หรือทำมาให้แต่ไม่เพียงพอ
เช่น แอนติบ็อท-สแปม การแสดงคลิปวีดีโอ การปรับแต่งโฆษณา เป็นต้น
2. ใช้เปลี่ยนแปลงและเพิ่มสมรรถนะบางประการให้กับฟีเจอร์ที่มีอยู่แล้ว
เช่น เพิ่มเติมการตอบด่วน การสมัครสมาชิก เป็นต้น
Modification ม็อดนี้หาได้จากไหน
http://custom.simplemachines.org/mods/
เลือกดูตามลักษณะการใช้งานได้เลยว่าเราจะปรับแต่งอะไร
วิธีลงม็อด มีอยู่ 2 วิธี
1. แบบออโตแพ็คเกจ
- ดาวน์โหลดม็อดที่ต้องการ จากนั้นอัพขึ้นโฟลเดอร์แพ็คเกจ บนโฮสต์
- จากนั้นเปอมิสชั่น 777 ไฟล์หน้าแรก โฟลเดอร์ ธีม ซอร์ส แพ็คเกจ
- เข้าไปที่ผู้ดูแล / ศูนย์จัดการแพ็คเกจ / เลือกดูแพ็คเกจ
จะเจอม็อดที่เราอัพขึ้นไป จากนั้นคลิกที่บันทึกม็อด
ลงม็อดแล้วไม่แสดงผล
* ม็อดบางตัวลงแล้วแสดงผลทันที นั่นก็เพราะไม่มีการปรับแต่งในส่วนที่แอดมินต้องไปเปิด หรือเลือกดำเนินการ
* ม็อดบางตัวลงแล้ว ต้องไปแก้ไฟล์ภาษาไทยด้วยถึงจะแสดงผล วิธีสังเกตุ ต้องดูว่าม็อดตัวนั้น แก้ไขไฟล์ภาษาอะไรบ้าง วิธีการดู
จากรูป เราจะเห็นว่า ม็อดตัวนี้มีเวอร์ชันล่าสุด 1.0
ม็อดตัวนี้ สนับสนุนเวอรืชัน 2.0 อาซี5 จากนั้นไปที่เมนูเลือกเวอรืชันของบอร์ดเรา
จากนั้นคลิกที่เพียร์
ลองดูส่วนท้ายๆ มักจะมีการแก้ภาษา จากรูปเขาบอกให้ แก้ที่ไฟล์ม็อด.อิงลิส
เราก้ต้องไปแก้ที่ไฟล์ ม็อด.ไทย (เพราะเราใช้ภาษาไทย)
* การจะดูว่าเปิดใช้งานหรือตั้งค่าม็อดได้จากไหน ให้ดูจากลิงก์ม็อดต้นฉบับนั้นๆ เช่น custom.simplemachines.org/mods/index.php?mod=1623 อ่านเอาจาก Description: ม็อดตัวนี้แสดงผลทันที
อีกวิธีคือ ดูว่าม็อดนั้นๆแก้ไฟล์อะไรบ้าง เช่น แก้ไฟล์แอดมินเทมเพลท แสดงว่าจะต้องมีเมนูเพิ่มมาในหน้าแอดมิน
หรือแก้ไฟล์เปอมิสชัน แสดงว่าจะต้องมีการเพิ่มการอนุญาต
การเขียนเว็บด้วย frame (ตอนที่ 3-จบ)
เราจะแบ่งพื้นที่โดยประมาณ ให้มีขนาดดังนี้
ส่วน ก. เมนู มีความกว้าง 250
ส่วน ข. ส่วนหัว มีความสูง 170
ส่วน ค. ส่วนเนื้อหา มีขนาดเท่าที่เหลือนั่นแหละ แค่ไหนก็แค่นั้น
ดังนั้นถ้าเขียนแบ่งเฟรม ก็จะได้ประมาณว่า
ถ้าเราต้องการเพิ่มการจัดรูปแบบของแต่ละเฟรม ก็ใส่ option ของ post ด้านบน
แต่ว่าถ้ากำหนด scrolling = no
จะมีปัญหาว่า ถ้าคนที่หน้าจอเล็กกว่าที่เราทำ
มันจะตกขอบ มองไม่เห็นส่วนที่เหลือ
ลองๆ ทำดูจะเห็นเอง
เอาล่ะ หน้าแรก แบบเต็มๆ
อธิบายแบบคร่าวๆ นะขอรับ :)
หวังว่าคงเข้าใจบ้าง
ลืมไป อีกหน่อย
ถ้าต้องการให้ link ไปปรากฏในเฟรมที่ต้องการ
อย่าลืมกำหนด target ที่ link นั้นด้วยนะ
ส่วน ก. เมนู มีความกว้าง 250
ส่วน ข. ส่วนหัว มีความสูง 170
ส่วน ค. ส่วนเนื้อหา มีขนาดเท่าที่เหลือนั่นแหละ แค่ไหนก็แค่นั้น
ดังนั้นถ้าเขียนแบ่งเฟรม ก็จะได้ประมาณว่า
โค๊ด:
<FRAMESET cols="250, *">
<FRAME name="menu" src="menu.htm">
<FRAMESET rows="170, *">
<FRAME name="header" src="header.htm">
<FRAME name="content" src="page-01.htm">
</FRAMESET>
</FRAMESET>
<FRAME name="menu" src="menu.htm">
<FRAMESET rows="170, *">
<FRAME name="header" src="header.htm">
<FRAME name="content" src="page-01.htm">
</FRAMESET>
</FRAMESET>
ถ้าเราต้องการเพิ่มการจัดรูปแบบของแต่ละเฟรม ก็ใส่ option ของ post ด้านบน
แต่ว่าถ้ากำหนด scrolling = no
จะมีปัญหาว่า ถ้าคนที่หน้าจอเล็กกว่าที่เราทำ
มันจะตกขอบ มองไม่เห็นส่วนที่เหลือ
ลองๆ ทำดูจะเห็นเอง
เอาล่ะ หน้าแรก แบบเต็มๆ
โค๊ด:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A simple frameset document</TITLE>
</HEAD>
<FRAMESET cols="250, *">
<FRAME name="menu" src="menu.htm">
<FRAMESET rows="170, *">
<FRAME name="header" src="header.htm">
<FRAME name="content" src="page-01.htm">
</FRAMESET>
</FRAMESET>
</HTML>
"http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A simple frameset document</TITLE>
</HEAD>
<FRAMESET cols="250, *">
<FRAME name="menu" src="menu.htm">
<FRAMESET rows="170, *">
<FRAME name="header" src="header.htm">
<FRAME name="content" src="page-01.htm">
</FRAMESET>
</FRAMESET>
</HTML>
อธิบายแบบคร่าวๆ นะขอรับ :)
หวังว่าคงเข้าใจบ้าง
ลืมไป อีกหน่อย
ถ้าต้องการให้ link ไปปรากฏในเฟรมที่ต้องการ
อย่าลืมกำหนด target ที่ link นั้นด้วยนะ
การเขียนเว็บด้วย frame (ตอนที่ 2)
ขั้นต่อไป พอกำหนดหน้าตาของเว็บแล้ว จะใส่เนื้อหายังไง
เช่น ต้องการแบ่งเป็น 2 คอลัมน์ โดยด้านซ้ายเป็นเมนู
เมนูกว้าง 250 pixel ส่วนด้านขวา ก็ให้มีความกว้างตามพื้นที่ที่เหลือ
ใน <FRAMESET> กำหนดว่าจะแบ่งเป็นกี่ส่วน
ก็จะต้องมี <FRAME src="ชื่อไฟล์ที่จะให้แสดง"> ตามจำนวนที่แบ่งไว้เท่ากัน
ในที่นี้แบ่งไว้ 2 ส่วน คือส่วนเมนู กับส่วนเนื้อหา
ส่วนเมนู คือไฟล์ menu.htm
ส่วนเนื้อหา คือไฟล์ page-01.htm
ทั้งสองไฟล์ ก็สร้างเป็นหน้าเว็บธรรมดานี่แหละ
มาดูกันต่อ ว่า <FRAME src=""> มีการกำหนดค่าอะไรได้บ้าง
name = กำหนดชื่อของ frame เอาไว้ใช้อ้างอิงเวลาที่ต้องการทำ link เพื่อให้แสดงใน frame ที่กำหนด
src = เนื้อหาของไฟล์ที่จะให้ปรากฏอยู่ในเฟรม
noresize ถ้ากำหนดค่านี้ไว้ จะทำให้เฟรมนี้ไม่มีการเปลี่ยนขนาด
scrolling = auto|yes|no เป็นการกำหนดว่าจะให้มี scroll bar หรือเปล่า เมื่อเนื้อหาที่แสดงมีขนาดใหญ่กว่าพื้นที่เฟรมที่กำหนดไว้ให้
frameborder = 1|0 จะให้แสดงขอบของเฟรมหรือไม่
marginwidth = pixels กำหนดว่าจะให้เว้นขอบซ้ายขวาของเนื้อหา กับกรอบของเฟรมเป็นระยะห่างเท่าไหร่
marginheight = pixels กำหนดว่าจะให้เว้นขอบบนล่างของเนื้อหา กับกรอบของเฟรมเป็นระยะห่างเท่าไหร่
เช่น ต้องการแบ่งเป็น 2 คอลัมน์ โดยด้านซ้ายเป็นเมนู
เมนูกว้าง 250 pixel ส่วนด้านขวา ก็ให้มีความกว้างตามพื้นที่ที่เหลือ
โค๊ด:
<FRAMESET cols="250,*">
<FRAME src="menu.htm">
<FRAME src="page-01.htm">
</FRAMESET>
<FRAME src="menu.htm">
<FRAME src="page-01.htm">
</FRAMESET>
ใน <FRAMESET> กำหนดว่าจะแบ่งเป็นกี่ส่วน
ก็จะต้องมี <FRAME src="ชื่อไฟล์ที่จะให้แสดง"> ตามจำนวนที่แบ่งไว้เท่ากัน
ในที่นี้แบ่งไว้ 2 ส่วน คือส่วนเมนู กับส่วนเนื้อหา
ส่วนเมนู คือไฟล์ menu.htm
ส่วนเนื้อหา คือไฟล์ page-01.htm
ทั้งสองไฟล์ ก็สร้างเป็นหน้าเว็บธรรมดานี่แหละ
มาดูกันต่อ ว่า <FRAME src=""> มีการกำหนดค่าอะไรได้บ้าง
name = กำหนดชื่อของ frame เอาไว้ใช้อ้างอิงเวลาที่ต้องการทำ link เพื่อให้แสดงใน frame ที่กำหนด
src = เนื้อหาของไฟล์ที่จะให้ปรากฏอยู่ในเฟรม
noresize ถ้ากำหนดค่านี้ไว้ จะทำให้เฟรมนี้ไม่มีการเปลี่ยนขนาด
scrolling = auto|yes|no เป็นการกำหนดว่าจะให้มี scroll bar หรือเปล่า เมื่อเนื้อหาที่แสดงมีขนาดใหญ่กว่าพื้นที่เฟรมที่กำหนดไว้ให้
frameborder = 1|0 จะให้แสดงขอบของเฟรมหรือไม่
marginwidth = pixels กำหนดว่าจะให้เว้นขอบซ้ายขวาของเนื้อหา กับกรอบของเฟรมเป็นระยะห่างเท่าไหร่
marginheight = pixels กำหนดว่าจะให้เว้นขอบบนล่างของเนื้อหา กับกรอบของเฟรมเป็นระยะห่างเท่าไหร่
การเขียนเว็บด้วย frame (ตอนที่ 1)
Credit : ธุลีดาว
การเขียนเว็บด้วย frame
อ้างอิงจาก
http://www.w3.org/TR/html401/present/frames.html
การเขียนเว็บด้วย frame คือการแบ่งหน้าเว็บเป็นส่วนๆ โดยที่แต่ละส่วนคือหน้าเว็บที่เป็นอิสระต่อกัน
ข้อดีของการใช้เฟรมคือ ลดการเขียนคำสั่งซ้ำๆ กันในแต่ละหน้า
เช่น มีหน้าเว็บที่จะแสดงผล 50 หน้า หากมีเมนูเพื่อเข้าถึงในแต่ละหน้า โดยที่ทุกหน้ามีเมนูหน้าตาเหมือนกัน
ถ้าเขียนหน้าเว็บปกติ ก็จะต้องทำเมนูซ้ำกัน 50 หน้า
และถ้ามีการแก้ไขเมนู ก็ต้องมาแก้ทั้ง 50 หน้า
แต่ถ้าเราใช้เฟรม ก็เขียนเมนูเพียงแค่หน้าเดียว เวลาแก้ก็แก้แค่หน้าเดียว
ลองดูตัวอย่างเฟรม
โค๊ด:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A simple frameset document</TITLE>
</HEAD>
<FRAMESET cols="20%, 80%">
<FRAMESET rows="100, 200">
<FRAME src="contents_of_frame1.html">
<FRAME src="contents_of_frame2.gif">
</FRAMESET>
<FRAME src="contents_of_frame3.html">
<NOFRAMES>
<P>This frameset document contains:
<UL>
<LI><A href="contents_of_frame1.html">Some neat contents</A>
<LI><IMG src="contents_of_frame2.gif" alt="A neat image">
<LI><A href="contents_of_frame3.html">Some other neat contents</A>
</UL>
</NOFRAMES>
</FRAMESET>
</HTML>
"http://www.w3.org/TR/html4/frameset.dtd">
<HTML>
<HEAD>
<TITLE>A simple frameset document</TITLE>
</HEAD>
<FRAMESET cols="20%, 80%">
<FRAMESET rows="100, 200">
<FRAME src="contents_of_frame1.html">
<FRAME src="contents_of_frame2.gif">
</FRAMESET>
<FRAME src="contents_of_frame3.html">
<NOFRAMES>
<P>This frameset document contains:
<UL>
<LI><A href="contents_of_frame1.html">Some neat contents</A>
<LI><IMG src="contents_of_frame2.gif" alt="A neat image">
<LI><A href="contents_of_frame3.html">Some other neat contents</A>
</UL>
</NOFRAMES>
</FRAMESET>
</HTML>
จะได้หน้าตาเว็บประมาณนี้
โค๊ด:
---------------------------------------
| | |
| | |
| Frame 1 | |
| | |
| | |
|---------| |
| | Frame 3 |
| | |
| | |
| | |
| Frame 2 | |
| | |
| | |
| | |
| | |
---------------------------------------
| | |
| | |
| Frame 1 | |
| | |
| | |
|---------| |
| | Frame 3 |
| | |
| | |
| | |
| Frame 2 | |
| | |
| | |
| | |
| | |
---------------------------------------
นั่นก็คือ หน้าที่ใช้สำหรับเรียกหน้าเว็บอื่นๆ จะเป็นหน้าที่กำหนดค่าเฟรม สำหรับแสดงผล
เช่น มีหน้า index.htm เป็นหน้าเฟรมสำหรับเรียกหน้าอื่นมาแสดง
และมีหน้าเนื้อหาคือ menu.htm กับ page-01.htm
ก่อนอื่น หน้า index.htm ก็ต้องสร้างเฟรมขึ้นมาก่อน ด้วยคำสั่ง
โค๊ด:
<FRAMESET></FRAMESET>
เราต้องออกแบบเสียก่อน ว่าจะให้มีการแบ่งหน้าแบบไหน? แนวตั้ง หรือแนวนอน
ถ้าแบ่งหน้าตามแนวนอน ก็จะใช้คำสั่ง
โค๊ด:
<FRAMESET cols="ความกว้างของคอลัมน์ 1, ความกว้างของคอลัมน์ 2, ความกว้างของคอลัมน์ 3, ..."></FRAMESET>
โดยที่ความกว้างนั้นสามารถกำหนดได้ 2 แบบคือ
กำหนดเป็นค่า pixel หรือ กำหนดเป็นเปอร์เซนต์
ถ้ากำหนดเป็น pixel ก็ใส่ค่าตัวเลข
ถ้ากำหนดเป็นเปอร์เซนต์ ก็ใส่ค่าตัวเลข ตามด้วยเครื่องหมาย %
คอลัมน์ จะมีกี่คอลัมน์ก็ได้ (แต่ถ้ามีมากจะงง แนะนำแค่ 2 ก็พอ)
เช่น ถ้าเราต้องการให้มี 2 คอลัมน์ โดยที่คอลัมน์ด้านซ้าย มีความกว้าง 250 ส่วนคอลัมน์ด้านขวา ต้องการให้เป็นพื้นที่ที่เหลือทั้งหมด
โค๊ด:
<FRAMESET cols="250,*"></FRAMESET>
แต่ถ้าต้องการแบ่งตามแนวตั้ง จะใช้รูปแบบ
โค๊ด:
<FRAMESET rows="ความสูงของแถว 1, ความสูงของแถว 2, ความสูงของแถว 3, ..."></FRAMESET>
การกำหนดค่าก็เหมือนกับการแบ่งตามแนวนอนและถ้าต้องการแบ่งแบบซับซ้อน ก็สามารถใส่ได้ทั้ง cols กับ rows
โค๊ด:
<FRAMESET cols="xx,yy,zz" rows="aa,bb"></FRAMESET>
และสามารถทำเฟรมซ้อนเฟรมได้อีกด้วย เช่นตัวอย่างที่เขียนไว้ด้านบน
สมัครสมาชิก:
บทความ (Atom)