ผู้เขียน หัวข้อ: ทำบอร์ด smf Login ด้วย facebook (SA Facebook Integration)  (อ่าน 49173 ครั้ง)

ออฟไลน์ We Love Thailand

  • เรารักประเทศไทย
  • Administrator
  • *
  • กระทู้: 1,229
  • ชอบกด Like+ 844
  • เพศ: ชาย
  • ใช้งานล่าสุด :15 กันยายน 2019, 14:29:21
  • รับบอกรักประเทศไทย
    • SprinklerThailand สปริงเกอร์ไทยแลนด์
ทำบอร์ด smf Login ด้วย facebook (SA Facebook Integration)

แนะนำ : ทำบอร์ด smf Login ด้วย facebook Twitter Google 20+ Social ด้วย Social Login


เป็น Mod ที่มีลูกเล่นต่างๆของ facebook เกือบครบ ไม่ว่าจะเป็น
การให้สมาชิกบอร์ด smf Login หรือไป Register ผ่านระบบของ facebook ก่อนเข้าบอร์ด
ตลอดจน Plugin ของ facebook ไม่ว่าจะเป็น Like , comment, Recommend, Publisher ,Register

และสามารถเลือกให้ Plugin แสดงเฉพาะบอร์ด หรือเฉพาะกรุ๊ปได้ ถือว่าเป็น Mod ที่น่าสนใจมากจริงๆ
Mod ตัวนี้จำเป็นอย่างยิงที่จะต้องใช้ Facebook Application ID กับ Facebook Application Secret (จะพูดถึงในตอนต่อไป)

การติดตั้งสำหรับ Mod ตัวนี้ไม่ยาก  Mod SA Facebook Integration นี้จะถูกติดตั้งลงใน ธีม default
ไฟล์หลักของ Mod ตัวนี้ที่ถูกแก้ไขคือ Display.template.php โดยปกติ Display.template.php นี้จะอยู่ใน  ธีม default อยู่แล้ว
แต่ถ้าธีมปัจจุบันที่ใช้ของใครมีไฟล์ Display.template.php อยู่ด้วย ต้องติดตั้งสคริปต์ด้านล่างเข้าไปด้วย

มาดูตัวอย่างการติดตั้ง ธีมที่ผมใช้ทดสอบชื่อ Whitebox มันไม่มีไฟล์ Display.template.php เป็นของตัวเอง
และไฟล์  Display.template.php นี้มันอยู่ใน Themes/default/
ดังนั้นในการติดตั้ง ผมจึงปล่อยให้ระบบมันติดตั้งไฟล์ลงไปยัง ธีม default ตามปกติ
สำหรับท่านอื่นๆที่ธีมปัจจุบันมีไฟล์ Display.template.php อยู่ด้วย ตอนติดตั้งต้องติ๊กสั่งให้ติดตั้งสคริปต์ลงไปด้วย

ในภาพจะเห็นได้ว่าระบบจะติดตั้งไฟล์ทั้งหมดเข้าไปยัง Themes/default/


เลื่อนลงมาดูด้านล่างว่าธีมที่เราใช้มันสามารถติดตั้งอะไรเข้าไปได้บ้าง ของผมมีเพียงไฟล์ภาพ facebook.png เท่านั้น
ติ๊กถูกให้ไฟล์ภาพถูกติดตั้งแล้วคลิกติดตั้งเดี๋ยวนี้


หลังจากติดตั้งระบบจะ redirect ไปที่เมนู Facebook/Configuration


วิธีลงแบบแมนวล อันดับแรกต้องดาวน์โหลด Mod มาก่อน
[hide=8]
Mod Name: SA Facebook Integration
Created By: SMFHacks.com Team
Compatible With: 2.0, 2.0.1, 2.0.2

ดาวน์โหลดไฟล์ SA_Facebook_Integration.zip ที่
http://custom.simplemachines.org/mods/index.php?mod=2322

คลาย .zip ออก แล้วนำไฟล์ต่างๆไปใส่ไว้ที่ ธีมของเราดังนี้

Move the included
อัพไฟล์  "Facebook" เข้าที่ "./Sources".
อัพไฟล์  "Facebook.template.php" เข้าที่ "./Themes/default".
อัพไฟล์  "FacebookAdmin.template.php"เข้าที่ "./Themes/default".
อัพไฟล์  "images/facebook.png" เข้าที่ "./Themes/default/images".
อัพไฟล์  "facebookauth" เข้าที่ "the root directory".
อัพไฟล์  "lang/Facebook.english.php" เข้าที่ "./Themes/default/languages".
อัพไฟล์  "lang/Facebook.english-utf8.php" เข้าที่ "./Themes/default/languages".

