ผู้เขียน หัวข้อ: มาทำความรู้จัก กับ SSI.php และ ssi_examples.php  (อ่าน 1858 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ smf

  • [color=green][i]"ถ้าคุณไม่สามารถอธิบายอย่างง่ายๆ ให้คนอื่นเข้าใจได้แล้วล่ะก็ แสดงว่าคุณยังเข้าใจมันไม่ดีพอ"[/i][/color]
  • Administrator
  • Hero Member
  • *****
  • กระทู้: 1,368
  • พอยท์: 5
    • ดูรายละเอียด
    • pordoo.com
    • อีเมล์
มาทำความรู้จัก กับ SSI.php และ ssi_examples.php
« เมื่อ: 10 สิงหาคม 2015, 20:23:34 »
SSI.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 เรียกอะไร ออกมาจากเวปบอร์ดของคุณ ได้บ้าง





การนำไปใช้จริง
ก่อนอื่นใดต้องทำการเพิ่มเมนูในหน้า'เวปหลัก'ก่อนครับ

หน้าแรก  คือสิ่งที่เราเพิ่มมา
เวปบอร์ด คือสิ่งที่เราเปลี่ยนแปลง จากคำว่า หน้าแรก เดิม

ไฟล์ Index.template.php
ค้นหา:
โค๊ด: [Select]
// Show the [home] button.
แทรก ก่อนหน้า:
โค๊ด: [Select]
// Show the [main] button.
echo ($current_action=='MainSite' || $context['browser']['is_ie4']) ? '<td class="maintab_active_' . $first . '">&nbsp;</td>' : '' , '
<td valign="top" class="maintab_' , $current_action == 'MainSite' ? 'active_back' : 'back' , '">
<a href="../">', $txt['MainSite'] ,'</a>
</td>' , $current_action == 'MainSite' ? '<td class="maintab_active_' . $last . '">&nbsp;</td>' : '';

แก้ไขไฟล์ภาษา
modification.english.php   เพิ่ม
โค๊ด: [Select]
$txt['MainSite']='Home';
modification.thai.php   เพิ่ม
โค๊ด: [Select]
$txt['MainSite']='หน้าแรก';
แก้ไขไฟล์ภาษา
index.thai.php
ค้นหา:
โค๊ด: [Select]
$txt[103]='หน้าแรก';
เปลี่ยนเป็น คำที่คุณต้องการ เช่นเวปบอร์ด หรือ ฟอรั่ม หรือ พูดคุย
โค๊ด: [Select]
$txt[103]='เวบบอร์ด';
index.english.php
ค้นหา:
โค๊ด: [Select]
$txt[103]='Home';
เปลี่ยนเป็น คำที่คุณต้องการ เช่น Webboard หรือ Forum หรือ Community
โค๊ด: [Select]
$txt[103]='Webboard';
อัพโหลดขึ้นเวปโฮสติ้ง แล้วดูผลที่ได้ครับ





กรณีที่ ท่านจะใช้ หน้าที่จะทำใหม่ เป็น HomePage เลย ก็ให้ท่านสร้างไฟล์ ขึ้นมาเป็น  index.php เลยครับ
แต่ถ้าไม่ใช่  และต้องการที่จะใช้หน้า index.php  ให้มีปุ่ม คลิกเข้ามาที่หน้าใหม่นี้ หรือจะสั่งให้ Redir มา ก็ สุดแท้แต่ท่าน ครับ

สำหรับ ท่านที่จะใช้ index.php   แล้วสั่งให้ re direct  มาที่หน้าใหม่นี้ ก็ใส่รายละเอียดตามนี้ เข้าไปด้านในครับ
โค๊ด: [Select]
<?php
header
("Location: main.php");
?>

สำหรับไฟล์ main.php  ท่านอาจจะใช้ Stylesheet ในการตกแต่ง หรือ มีเทมเพลทส่วนตัวในการจัดการอยู่แล้ว
เราก็ไม่ว่ากันครับ

ตานี้ ก็มาถึงงานที่เราต้องทำ ล่ะครับ ว่า จะเรียกเอาฟังก์ชั่น ที่อยู่ใน SSI.php เข้ามาใช้งานได้อย่างไร
ที่บรรทัดแรกสุด เลย ให้แทรก
โค๊ด: [Select]
<?php require("board/SSI.php"); ?>
ไว้บนสุด  ให้อยู่เหนือสิ่งอื่นใด ครับ  หลังจากนั้น ก็ จัดการ layout ต่างๆ ที่ต้องการจะใส่ ssi function
ดูโครงสร้างประกอบนะครับ

Cradit:VBNeverdie.Com
« แก้ไขครั้งสุดท้าย: 14 กุมภาพันธ์ 2016, 18:56:44 โดย smf »