ผู้เขียน หัวข้อ: ผนึกกำลัง Facebook, Twitter และ Google+  (อ่าน 682 ครั้ง)

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

ออฟไลน์ smf

  • [color=green][i]"ถ้าคุณไม่สามารถอธิบายอย่างง่ายๆ ให้คนอื่นเข้าใจได้แล้วล่ะก็ แสดงว่าคุณยังเข้าใจมันไม่ดีพอ"[/i][/color]
  • Administrator
  • Hero Member
  • *****
  • กระทู้: 1,368
  • พอยท์: 5
    • ดูรายละเอียด
    • pordoo.com
    • อีเมล์
ผนึกกำลัง Facebook, Twitter และ Google+
« เมื่อ: 10 สิงหาคม 2016, 02:26:08 »
ตอนนี้อะไรที่เป็น Social Network ช่วยให้เว็บของเรามีการประชาสัมพันธ์ออกไปได้ง่ายกว่าแต่ก่อน ซึ่งตัว WordPress เองก็มี Plugin อยู่หลาย ๆ ตัวที่ใช้สำหรับที่จะผนึกกำลัง WordPress ของเรากับบรรดา Social Network ต่าง ๆ แต่ครั้งนี้ไม่ได้มาแนะนำ Plugin นะครับ แต่เราจะมาเขียนการเชื่อมต่อ ๆ ต่างเองครับ ^^

Facebook Comment
 เดี๋ยวนี้คนเราก็ Sign in facebook ไว้ตลอดอยู่แล้ว เลยเป็นเรื่องง่ายที่จะใช้ Facebook Comment แทนที่ WordPress Comment ที่เราใช้งานอยู่

นอกเรื่องนิดนึง เรายังมีระบบ Comment แบบอื่นที่ใช้แทนที่ตัว WordPress Comment ได้ อย่างเช่น IntenseDebate หรือ Disqus ซึ่งทั้งสองตัวก็มี Plugin ที่ใช้งานกับ WordPress โดยเป็น IntenseDebate Comments และ Disqus Comment System

ซึ่งจริง ๆ แล้วตัว Facebook Comment นั่นก็มี Plugin สำหรับ WordPress ไว้อยู่เหมือนกัน ก็คือ Facebook Comments for WordPress แต่ไม่รู้เหมือนกัน ว่าทำไมบางทีบางคนที่ติดตั้งก็ใช้งานมันไม่ได้ ดังนั้นก็ตัดปัญหาโดยไปจัดการเขียนมันเองแล้วกัน

 สร้าง Facebook Application
ก่อนจะติดตั้ง Facebook Comment ลงในเว็บของเรา ให้เราไปสร้าง Facebook Application ก่อน ไปที่ Facebook Application กดที่ “+ Create New App” จะปรากฎแบบนี้ ก็กรอกข้อมูลลงไป



หลังจากที่สร้างเสร็จแล้ว ก็จะได้ Application มาประมาณนี้ครับ



ติดตั้ง Facebook Comment ลงในเว็บของเรา ไปเอา Code จากที่ Facebook Comments plugin page กรอกข้อมูลของตัว Facebook Comment ลงไป





กด Get Code เราก็จะได้ส่วนของ Code ที่เราจะนำไปแปะในเว็บของเรา อย่าลืมเลือก Application ให้ตรงกับที่เราสร้างขึ้นมาด้วยนะครับ





คราวนี้เราไปแก้ไขตัว header.php โดยนำ code ในส่วนหัวข้อที่ 1 ไปวางแปะหลังจาก tag body

 
<div id="fb-root"></div>
 <
script>(function(dsid) {
 var 
jsfjs d.getElementsByTagName(s)[0];
 if (
d.getElementById(id)) return;
 
js d.createElement(s); js.id id;
 
js.src "//connect.facebook.net/en_US/all.js#xfbml=1&appId=เลขที่ Application ID ของเรา";
 
fjs.parentNode.insertBefore(jsfjs);
 }(
document‘script’‘facebook-jssdk’));</script>
 