รันไฟล์ install.php เพื่อสร้างตารางข้อมูล



การลงไฟล์แบบแมนวลกับไฟล์หลัก Display.template.php
File Edits แก้ไขไฟล์ ./Themes/default/Display.template.php
Find: ค้นหา
โค๊ด: [Select]
// Maybe we can approve it, maybe we should?
if ($message['can_approve'])

Add Before: เติมก่อนที่หา
โค๊ด: [Select]
    if (class_exists('SAFacebookhooks')) {
    echo
SAFacebookhooks::facebook_showPub(
    array(
'subject' => $message['subject'],
'body' => $message['body'],
'href' => $message['href'],
'isPost' => true,
        )
);
    }

Find: ค้นหา
โค๊ด: [Select]
if ($message['can_approve'] || $context['can_reply'] || $message['can_modify'] || $message['can_remove'] || $context['can_split'] || $context['can_restore_msg'])
Replace With: ทับของเดิม
โค๊ด: [Select]
if (!empty($context['show_publish_button']) && !$context['user']['is_logged'] || !empty($context['show_publish_button']) && $context['user']['is_logged'] || $message['can_approve'] || $context['can_reply'] || $message['can_modify'] || $message['can_remove'] || $context['can_split'] || $context['can_restore_msg'])

ติดตั้งเสร็จไปตั้งค่าระบบที่เมนู Facebook/Configuration


ตอนสร้างแอพ

ให้ Login facebook เลื่อนลงมาล่างสุด คลิกเข้าไปที่เมนู "ผู้พัฒนา"
หรือตามลิงค์นี้ https://developers.facebook.com/apps
เพื่อไปเอา Facebook Application ID กับ Facebook Application Secret มาใส่ในช่องดังกล่าว

โปรดติดตามตอนตอนสร้างแอพ จนกว่าจะ connect SMF กับ facebook ได้ดังภาพด้านล่าง




[/hide]


ข้อดีที่เห็นได้ชัดจากการเลือกให้สมัครสามชิกผ่านทาง facebook ได้เพียงทางเดียว
- คือการลดปัญหา สแปม user
        เนื่องจากวิธีนี้ช่วยป้องกันการสแปม user ได้เป็นอย่างดี เพราะเฟสบุคให้ยืนยันด้วยเบอร์โทร 1แอคเคาท์ต่อ1 user เท่านั้น
ดังนั้นหากสมาชิกทำผิดกฎ แล้วโดนแบนด้วยแอคเคาท์ของเฟสบุค จะเป็นการยากต่อการกลับเข้ามาเป็นสมาชิกในเว็บอีก

ซึ่งปกติแล้วถ้าเปิดให้สมัครสมาชิกผ่านระบบของบอร์ดตามปกติ เมื่อผู้ใช้ทำผิดกฎแล้วโดนแบน ก็จะสามารถกลับมาสมัครสมาชิกด้วย User ใหม่ได้เรื่อยๆ แล้วก็จะมักทำผิดกฎอีกเรื่อยๆ เพื่อปั่นป่วนเว็บบอร์ดของเรา ซึ่งการปิดระบบงดรับสมัครสมาชิกทำให้เสียโอกาสแก่สมาชิกใหม่ๆท่านอื่นๆไปด้วย ดังนั้นการติดตั้ง ทำบอร์ด smf Login ด้วย facebook แล้วเลือกให้สมัครสมาชิกผ่านทางเฟสบุคได้ทางเดียวจึงเป็นวิธีป้องกัน Spam user ได้เป็นอย่างดี confirm!


วิธีสร้าง Application Facebook เพื่อ Integration SMF
« แก้ไขครั้งสุดท้าย: 17 ตุลาคม 2014, 12:44:20 โดย We Love Thailand »
สวัสดีคุณ...บุคคลทั่วไป กด Like ให้หรือยัง...
welovethailand.com welovethailand.net เรารักประเทศไทย.com

ออฟไลน์ phum2553

  • Newbie
  • *
  • กระทู้: 2
  • ชอบกด Like+ 2
  • ใช้งานล่าสุด :20 ตุลาคม 2012, 11:25:38
  • Thanks You welovethailand.com

