<< การทำหน้าแรก หรือหน้ารวมข่าวสาร สำหรับ SMF >>
เขียนโดย คุณ VB Never Die
มาทำความรู้จัก กับ SSI.php และ ssi_examples.php
URL ตัวอย่างประกอบการทำบทความ
http://www.vbneverdie.com/board/ssi_examples.phpSSI.php ทำหน้าที่ รวบรวมฟังก์ชั่นพื้นฐานสำหรับพัฒนาต่อยอด เพื่อเรียก หรือค้นหาสิ่งที่เป็นพื้นฐานในการแสดงผล สิ่งที่จำเป็นสำหรับหน้าแรก
หรือ หน้ารวม อยู่แล้ว เช่น ฟังก์ชั่น กระทู้ล่าสุด ฟังก์ชั่น หัวข้อล่าสุด ฟังก์ชั่น ข่าว ฯลฯ เป็นต้น
อันประกอบไปด้วย
ฟังก์ชั่น
ตัวแปรต่างๆ
คำสั่ง SQL
การเก็บค่า ในแต่ละ Record ลงอาเรย์
การแสดงผล เป็น HTML
ซึ่ง ฟังก์ชั่นต่างๆ เหล่านี้ สามารถแก้ไขได้ โดยอิสระ โดยอาจจะแก้ หรือเพิ่มเติมที่คำสั่ง SQL หรือ แก้ไขที่รูปแบบการแสดงผล HTML ก็ได้ครับ
คุณสามารถ ติดตั้ง ssi mod ได้ตามความต้องการ โดยดาวน์โหลด จาก SimpleMachimes.org
โดย Mod ตัวนั้นๆ จะทำการ Modify ทั้ง SSI.php และ ssi_examples.php
หรือ อาจจะ ดัดแปลง ฟังก์ชั่น เดิมๆ แล้วเซฟเป็นฟังก์ชั่นใหม่ ในสไตล์คุณเอง ก็ได้ครับ
ตัวอย่าง
User Online ในห้องแชต ของไทยแอดมิน และเวปอื่นๆ ของลูกค้าของผม ซึ่งดัดแปลงจาก ssi_whosOnline
List Last Reply ในแต่ละบอร์ด ของหน้าแรก ไทยแอดมิน ซึ่งดัดแปลงจาก ssi_recentPosts / ssi_recentTopics
กระทู้ข่าวสาร ประกาศจากทีมงาน ของหน้าแรก ไทยแอดมิน ซึ่งดัดแปลงจาก ssi_boardNews
เป็นต้น
ssi_examples.php ทำหน้าที่ เรียก ฟังก์ชั่น ที่เขียนไว้ใน SSI.php มาแสดงผล
หน้านี้ จะเป็น แรงบัลดาลใจ ให้ใครหลายๆ คน นำข้อมูลไปจัดเลย์เอ๊าท์ สวยๆ และจัดทำเป็นหน้าแรก
เหมือนกับที่ ผมทำให้ ไทยแอดมิน นี้ และที่ทำที่เวปของผมเอง และลูกค้าหลายๆ ราย ของผม
รู้จัก กับ แต่ละฟังก์ชั่น กันก่อน ละกันครับ
ชื่อ ฟังก์ชั่น ใช้งานเพื่อ...
ssi_recentTopics แสดงหัวข้อล่าสุด
ssi_recentPosts แสดงกระทู้ที่มีการโพสล่าสุด (ทั้งการตั้งใหม่ และตอบกลับ)
ssi_recentPoll โพลล่าสุด
ssi_topBoards สถิติบอร์ดที่มีกระทู้ และหัวข้อ สูงสุด
ssi_topTopicsViews สถิติหัวข้อที่มีผู้สนใจอ่านมากที่สุด
ssi_topTopicsReplies สถิติหัวข้อที่มีผู้ตอบมากที่สุด
ssi_topPoll โพลที่มีผู้สนใจร่วมโหวต มากที่สุด
ssi_topPoster สถิติผู้มีกระทู้สูงสุด
ssi_showPoll($topic) โพล ที่แสดงรายละเอียดของเนื้อหา
ssi_latestMember แสดงข้อความ ต้อนรับสมาชิกล่าสุด
ssi_boardStats สถิติโดยรวมของบอร์ด
ssi_whosOnline แสดงผู้ที่กำลังออนไลน์
ssi_logOnline แสดงผู้ที่กำลังออนไลน์
ssi_welcome แสดงข้อความยินดีต้อนรับ ชื่อสมาชิกด้านบน
ssi_news แสดงข่าวแบบสุ่มรายการ
ssi_boardNews แสดงกระทู้ข่าว
ssi_menubar แสดงแถบเมนูของบอร์ด
ssi_quickSearch แสดงกรอบการค้นหา
ssi_login แสดงกรอบชื่อผู้ใช้ และรหัสผ่านเพื่อการเข้าสู่ระบบ
ssi_logout แสดงปุ่มให้ผู้ใช้กด เพื่อออกจากระบบ
ssi_todaysBirthdays แสดงวันเกิดสมาชิก
ssi_todaysHolidays แสดงวันหยุด
ssi_todaysEvents แสดงเหตุการณ์ที่กำหนดไว้
ssi_todaysCalendar แสดงรายการที่กำหนดไว้ในปฏิทินกิจกรรม
ssi_recentEvents แสดงรายการที่กำหนดไว้ ในปฏิทินกิจกรรมเร็วๆ นี้
คร่าวๆ นะครับ สำหรับ ssi_examples.php
ลองศึกษา จาก เวปบอร์ดของคุณเองครับ แล้วจะรู้ว่า ssi_examples.php เรียกอะไร ออกมาจากเวปบอร์ดของคุณ ได้บ้าง
บทต่อไป พบกับ การนำไปใช้จริง ครับ
เมื่อ: 4 มีนาคม 2008, 08:21:26
การแสดงผล / การนำไปประยุกต์ใช้ เพื่อทำหน้าแรกก่อนอื่นใด ต้อง ทำการเพิ่มเมนู ให้มีลิงค์ไป เวปหลัก ก่อนครับ
ตรงนี้มีภาพ! แต่ท่านจะมองไม่เห็น , ท่านต้อง
สมัครสมาชิก หรือ
ลงชื่อเข้าระบบเห็นมั้ยครับ ว่าจะมีคำว่า หน้าแรก กับ คำว่า เวปบอร์ด และต่อๆ ไปตามลำดับ
คำว่า หน้าแรก คือสิ่งที่เราเพิ่มมา
คำว่า เวปบอร์ด คือสิ่งที่เราเปลี่ยนแปลง จากคำว่า หน้าแรก เดิม
ทีนี้ ทำอย่างไรล่ะ ??? ??? ???
ก่อนอื่นใด ต้องทำการแก้ไขไฟล์ Index.template.php ก่อนครับ
ผมขอยึดตามแบบธีม default นะครับ สำหรับธีมอื่นๆ ก็คงจะคล้ายๆ กัน แต่ วิธีการเขียน จะต่างกันครับ
ค้นหา
// Show the [home] button.
แทรกก่อนหน้า
<?php //Don't care this line----------------------------------------------
// Show the [main] button.
echo ($current_action=='MainSite' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '"> </td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'MainSite' ? 'active_back' : 'back' , '">
<a href="../">', $txt['MainSite'] ,'[/url]
</td>' , $current_action == 'MainSite' ? '<td class="maintab_active_' . $last . '"> </td>' : '';