บทความนี้เขียนตั้งแต่ปี 2011 ซึ่งแปลว่ามันเก่าแล้วครับ ปัจจุบัน Facebook ปิด API ไปหลายตัวแล้ว และถ้าต้องการ แชร์ Post ก็แนะนำให้ไปอ่านเองที่ https://developers.facebook.com/docs/web/share ครับ
มาเขียนโปรแกรมภาษา PHP ร่วมกับ Facebook API สำหรับการทำ Auto Post ข้อความสำหรับ Share Link ที่คุณต้องการให้มาปรากฏที่หน้า Wall Profile ของคุณ หรือเพื่อนของคุณเวลาที่พวกเขาเข้าไปที่ Link ดังกล่าวแล้วกด Share น่าจะได้ประโยชน์กับแคมเปญพวก Microsite หรือแคมเปญสำหรับ PR สินค้าหรือบริการที่ต้องการการบอกต่อ มาดูกันครับว่าการทำนั้นไม่ยากเลย บทความนี้เหมาะสำหรับผู้เริ่มต้นเขียน API Facebook นะครับ
ขั้นแรกเลยให้ไปดาวน์โหลด Facebook API Library สำหรับ PHP ที่ URL นี้ครับ https://github.com/facebook/php-sdk/ อันที่จริงก็คือ Library ตัวเดียวกับที่เขียนลงบนบทความ เรียกจำนวนสมาชิกใน Facebook Fan Page ออกมาเป็น Interger ด้วย PHP เลยครับ
สร้างไฟล์ fb.php ขึ้นมาแล้วนำไปวางไว้ Folder เดียวกับ PHP Library ตัวนี้ครับ ตามภาพก็ได้
ไปที่หน้า https://developers.facebook.com/apps/ เพื่อไปทำการ Register Apps ขึ้นมาครับในตัวอย่างผมตั้งชื่อ App ว่า Banyapon ชื่อ NameSpace นี้ทำมาเล่นๆ เลยใส่ชื่อผมไปเองซะเลยครับเมื่อเสร็จแล้วกด Save เราจะได้ค่า App ID และ App Secret มาทำการ Copy ไว้เช่นกันครับ
สิ่งที่เราจะต้องใช้นั้นมีอยู่ 2 อย่างคือ App ID และ App Secret ครับอย่าให้คนอื่นได้รู็เลยเชียวนา..
ไปที่ไฟล์ fb.php ให้ใส่ Code ตามข้างล่างเลยครับ
'App ID ของคุณ',
'secret' => 'App Secret ของคุณ',
);
$facebook = new Facebook($config);
$user_id = $facebook->getUser();
?>
api('/me/feed', 'POST',
array(
'link' => 'https://www.daydev.com/',
'message' => '@daydev บัญญพนต์ พูลสวัสดิ์ เจ้าของเว็บไซต์ www.daydev.com เว็บไซต์รวบรวม บทความออนไลน์สำหรับนักพัฒนาด้าน Development, Integration และ Augmented Reality แห่งแรกของประเทศไทย ',
'photo' => 'https://www.daydev.com/images/stories/news/style-daydev.jpg'
));
echo 'Post ID: ' . $ret_obj['id'] . '';
} catch(FacebookApiException $e) {
$login_url = $facebook->getLoginUrl( array(
'scope' => 'publish_stream'
));
echo 'Please login.';
error_log($e->getType());
error_log($e->getMessage());
}
echo '
logout';
} else {
$login_url = $facebook->getLoginUrl( array( 'scope' => 'publish_stream' ) );
echo 'Please login.';
}
?>
หรือถ้าขี้เกียจแกะหรือ Copy ก็ให้ไปดาวน์โหลดได้ที่นี่ครับ https://www.daydev.com/fancount/fb.zip
เอาล่ะ มาทดสอบกันหน่อยดีกว่าว่ามันจะ Work ไหม!
ก่อนอื่นเลยก็ผม Upload ไฟล์ fb.php ไว้ที่ Folder ชื่อ fancount ผมก็ต้องเข้าไปที่ URL https://www.daydev.com/fancount/fb.php นี้ครับ เพื่อทำการ Authen เข้าสู่ระบบของ Facebook ซึ่งหน้าจอจะไม่มีอะไรเลยนอกจาก Link ให้เราทำการ Login เข้าระบบ
ระบบจะมีการตรวจของ Access เข้าไป Profile ของเราครับ
เมือ่เราทำการ Allow ไปแล้วมันจะมีการเข้า Session เล็กน้อย จนกระทั่งเราพบกันหน้าจอแบบด้านล่างนี้
ไหนๆ ก็ลองไปดูที่หน้า Wall ของเราซะหน่อย
เห็นไหมครับมันไม่ยากเลยซักนิด Source Code ทั้งหมดไม่ได้หวงนะครับ เพื่อนๆ โปรแกรมเมอร์มือใหม่ก็ลองฝึกวิทยายุทธกันได้กับชุดพัฒนานี้ครับ แต่อย่าไปเขียนอะไรให้มัน Annoy คนอื่นๆ นะครับคราวหน้าพบกันใหม่ครับ สวัสดี 🙂
โห ขอบคุณมากครับเจ๋งมากเลย
ทดสอบการpost
http://www.youtube.com/watch?v=3aqrnjePGqc
Code นี้เก่าแล้วนะครับ ผมอัพเด็ตใหม่ไปแล้ว.
แล้วถ้าผมต้องการให้มัน tag เพื่อนผมด้วยอ่ะครับ ต้องเขียนโค้ดอะไรเพิ่มเข้าไปครับ ขอบคุณมากครับผม
ขอลิงค์ที่อัพเดตใหม่หน่อยได้ป่ะคะ
ผมสมัคร เจ้าตัว developers.facebook แต่มันติดตรงการยืนยัน เบอร์โทรศัพท์ แต่เมื่อได้รับ sms แล้ว มันเป็นการสมัครใช้ facebook on mobile แทน นะครับ พอจะทราบรายละเอียดไหมครับ (ผมลอง search ใน google แล้ว แต่หาทางออกไม่ได้เลยครับ) ยังไง รบกวนผู้รู้ด้วยนะครับ.
ต้องรอมัน ส่งมาอย่างเดียว ตามที่คุยกันไว้แหละครับ
มัน API error อะค่ะ.