ออฟไลน์ loempon

  • Newbie
  • *
  • กระทู้: 4
  • ชอบกด Like+ 1
  • ใช้งานล่าสุด :14 พฤศจิกายน 2012, 09:37:16
  • Thanks You welovethailand.com

ออฟไลน์ NenaDesign

  • Jr. Member
  • **
  • กระทู้: 98
  • ชอบกด Like+ 13
  • ใช้งานล่าสุด :18 มกราคม 2016, 11:27:53
    • ของเล่นเสริมพัฒนาการ
ขอบคุณมากมายนะคะ  :^6thx^:
เดี๋ยวขอลองทำตามดูก่อน

ออฟไลน์ Tcomputer

  • Newbie
  • *
  • กระทู้: 3
  • ชอบกด Like+ 0
  • ใช้งานล่าสุด : 7 ธันวาคม 2016, 20:16:03
  • Thanks You welovethailand.com
ขอบคุณมากครับ ความรู้ที่แบ่งปั้น

ออฟไลน์ NenaDesign

  • Jr. Member
  • **
  • กระทู้: 98
  • ชอบกด Like+ 13
  • ใช้งานล่าสุด :18 มกราคม 2016, 11:27:53
    • ของเล่นเสริมพัฒนาการ
ติดตั้ง Mod เรียบร้อยแล้ว และทำตามขั้นตอนด้านบนแล้ว



ยังหาเมนู Facebook Integration ไม่เจอค่ะ :^18cry^:



สอบถามเพิ่มหน่อยนะคะ
1. ขั้นตอนรันไฟล์ install.php นี้คือ ลงไฟล์ที่โฮสแล้วเข้า www.เว็บ.com/install.php หรือเปล่าคะ
2. Find & Replace กี่ครั้งค่ะ (เจอโค๊ดแบบเดียวกันนี้หลายครั้งค่ะ)
โค๊ด: [Select]
if ($message['can_approve'] || $context['can_reply'] || $message['can_modify'] || $message['can_remove'] || $context['can_split'] || $context['can_restore_msg'])
ปล. ธีมปัจจุบันมีไฟล์ Display.template.php เป็นของตัวเองนะคะ

ออฟไลน์ We Love Thailand

  • เรารักประเทศไทย
  • Administrator
  • *
  • กระทู้: 1,229
  • ชอบกด Like+ 844
  • เพศ: ชาย
  • ใช้งานล่าสุด :15 กันยายน 2019, 14:29:21
  • รับบอกรักประเทศไทย
    • SprinklerThailand สปริงเกอร์ไทยแลนด์
คำตอบอยู่ที่ Facebook Comments  ด้านล่างครับ
สวัสดีคุณ...บุคคลทั่วไป กด Like ให้หรือยัง...
welovethailand.com welovethailand.net เรารักประเทศไทย.com

ออฟไลน์ lomball

  • Newbie
  • *
  • กระทู้: 3
  • ชอบกด Like+ 0
  • ใช้งานล่าสุด :27 พฤศจิกายน 2012, 10:56:17
  • Thanks You welovethailand.com

ออฟไลน์ NenaDesign

  • Jr. Member
  • **
  • กระทู้: 98
  • ชอบกด Like+ 13
  • ใช้งานล่าสุด :18 มกราคม 2016, 11:27:53
    • ของเล่นเสริมพัฒนาการ
คำตอบอยู่ที่ Facebook Comments  ด้านล่างครับ

 Facebook Comments  ด้านล่าง คืออะไรหรอคะ  :^14ngng^:

ออฟไลน์ We Love Thailand

  • เรารักประเทศไทย
  • Administrator
  • *
  • กระทู้: 1,229
  • ชอบกด Like+ 844
  • เพศ: ชาย
  • ใช้งานล่าสุด :15 กันยายน 2019, 14:29:21
  • รับบอกรักประเทศไทย
    • SprinklerThailand สปริงเกอร์ไทยแลนด์
คำตอบอยู่ที่ Facebook Comments  ด้านล่างครับ

 Facebook Comments  ด้านล่าง คืออะไรหรอคะ  :^14ngng^:

คำตอบผมตอบไว้ในนั้นไงครับ เห็นใหม?
สวัสดีคุณ...บุคคลทั่วไป กด Like ให้หรือยัง...
welovethailand.com welovethailand.net เรารักประเทศไทย.com