หลังจากนั้นเราจะนำส่วนหัวข้อที่ 2 ไปแทนที่ส่วนของ WordPress Comment แต่อย่าลืมเปลี่ยนในส่วนของหัวข้อ data-href ให้เป็น <?php the_permalink(); ?> ด้วยนะครับ เพื่อที่เราจะแยก Comment ในแต่ละหน้าออกจากกัน

 
<div class="fb-comments" data-href="<?php the_permalink(); ?>" data-num-posts="10" data-width="870"></div>
 

แล้วส่วนนี้จะไปวางแปะที่ไหนเหรอ ก็ให้ไปที่ comments.php แล้วนำ code นี้ไปวางแปะแทนที่ทั้งหมดไปเลย หรือจะเขียนเงื่อนไขในการแสดงก็ตามใจแต่เราจะปรับแต่งเลยครับ ซึ่งเราสามารถไปดูรวม Comment ในเว็บเราได้ที่ Comment Moderation tool

 ดึง Latest Tweet ของเรามาโชว์
 โดยเราจะดึงตัว RSS ของตัว Twitter มาใช้ ซึ่งตัว RSS ที่เราจะใช้ก็คือ
http://api.twitter.com/1/statuses/user_timeline.rss?screen_name=xxxxx


 ตัว xxxxx นั้นก็ให้เราใส่ชื่อลงไป เช่นของผม @Rabbitinblack ก็ใส่เป็น
http://api.twitter.com/1/statuses/user_timeline.rss?screen_name=rabbitinblack


ส่วน Code ที่เราจะนำไปใช้ก็มาจาก CSS Tricks โดยปรับมาใช้แบบนี้ครับ

 
<?php
 
include_once(ABSPATH WPINC /feed.php’);
 
