อีก 1 วิธีของการโปรโมท RSS ของเว็บไซต์คุณ

Monday, March 29th, 2010

หากคุณเป็นคนช่างสงสัย และเคยสงสัยว่าทำไมบางเว็บไซต์ที่เปิดด้วย Firefox ตรงที่ช่อง address bar จึงมีโลโก้ แบบนี้

rss_icon.jpg
ไอคอน RSS

ซึ่งจะแสดงผลออกมาในรูปแบบนี้

29-3-2553-21-48-06.jpg

ซึ่งจะมีแค่ในบางเว็บไซต์เท่านั้น ซึ่งจะเป็นส่วนน้อยที่จะเห็นมีแบบนี้ ซึ่งที่เห็นมีมากกับเว็บที่มีการใช้ Wordpress , SMF ซะเป็นส่วนมาก หรือ พวก Opensource ของต่างประเทศที่เวลานำมาใช้งานแล้วจะเห็นมีโลโก้แบบนี้

จริงๆแล้วมันเป็นวิธีการโปรโมท RSS (อยากรู้ว่า RSS คืออะไรตามไปอ่านได้ที่ http://th.wikipedia.org/wiki/Rss )  เพื่อให้การเรียกดู RSS ของเว็บไซต์ทำได้ง่ายมากขึ้น เพียงแค่คลิกที่ไอคอนที่ Address bar ก็จะเปิดหน้า RSS นั้นๆออกมาให้ได้ดูกันเลย ดังรูป

 29-3-2553-21-58-14.jpg

วิธีการสร้างดังกล่าวก็ทำง่ายๆเพียงแค่ใส่ Tag Html เข้าไปดังนี้

link rel=”alternate” type=”application/rss+xml” title=”YOUR SITE TITLE RSS Feed” href=”URL TO RSS FILE”/

ดังตัวอย่าง

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html xmlns=”http://www.w3.org/1999/xhtml”>
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=Tis-620″ />
<title>## MOCYC.COM ## Everything about thailand motorcycle.</title>
<link rel=”alternate” type=”application/rss+xml” title=”Mocyc.com - RSS” href=”http://www.mocyc.com/rss/news.xml” />
<style type=’text/css’ media=’all’>@import url(’styles/style.css’);</style>

และสำหรับ IE เองก็มีเช่นกันครับ หากเปิดเว็บไซต์ที่มี Tag นี้อยู่จะปรากฏไอคอนดังนี้เช่นกัน

29-3-2553-22-13-11.jpg

 ยังไงก็ลองดูนะครับเผื่อมันจะเป็นอีกหนึ่งวิธีที่ช่วยโปรโมท RSS ของคุณ และ โปรโมทเว็บไซต์ของคุณเอง…

ใช้ CURL ในการแสดงผล XML

Friday, January 23rd, 2009

เมื่อวานก็เพิ่งโพสไปสำหรับการดึงข้อมูลแบบ JSON มาแสดง โดยอาศัยคำสั่ง curl ซึ่งใช้งานสะดวกและสั้นกว่าการใช้งานพวก fopen มาก มาวันนี้ก็เลยคิดว่าหากดึงเอา XML มาแสดงผลโดยใช้ curl หล่ะ มันก็คงไม่ได้ยากอะไรมากมายแน่นอน

ขออ้างไปยังข้อมูลที่เกี่ยวกับ XML ซะก่อนซึ่งเอามาจาก wikipedia โดยได้พูดถึง XML ไว้ดังนี้

เอกซ์เอ็มแอล (อังกฤษ: XML) ย่อมาจาก Extensible Markup Language ซึ่งเป็นภาษามาร์กอัปสำหรับการใช้งานทั่วไป พัฒนาโดยW3C โดยมีจุดประสงค์เพื่อเป็น สิ่งที่เอาไว้ติดต่อกันในระบบที่มีความแตกต่างกัน (เช่นใช้คอมพิวเตอร์มี่มีระบบปฏิบัติการคนละตัว หรืออาจจะเป็นคนละโปรแกรมประยุกต์ที่มีความต้องการสื่อสารข้อมูลถึงกัน) นอกจากนี้ยังเพื่อเป็นพื้นฐานในการสร้างภาษามาร์กอัปเฉพาะทางอีกขั้นหนึ่ง XML พัฒนามาจาก SGML โดยดัดแปลงให้มีความซับซ้อนลดน้อยลง XML ใช้ในแลกเปลี่ยนข้อมูลระหว่างเครื่องคอมพิวเตอร์ที่แตกต่างกัน และเน้นการแลกเปลี่ยนข้อมูลผ่านอินเทอร์เน็ต

XML ยังเป็นภาษาพื้นฐานให้กับภาษาอื่นๆ อีกด้วย (ยกตัวอย่างเช่น Geography Markup Language (GML) , RDF/XML, RSS, MathML, Physical Markup Language (PML) , XHTML, SVG, MusicXML และ cXML) ซึ่งอนุญาตให้โปรแกรมแก้ไขและทำงานกับเอกสารโดยไม่จำเป็นต้องมีความรู้ในภาษานั้นมาก่อน 

ซึ่งผมจะลองดึง XML จาก feed ใน Blog ของผมเองนะครับ ซึ่งลิงก์ของ Feed ผมก็คือ http://www.myblog.in.th/feed/ ลองคลิกดูได้นะครับ

เมื่อผมลองเปิด URL นั้นใน IE ก็จะแสดงผลดังรูปนี้นะครับ

curl-xml-001.jpg

แล้วเมื่อลองดูโค๊ดของ Feed ที่ได้โดยการ view source ก็จะได้โค๊ดแบบนี้

<?xml version=”1.0″ encoding=”UTF-8″?>
<!– generator=”wordpress/2.3.1″ –>
<rss version=”2.0″
 xmlns:content=”
http://purl.org/rss/1.0/modules/content/
 xmlns:wfw=”
http://wellformedweb.org/CommentAPI/
 xmlns:dc=”
http://purl.org/dc/elements/1.1/
 >

<channel>
 <title>U call me MAX</title>
 <link>http://www.myblog.in.th</link>
 <description>เขาเรียกผมว่า เว็บมาสเตอร์</description>
 <pubDate>Thu, 22 Jan 2009 16:43:24 +0000</pubDate>
 <generator>http://wordpress.org/?v=2.3.1</generator>
 <language>en</language>
   <item>
  <title>JSON เคยใช้กันบ้างไหม ?</title>
  <link>http://www.myblog.in.th/2009/01/22/json/</link>
  <comments>http://www.myblog.in.th/2009/01/22/json/#comments</comments>
  <pubDate>Thu, 22 Jan 2009 16:36:05 +0000</pubDate>
  <dc:creator>admin</dc:creator>
  
  <category><![CDATA[PHP]]></category>

  <category><![CDATA[ความรู้]]></category>

  <category><![CDATA[json]]></category>

  <category><![CDATA[xml]]></category>

  <guid isPermaLink=”false”>http://www.myblog.in.th/2009/01/22/json/</guid>
  <description><![CDATA[สำหรับการส่งข้อมูลในการใช้งานไม่ว่าจะเป็นพวก Web Service ต่างๆพวกเราอาจจะคุ้นกับ XML ซะเป็นส่วนมาก แต่ในบางครั้งนักพัฒนาก็ต้องเจอข้อจำกัดของตัว XML เองบางครั้งก็เลยทำให้นักพัฒนาต้องหาการใช้งานดาต้าในรูปแบบอื่นๆเพื่อนำมาใช้งานกัน
ซึ่ง JSON หรือ JavaScript Object Notation เป็นข้อมูลสำหรับแลกเปลี่ยนที่เล็ก ง่ายสำหรับการ อ่าน และ เขียน ซึ่งจะว่าไปแล้ว JSON ก็คล้ายกับ XML ก็คือเป็นข้อมูลแบบเป็นไฟล์ text ธรรมดาๆ ที่มี Format ที่เป็นมาตรฐานและโครงสร้างของไฟล์ที่ตายตัว
JSON มี 2 รูปแบบคือ
1. แบบ Key pair value
2. แบบ list

ในรูปเป็นตัวอย่างโครงสร้างของข้อมูลในแบบ object และในแบบ array
ที่มาพูดถึง JSON ก็เพราะว่าคุยกะ 9AUM แห่ง Scriptdd.com แล้ว ได้ไฟล์ Plugin Wordpress ที่ดึงเอารูปจากเว็บ PG.in.th มาแสดง ไอ้ผมก็เลยไปลองดึงข้อมูลจากทางเว็บ PG […]]]></description>
 

อะไรประมาณนี้นะครับ ซึ่งเป็นมาตรฐานของ XML  เอาล่ะมาเขียนโค๊ดเพื่อดึงเอา XML นี้เพื่อไปแสดงที่อื่น หรือเว็บอื่นๆของผม หรือใครที่อยากจะดึงเอา Feed ของผมไปแปะในเว็บก็ไม่ว่ากัน

เขียนโค๊ดโดยใช้ความสามารถของ curl ครับ ดังนี้

<?php
$ch = curl_init(”
http://www.myblog.in.th/feed/“); //URL จาก feed ในเว็บผมครับ
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
$data = curl_exec($ch);
curl_close($ch);

$doc = new SimpleXmlElement($data, LIBXML_NOCDATA);

if(isset($doc->channel))
{
    parseRSS($doc);
}

function parseRSS($xml)
{
    //echo “<strong>”.$xml->channel->title.”</strong>”; //ไม่อยากให้โชว์ไตเติ้ลครับ
    $cnt = count($xml->channel->item);
    for($i=0; $i<$cnt; $i++)
    {
         $url  = $xml->channel->item[$i]->link;
         $title  = $xml->channel->item[$i]->title;
         $desc = $xml->channel->item[$i]->description;
 
 echo ‘<a href=”‘.$url.’”>’.$title.’</a>’.$desc.’<br /><br />’; //แสดงผลรายการแต่ละอัน
    }
}

?> 

จากนั้นลองดูผลที่ได้ในการเขียนโค๊ดนี้ ก็ได้ผลดังนี้

curl-xml-002.jpg

จากนั้นผมลองเปลี่ยนไปดึงเอา RSS ของอีกที่หนึ่งมาจากเว็บ motogp.com โดยมี URL คือ http://www.motogp.com/en/news/rss และเมื่อลอง Refresh ก็แสดงผลดังนี้ครับ

curl-xml-003.jpg

อาจจะเป็นอีกไอเดียในการดึง XML มาแสดงผล โดยไม่ได้ใช้คำสั่ง fopen นะครับ

Editor's Talk!

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

นายแม็ค

ค้นหา :