ออฟไลน์ NenaDesign

  • Jr. Member
  • **
  • กระทู้: 98
  • ชอบกด Like+ 13
  • ใช้งานล่าสุด :18 มกราคม 2016, 11:27:53
    • ของเล่นเสริมพัฒนาการ
คำตอบอยู่ที่ Facebook Comments  ด้านล่างครับ

 Facebook Comments  ด้านล่าง คืออะไรหรอคะ  :^14ngng^:

คำตอบผมตอบไว้ในนั้นไงครับ เห็นใหม?


คำตอบอยู่ที่ Facebook Comments  ด้านล่างครับ

 Facebook Comments  ด้านล่าง คืออะไรหรอคะ  :^14ngng^:

คำตอบผมตอบไว้ในนั้นไงครับ เห็นใหม?

  :^14ngng^:

ออฟไลน์ We Love Thailand

  • เรารักประเทศไทย
  • Administrator
  • *
  • กระทู้: 1,229
  • ชอบกด Like+ 844
  • เพศ: ชาย
  • ใช้งานล่าสุด :15 กันยายน 2019, 14:29:21
  • รับบอกรักประเทศไทย
    • SprinklerThailand สปริงเกอร์ไทยแลนด์
รันไฟล์ install.php ใน Directory เดียวกันกับไฟล์ SSI
Find & Replace ครั้งแรกครั้งดียว โดยประมาณบันทัดที่ 479
มี Display.template.php เป็นของตัวเองต้องใล่ใส่ไฟล์ต่างๆ
Facebook.template.php
FacebookAdmin.template.php
facebook.png
ตามลงไปด้วย ถ้ายังไม่ได้ลองบอกชื่อธีมที่ใช้มาทดสอบดู

Fb มันต้องเป็นเพื่อกันจึงจะเห็น
« แก้ไขครั้งสุดท้าย: 27 ตุลาคม 2012, 12:02:32 โดย We Love Thailand »
สวัสดีคุณ...บุคคลทั่วไป กด Like ให้หรือยัง...
welovethailand.com welovethailand.net เรารักประเทศไทย.com

ออฟไลน์ promooma1

  • Newbie
  • *
  • กระทู้: 4
  • ชอบกด Like+ 0
  • ใช้งานล่าสุด :27 ตุลาคม 2012, 17:26:59
  • Thanks You welovethailand.com

ออฟไลน์ We Love Thailand

  • เรารักประเทศไทย
  • Administrator
  • *
  • กระทู้: 1,229
  • ชอบกด Like+ 844
  • เพศ: ชาย
  • ใช้งานล่าสุด :15 กันยายน 2019, 14:29:21
  • รับบอกรักประเทศไทย
    • SprinklerThailand สปริงเกอร์ไทยแลนด์
คำตอบอยู่ที่ Facebook Comments  ด้านล่างครับ

 Facebook Comments  ด้านล่าง คืออะไรหรอคะ  :^14ngng^:

คำตอบผมตอบไว้ในนั้นไงครับ เห็นใหม?


คำตอบอยู่ที่ Facebook Comments  ด้านล่างครับ

 Facebook Comments  ด้านล่าง คืออะไรหรอคะ  :^14ngng^:

คำตอบผมตอบไว้ในนั้นไงครับ เห็นใหม?

  :^14ngng^:


ผมทดสอบเอาธีมที่ส่งมาให้ติดตั้งปรากฎว่า ใช้ได้โดยไม่ต้องติดตั้ง SA Facebook Integration ซ้ำ



ในลักษณะนี้ชี้ให้เห็นว่า SA Facebook Integration สามารถติดตั้งลงยังธีม default แล้วใช้ได้กับทุกธีมตามปกติ
ลองใล่เช็คทุกไฟล์ว่าถูกติดตั้งเข้าไปยังระบบครบถ้วนหรือไม่  เช็คสคริปต์ Display.template.php ที่ธีม default  หรือลองถอนทิ้งแล้วลงใหม่ดูครับ
« แก้ไขครั้งสุดท้าย: 27 ตุลาคม 2012, 12:24:49 โดย We Love Thailand »
สวัสดีคุณ...บุคคลทั่วไป กด Like ให้หรือยัง...
welovethailand.com welovethailand.net เรารักประเทศไทย.com