$rss fetch_feed(‘https://api.twitter.com/1/statuses/user_timeline.rss?screen_name=rabbitinblack’);
 
$maxitems $rss->get_item_quantity(3);
 
$rss_items $rss->get_items(0$maxitems);
 
?>
 <ul>
 <?php if ($maxitems == 0) echo <li>No items.</li>;
 else
 
// Loop through each feed item and display each item as a hyperlink.
 
foreach ( $rss_items as $item ) : ?>
 <li><a href='<?php echo $item->get_permalink(); ?>’><?php echo $item->get_title(); ?></a></li>
 <?php endforeach; ?>
 </ul>
 

จากที่ผมทดลองดูตัว get_item_quantity จะได้สูงสุดที่ 20 นะครับ ที่เหลือจะเพิ่มเติม code หรือจะนำไปวางไว้ตรงไหนก็แล้วแต่เราเลยครับ

ดึง Tweet ที่เรา Favorite ไว้
ถ้าตามไปดูที่เว็บ CSS Tricks จะเห็นว่าเค้าดึงเป็น Tweet ที่ Favorite ไว้ ดังนั้นเราจึงทราบว่า ต้องใช้ RSS ที่ตัวไหน
http://twitter.com/favorites/xxxxx.rss

เช่นกันในส่วนของ xxxxx ก็ให้เป็นชื่อแทน
http://twitter.com/favorites/rabbitinblack.rss

ใช้ Official Twitter Widget
เราสามารถสร้าง Twitter Widget ได้ง่าย ๆ โดยไปที่ official Twitter profile widget



และหลังจากที่ปรับแต่งค่าต่าง ๆ เสร็จแล้ว ก็นำ Code ไปใช้งานได้แล้วครับ วิธีที่ง่ายที่สุดก็คือในส่วนของหลังบ้าน WordPress ของเรา เข้าไปที่
Appearance => Widgets

แล้วก็เพิ่มตัว Text Widget ลงไป แล้วในช่องที่ให้กรอกข้อความ ก็แปะ Code ที่ได้มาจากตัว Official Twitter Widget มาแปะก็เสร็จแล้วครับ

แต่ Plugin สำหรับ Twitter ก็มีนะ
แน่นอนครับ สำหรับ WordPress ที่มี Plugin ให้เราเลือกเยอะแยะมากมายอยู่แล้ว จะไม่มี Plugin สำหรับตัว Twitter Widget ก็ยังไงอยู่
เพิ่มปุ่ม Share ไปยัง Facebook, Twitter และ Google+




เรามาดูกันทีละตัวเลยแล้วกันนะครับ โดย Code เราก็ต้องมีการปรับเปลี่ยนเพื่อให้ใช้ในทุกจุด

 Facebook
สำหรับตัว Facebook Like Button นั้น เมื่อเราเข้าไปปรับแต่งค่าต่าง ๆ เพื่อนำมาใช้งานในเว็บเราแล้ว





โดย Code ที่ได้ในส่วนที่ 1 จะเหมือนกับที่เราได้ตอนทำ Facebook Comment ดังนั้นถ้าเราเคยแปะ Code ในส่วนที่ 1 ในส่วนของ header.php ด้านล่างของ tag body ไปแล้ว ก็ไม่ต้องแปะซ้ำ





แต่ในส่วนที่ 2 นั้น จะมีการเพิ่ม href="<?php the_permalink(); ?>" ลงไปเพิ่มเติมจาก

 
<div class="fb-like" data-href="[url=http://pordoo.com/go.php?url=http://www.rabbitinblack.com]http://www.rabbitinblack.com[/url]" data-send="false" data-layout="button_count" data-width="55" data-show-faces="false"></div>
 

เป็น

 
<div class="fb-like" data-href="[url=http://pordoo.com/go.php?url=http://www.rabbitinblack.com]http://www.rabbitinblack.com[/url]" href="<?php the_permalink(); ?>" data-send="false" data-layout="box_count" data-width="55" data-show-faces="false"></div>
 


Twitter
 สำหรับ Twitter Button นั้น เลือกที่ Share a link เพื่อสร้างปุ่มขึ้นมา





ซึ่ง Code ที่ได้มาเป็นแบบนี้ครับ

 
<a href="[url=http://pordoo.com/go.php?url=https://twitter.com/share]https://twitter.com/share[/url]" class="twitter-share-button" data-via="Rabbitinblack">Tweet</a>
 <
script>
 !function(
d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
 </
script>
 

โดยเราจะเพิ่มส่วนของ data-text="<?php the_title(); ?>" และ data-url="<?php the_permalink(); ?>" แต่ถ้าอยากได้ปุ่มแบบมีการนับในแนวตั้งก็ให้ใส่ data-count="vertical" ลงไปด้วย

 
<a href="[url=http://pordoo.com/go.php?url=https://twitter.com/share]https://twitter.com/share[/url]" class="twitter-share-button" data-via="Rabbitinblack" data-count="vertical" data-text="<?php the_title(); ?>" data-url="<?php the_permalink(); ?>">Tweet</a>
 <
script>
 !function(
d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");
 </
script>
 


ซึ่งเราสามารถหาข้อมูลของ Tweet Button ได้เพิ่มที่ official Twitter button documentation page

 Google+
 
และสุดท้ายกับปุ่ม +1 ของ Google+ นั้น เมื่อเราปรับแต่งรูปแบบของปุ่ม +1 แล้ว



Code ที่ได้มานั้น

 
<!– Place this tag where you want the +1 button to render –>
 <
g:plusone size="tall"></g:plusone>
<!
– Place this render call where appropriate –>
 <
script type="text/javascript">
 (function() {
 var 
po document.createElement(‘script’); po.type ‘text/javascript’po.async true;
 
po.src ‘https://apis.google.com/js/plusone.js’;
 
var document.getElementsByTagName(‘script’)[0]; s.parentNode.insertBefore(pos);
 })();
 </
script>
 


เราแค่เพิ่ม href="<?php the_permalink(); ?>" ลงไปในส่วน g:plusone แบบนี้ครับ

 
<!– Place this tag where you want the +1 button to render –>
 <
g:plusone size="tall" href="<?php the_permalink(); ?>"></g:plusone>
<!
– Place this render call where appropriate –>
 <
script type="text/javascript">
 (function() {
 var 
po document.createElement(‘script’); po.type ‘text/javascript’po.async true;
 
po.src ‘https://apis.google.com/js/plusone.js’;
 
var document.getElementsByTagName(‘script’)[0]; s.parentNode.insertBefore(pos);
 })();
 </
script>
 


เท่านี้ก็เสร็จแล้ว เราสามารถหาข้อมูลของปุ่ม +1 เพิ่มเติมได้ที่ official Google+ button documentation page ครับ ^^




ที่มา: http://rabbitinblack.com/2012/01/wordpress-integrate-facebook-twitter-google-plus/
« แก้ไขครั้งสุดท้าย: 10 สิงหาคม 2016, 02:55:07 โดย smf »