ขั้นตอนโดยละเอียด

ขั้นตอนที่ 1: เข้าสู่ระบบ Facebook สำหรับนักพัฒนา (Facebook for Developers)

  1. ไปที่เว็บไซต์: developers.facebook.com
  2. เข้าสู่ระบบด้วยบัญชี Facebook ส่วนตัวของคุณ หากคุณเพิ่งเคยเข้าใช้งาน อาจต้องยอมรับข้อกำหนดและเงื่อนไขและเงื่อนไขต่างๆ

ขั้นตอนที่ 2: สร้างแอปใหม่ (Create a New App)

  1. เมื่อเข้าสู่ระบบแล้ว ให้คลิกที่ปุ่ม “สร้างแอป” (Create App) ที่มุมขวาบน
  2. เลือกประเภทแอปเป็น “ธุรกิจ” (Business) แล้วคลิก “ถัดไป” (Next)
  3. ตั้งชื่อแอปของคุณ (เช่น “My Social Media Poster” หรือชื่อใดก็ได้ที่สื่อความหมาย) แล้วคลิก “สร้างแอป” (Create App)
  4. คุณอาจต้องยืนยันรหัสผ่าน Facebook ของคุณอีกครั้ง

ขั้นตอนที่ 3: รับ User Access Token (แบบชั่วคราว)

เราจะใช้ Graph API Explorer เป็นเครื่องมือในการรับ Token
  1. ในหน้าแดชบอร์ดของแอปที่คุณสร้าง ให้ไปที่เมนูด้านซ้ายมือ เลือก “เครื่องมือ” (Tools) -> “Graph API Explorer”
  2. ในหน้า Graph API Explorer:
    • ตรวจสอบให้แน่ใจว่าได้เลือก แอปพลิเคชัน (Application) ที่คุณสร้างไว้ในช่องดรอปดาวน์ด้านบน
    • คลิกที่ปุ่ม “รับโทเค็น” (Get Token) -> “รับโทเค็นผู้ใช้” (Get User Access Token)
    • จะมีหน้าต่างเด้งขึ้นมาให้เลือกสิทธิ์ (Permissions) ที่จำเป็นสำหรับการโพสต์บนเพจ:
      • pages_show_list (เพื่อให้แอปเห็นรายการเพจที่คุณจัดการ)
      • pages_read_engagement (เพื่อให้แอปอ่านข้อมูลเพจได้)
      • pages_manage_posts (เพื่อให้แอปสามารถโพสต์บนเพจได้)
    • คลิก “สร้างโทเค็น” (Generate Access Token)
    • คัดลอก User Access Token ที่ได้มา (โทเค็นนี้จะปรากฏในช่อง “โทเค็นการเข้าถึง” (Access Token) ใน Graph API Explorer) (สำคัญ: โทเค็นนี้เป็นแบบชั่วคราว จะหมดอายุในเวลาไม่กี่ชั่วโมง)
เลือกเฉพาะสิทธิ์เหล่านี้เท่านั้น: pages_show_list pages_read_engagement pages_manage_posts pages_manage_engagement pages_read_user_content

ขั้นตอนที่ 4: แปลง User Access Token เป็นแบบ Long-Lived (สำคัญมากสำหรับสคริปต์)

เนื่องจาก User Access Token ที่ได้จาก Graph API Explorer เป็นแบบชั่วคราว หากนำไปใช้โดยตรง สคริปต์ของคุณจะหยุดทำงานเมื่อโทเค็นหมดอายุ ดังนั้นเราจะแปลงให้เป็นแบบ Long-Lived ก่อน
  1. ไปที่ “เครื่องมือ” (Tools) -> “Access Token Debugger” (อยู่ในเมนูด้านซ้ายมือ หรือค้นหาใน Google)
  2. วาง User Access Token แบบชั่วคราว ที่คุณคัดลอกมาใน ขั้นตอนที่ 3 ลงในช่อง “Access Token” แล้วคลิกปุ่ม “ดีบัก” (Debug)
  3. คุณจะเห็นข้อมูลของโทเค็น รวมถึงวันหมดอายุ (Expires). คลิกที่ปุ่ม “ขยายโทเค็น” (Extend Access Token)
  4. คัดลอก User Access Token แบบ Long-Lived ที่ปรากฏขึ้นมา (โทเค็นนี้จะอยู่ในช่อง “Access Token” อีกครั้ง แต่จะมีวันหมดอายุที่นานขึ้นมาก เช่น 60 วัน หรือไม่มีวันหมดอายุเลยหากเป็นโทเค็นของแอป)

ขั้นตอนที่ 5: ค้นหา Page ID และ Page Access Token (แบบ Long-Lived)

