แสดงจำนวนยอดไลค์จากเฟสบุคในหน้าเว็บ

การเป็นนักพัฒนาเว็บไซต์มีเรื่องสนุกอยู่อย่างครับ นั่นคือการได้มีโอกาสทำงานกับหลากหลายธุรกิจ แต่ละธุรกิจก็จะมีโมเด็ลให้เราได้ศึกษา และมี Requirement สำหรับทำเว็บไซต์ที่แตกต่างกัน แต่ละงานที่ผมมีโอกาสได้เข้าไปมีส่วนร่วม เป็นประหนึ่งอีกหนึ่งห้องเรียนที่ทำให้ผมได้เรียนรู้และได้ใช้ทักษะที่มีมามาพัฒนาจาก Requirement ให้ออกมาเป็นรูปเป็นร่างขึ้นได้

share

เมื่อเร็วๆมานี้ ผมทำโปรเจ็คของลูกค้าท่านหนึ่งครับ ซึ่งหนึ่งใน Requirement ของลูกค้าคือสามารถเรียงลำดับความ Popular ของบทความได้ โดยเรียงจากยอด Like, Share ผ่านเฟสบุค ซึ่งก็เป็นอีกความต้องการที่ท้าทายความสามารถครับ เพราะว่าเว็บส่วนใหญ่ที่ทำไม่ค่อยมี Requirement แบบนี้สักเท่าไหร่

ผมจึงนำเทคนิคการทำมาแนะนำครับ โดยในบทความนี้ผมจะแนะนำการแสดงยอดทั้งหลายลงในเว็บไซต์ของเราครับ

ก่อนอื่นนั้นเราต้องมาดูก่อนว่า การที่เราจะสามารถแสดงยอดต่างๆบนเว็บไซต์ของเรานั้น เราต้องมีอะไรบ้าง?

อย่างแรก เราต้องมี URL ของหน้าเว็บที่เราต้องการเช็คยอดไลค์ก่อนครับ เช่น https://buksohn.com/case-study-for-making-wordpress-theme.html

อย่างที่สอง เราต้องใช้ Facebook API ในการตรวจเช็ค ซึ่ง จะมีโครงสร้างแบบนี้ครับ http://api.facebook.com/restserver.php?method=links.getStats&urls=[URL เว็บของเรา] เช่น ถ้าผมจะตรวจสอบยอดทั้งหมดจากลิงค์ด้านบน ผมก็เขียนว่า http://api.facebook.com/restserver.php?method=links.getStats&urls=https://buksohn.com/case-study-for-making-wordpress-theme.html

ลองคลิกลิงค์ ดูครับ แล้วจะเห็นว่ามันคืนค่าออกมาอย่างไร ใช่ครับ มันคืนค่าออกมาเป็นโครงสร้างภาษา XML ดังนี้

<link_stat>
<url>
WordPress Theme ใครๆก็ทำได้ Case Study จากเด็กอายุ 16
</url> <normalized_url>
WordPress Theme ใครๆก็ทำได้ Case Study จากเด็กอายุ 16
</normalized_url> <share_count>13</share_count> <like_count>119</like_count> <comment_count>11</comment_count> <total_count>143</total_count> <click_count>0</click_count> <comments_fbid>668972889853410</comments_fbid> <commentsbox_count>3</commentsbox_count> </link_stat> </links_getStats_response>

และถ้าเราต้องการจะพิมพ์ค่าต่างๆพวกนี้ออกมาบนหน้าเว็บ เราก็แค่ echo มันออกมาครับ เดี๋ยวเรามาดูโค้ดการใช้งานเต็มกันครับ

<?php
$source_url = "https://buksohn.com/case-study-for-making-wordpress-theme.html";
$url = "http://api.facebook.com/restserver.php?method=links.getStats&urls=".urlencode($source_url);
$xml = file_get_contents($url);
$xml = simplexml_load_string($xml);

echo "Share --- ".$shares = $xml->link_stat->share_count;
echo "<br/>";

echo "Like --- ".$likes = $xml->link_stat->like_count;
echo "<br/>";

echo "Comments ---".$comments = $xml->link_stat->comment_count;
echo "<br/>";

echo "Total --- ".$total = $xml->link_stat->total_count;
echo "<br/>";

echo $max = max($shares,$likes,$comments);
?>

และนี่แหล่ะครับคือการแสดงค่ายอดไลค์ยอดแชร์ หรือยอดต่างๆของเฟสบุคบนเว็บไซต์ของเรา ใครอยากจะเอาไปปรับแต่งอย่างไรก็ นำไปประยุกต์ต่อยอดเองได้เลยนะครับ สำหรับเทคนิคนี้ ต้องขอบคุณ เครดิตเว็บ stackoverflow.com ที่เป็นแหล่งเรียนรู้ดีๆ ให้ผมได้ศึกษาหาความรู้และนำมาใช้งานครับผม

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

ยอมรับทั้งหมด
Manage Consent Preferences
  • คุกกี้ที่จำเป็น
    Always Active

    ประเภทของคุกกี้มีความจำเป็นสำหรับการทำงานของเว็บไซต์ เพื่อให้คุณสามารถใช้ได้อย่างเป็นปกติ และเข้าชมเว็บไซต์ คุณไม่สามารถปิดการทำงานของคุกกี้นี้ในระบบเว็บไซต์ของเราได้

  • คุกกี้เพื่อการวิเคราะห์

    คุกกี้ประเภทนี้จะทำการเก็บข้อมูลการใช้งานเว็บไซต์ของคุณ เพื่อเป็นประโยชน์ในการวัดผล ปรับปรุง และพัฒนาประสบการณ์ที่ดีในการใช้งานเว็บไซต์ ถ้าหากท่านไม่ยินยอมให้เราใช้คุกกี้นี้ เราจะไม่สามารถวัดผล ปรับปรุงและพัฒนาเว็บไซต์ได้

  • คุกกี้เพื่อปรับเนื้อหาให้เข้ากับกลุ่มเป้าหมาย

    คุกกี้ประเภทนี้จะเก็บข้อมูลต่าง ๆ รวมทั้งข้อมูลวส่วนบบุคลเกี่ยวกับตัวคุณเพื่อเราสามารถนำมาวิเคราะห์ และนำเสนอเนื้อหา ให้ตรงกับความเหมาะสมกับความสนใจของคุณ ถ้าหากคุณไม่ยินยอมเราจะไม่สามารถนำเสนอเนื้อหาและโฆษณาได้ไม่ตรงกับความสนใจของคุณ

บันทึก