YQLコンソールでデータを確認してみる。
まずはYQLコンソールにアクセスしてどんなデータになるのか見てみましょう。
YQL Console
URLにアクセスするとこんな画面が表示されるはずです。
![]()
上部の「show tables」と書いてあるフィールドにYQLを入力します。
入力するコードはSQLのようにselect文を使用します。URLを指定してRSSを取得するにはこんな感じでいけます。
select * from rss where url='[feed url]’
[feed url]のところは当然ですが取得したいURLに置き換えてください。
Wordpressの場合「blogurl/feed」がRSSのURLになっています。このBlogを例にすると。「https://www.webopixel.net/feed」ですね。
入力したら「json」にチェックして「TEST」ボタンを押します。
![]()
問題がなければその下の「FORMATTED VIEW」にだだーっと取得した情報が表示されます。
見にくかったらその隣の「TREE VIEW」タブを選択すればツリー表示にして見やすく表示してくれます。
![]()
RSS情報を全部使いたいって場合はこれでいいんですが、たとえばタイトルとリンクURLだけ使いたいって場合は取得したいものだけを指定した方がスマートです。
「select *」を「select title,link」に変えます。
select title,link from rss where url='[feed url]’
jQueryで取得した情報を表示
ではYQLで変換してくれた情報を取得してみましょう。
まずhtmlで適当にマークアップしておきます。
html
<div id="container"> <h1>YQLでRSSをjsonで取得してjQueryで扱う。</h1> <div id="article"></div> </div>
「article」に取得したRSSを追加していきます。
javascript
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$.getJSON("http://query.yahooapis.com/v1/public/yql?callback=?", {
q: "select title,link from rss where url='https://www.webopixel.net/feed'",
format: "json"
}, function (json) {
for(var i in json.query.results.item){
$("#article").append("<p><a href='"+ json.query.results.item[i].link +"'>" + json.query.results.item[i].title + "</a></p>");
}
});
});
</script>
「q」というパラメートにコンソールで入力したYQL文を入力します。
これで表示できるはずです。
この方法なら例えばhtmlのトップページにブログの情報を表示することとかもできそうですね。(そのくらいならもっと良い方法があると思いますが……)
jsonの扱い方はこちらの記事も参考にしてみてください。
jQueryでjsonデータを扱ってみる【入門編】


