kintoneを使って野球アンテナをつくる その2 ひな型サイト構築編

前回の記事では、「kintone」を利用できるようにするまで進みました。

今回は早速kintoneでアプリ構築...と行きたいとことですが、まず最初に、野球ニュースのアンテナサイトのひな形サイトを構築します。

アンテナサイトを構築する場合、フィードを登録してマージするシステムが必要となります。

今回は、phpのライブラリ「SimplePie」を使って、フィードのパースを行います。

SimplePieとは

New BSD ライセンスで配布されている、PHPベースのRSSパーサーです。 以下で配布されています。

必要環境

ドキュメントによると以下のとおり

  • PHP 5.2.0 以上
  • libxml2 ( 2.7.x は不安定なので避けたほうが良いとのこと)
  • iconv と mbstring
  • cURLかfsockopen()

使い方

オンラインでドキュメンテーションが公開されています。 1.2xまでは、simplepie.incというファイルを使っていたそうですが、1.3x以降は構造が変わったとのことです。 以下が詳しいです。 http://1bit.mobi/20100227021213.html

インストール

以下は1.3.xのインストール方法です。

  • /library 以下を全部
  • autoloader.php

の2つを、利用したいディレクトリへ配置します。 利用するときは、autoloader.phpを一度requireしてから、各メソッドを呼び出します。

フィードのパース用コード

今回は、以下の4つのニュースサイトを利用することにしました。

以下、復数のRSSフィードをマージして、一覧表示するためのコードです。

<?php
// SimplePieを呼び出し 
require_once('autoloader.php');
// SimplePieの関数 set_feed_url にフィードリストを読みこませる
$feed = new SimplePie();
$feed->set_feed_url(array(
        'http://sportiva.shueisha.co.jp/clm/baseball/pro/rss.xml',
        'http://baseballking.jp/atom.xml',
        'http://number.bunshun.jp/list/rsssports?w=%E3%83%97%E3%83%AD%E9%87%8E%E7%90%83',
        'http://full-count.jp/category/npb/feed/',
));
$feed->init();
?>

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>SimplePie test</title>
</head>
<body>

<h1>Simple Pie test</h1>
 
    <?php
    foreach ($feed->get_items() as $item):
    ?>

        <div>
            <h2><a href="<?php echo $item->get_permalink(); ?>"><?php echo $item->get_title(); ?></a></h2>
            <p><?php echo $item->get_description(); ?></p>
            <p><small><?php echo $item->get_date('Y-m-d H:i'); ?></small></p>
            <p>blog title:<?php echo  $item->get_feed()->get_title(); ?></p>
        </div>

    <?php endforeach; ?>

</body>
</html>

これで、フィードをパース=>時系列に並び替えるひな形プログラムの完成です。

これだけではちょっとデザイン的にアレなので、BootStrapのテーマを利用して、サイトっぽく整形します。

BootStrapのテーマサイト「Start Bootstrap」から「Blog Post」を使わせていただきました。

blog-post.jpg

組み込んで実際に表示した画面イメージはこのとおり。

baseball_anntenna.pngのサムネイル画像

SimplePieの設定については、公式ドキュメントを参考にしました。

はてな人力検索
http://q.hatena.ne.jp/1285821051 も参考になりました。

次回は、kintoneでニュースサイトのフィードを管理します。