ตอนนี้เรามี User Access Token แบบ Long-Lived แล้ว เราจะใช้มันเพื่อดึง Page ID และ Page Access Token ของเพจที่คุณต้องการ
  1. กลับไปที่ “Graph API Explorer” อีกครั้ง
  2. วาง User Access Token แบบ Long-Lived ที่คุณคัดลอกมาใน ขั้นตอนที่ 4 ลงในช่อง “โทเค็นการเข้าถึง” (Access Token) แทนโทเค็นเก่า
  3. ในช่องคำขอ (Query field) ที่ปกติจะเป็น me?fields=id,name ให้เปลี่ยนเป็น me/accounts
  4. กด Enter หรือคลิกปุ่ม “ส่ง” (Submit)
  5. คุณจะเห็นผลลัพธ์ที่เป็น JSON แสดงรายการเพจที่คุณจัดการ ในแต่ละเพจจะมีข้อมูลดังนี้:
    • "name": ชื่อเพจของคุณ
    • "id": นี่คือ Page ID ของเพจนั้นๆ (ตัวเลขยาวๆ)
    • "access_token": นี่คือ Page Access Token ของเพจนั้นๆ (ซึ่งตอนนี้จะเป็นแบบ Long-Lived แล้ว เนื่องจากเราใช้ User Access Token แบบ Long-Lived ในการดึงมา)
  6. คัดลอก id และ access_token ของเพจที่คุณต้องการใช้สำหรับสคริปต์ของคุณ

ข้อควรระวัง:

  • ความปลอดภัยของโทเค็น: Page Access Token มีสิทธิ์ในการโพสต์บนเพจของคุณ ดังนั้นควรเก็บรักษาอย่างปลอดภัย ไม่ควรเปิดเผยต่อสาธารณะ
  • การหมดอายุของโทเค็น: แม้จะเป็น Long-Lived Token แต่ก็อาจมีวันหมดอายุได้ (เช่น 60 วัน) คุณอาจต้องเข้ามาดำเนินการซ้ำเพื่อต่ออายุโทเค็นเป็นระยะๆ หรือพิจารณาการใช้ System User Access Token สำหรับการทำงานแบบอัตโนมัติในระยะยาว ซึ่งซับซ้อนกว่านี้เล็กน้อย
  • การเปลี่ยนแปลง API: Facebook Graph API มีการอัปเดตอยู่เสมอ หากสคริปต์หยุดทำงานในอนาคต อาจเป็นเพราะมีการเปลี่ยนแปลงใน API ที่คุณต้องปรับตาม

เมื่อได้ page_id และ access_token มาแล้ว คุณสามารถนำไปใส่ในไฟล์ api.ini ของคุณได้เลยครับ

เข้าสู่ Facebook สำหรับนักพัฒนา

 หากโทเค็นไม่ถูกต้อง ให้ทำตามขั้นตอนเหล่านี้อีกครั้งอย่างละเอียดเพื่อรับ Page Access Token ที่ถูกต้อง:

รับ User Access Token พร้อมสิทธิ์ที่ถูกต้อง (อีกครั้ง): ไปที่: [developers.facebook.com/tools/explorer] เลือกแอปพลิเคชันของคุณ คลิก “รับโทเค็น” (Get Token) -> “รับโทเค็นผู้ใช้” (Get User Access Token) เลือกเฉพาะสิทธิ์เหล่านี้เท่านั้น: pages_show_list pages_read_engagement pages_manage_posts pages_manage_engagement pages_read_user_content คลิก “สร้างโทเค็น” (Generate Access Token) คัดลอก User Access Token ที่ได้มา แปลง User Access Token เป็นแบบ Long-Lived (สำคัญมาก): ไปที่: [developers.facebook.com/tools/debug/accesstoken/] วาง User Access Token แบบชั่วคราว ที่คุณคัดลอกมาใน ขั้นตอนที่ 2.1 ลงในช่อง “Access Token” แล้วคลิกปุ่ม “ดีบัก” (Debug) คลิกที่ปุ่ม “ขยายโทเค็น” (Extend Access Token) คัดลอก User Access Token แบบ Long-Lived ที่ปรากฏขึ้นมา ค้นหา Page ID และ Page Access Token ที่ถูกต้อง: กลับไปที่ “Graph API Explorer” อีกครั้ง วาง User Access Token แบบ Long-Lived ที่คุณคัดลอกมาใน ขั้นตอนที่ 2.2 ลงในช่อง “โทเค็นการเข้าถึง” (Access Token) แทนโทเค็นเก่า ในช่องคำขอ (Query field) ให้เปลี่ยนเป็น me/accounts กด Enter หรือคลิกปุ่ม “ส่ง” (Submit) คุณจะเห็นผลลัพธ์ที่เป็น JSON แสดงรายการเพจที่คุณจัดการ ค้นหาเพจที่คุณต้องการ และคัดลอกค่าของ id (Page ID) และ access_token (Page Access Token) ของเพจนั้นๆ Page Access Token ที่ได้จากขั้นตอนนี้แหละคือโทเค็นที่คุณต้องใช้ใน api.ini! ตรวจสอบสิทธิ์ของ Page Access Token นี้อีกครั้งใน Debugger เพื่อให้แน่ใจว่ามี pages_manage_posts