2016年5月29日

IT系ブログのアンテナサイトについて

IT系ブログのアンテナサイトが見当たらなかったのでPOC版だが作ってみた。
最後まで作りきる自信がないので、PHPのソースコードも貼っておく。
なお、RSSの解析にmagpierssを、RSSの生成にfeedcreatorを使用しているため別途入手のこと。

<?php

mb_language('Japanese');
require_once('magpierss/rss_fetch.inc');
define('MAGPIE_OUTPUT_ENCODING', 'UTF-8');
require_once 'magpierss/rss_fetch.inc';
define("MAGPIE_CACHE_AGE", 60*5);
define("MAGPIE_CACHE_DIR", "cache/");

$rssurl = array();
$rssurl = file("rssurls.txt",FILE_IGNORE_NEW_LINES);

$rssarray = array();

foreach($rssurl as $rurl) {
 $rurl = rtrim(trim($rurl));
 $rss = fetch_rss($rurl);
 $blogtitle = $rss->channel['title'];
 foreach($rss->items as $item) {
  $title = $item['title'];
  $url = $item['link'];
  $date_timestamp = $item['date_timestamp'];
  $date = Date("[Y年m月d日]",$date_timestamp);
  $date;

  $rssarray["{$date_timestamp}"]['title'] = $title;
  $rssarray["{$date_timestamp}"]['url'] = $url;
  $rssarray["{$date_timestamp}"]['blogtitle'] = $blogtitle;
  $rssarray["{$date_timestamp}"]['date'] = $date;
 }
}

krsort($rssarray);


// 表示部
if(isset($_GET['rss'])) {
 // RSS1.0版の表示
 define('TIME_ZONE', '+09:00');
 include('feedcreator/feedcreator.class.php');
 $creator = new UniversalFeedCreator();
 $creator->useCached();
 $creator->title = 'ITブログあんてな';
 $creator->description = 'ITブログあんてな';
 $creator->link = 'http://www13.atpages.jp/nekonoshin/index.php';
 $creator->syndicationURL = 'http://www13.atpages.jp/nekonoshin/index.php?rss';
 foreach($rssarray as $value) {
  $item = new FeedItem();
  $item->title = $value['title'];
  $item->link = $value['url'];
  $item->date = $value['date'];
  $item->author = $value['blogtitle'];
  $creator->addItem($item);
 }
 $creator->outputFeed('ATOM1.0');
} else {
 // HTML版の表示
 echo '<html>';
 echo '<head>';
 echo '<title>IT系ブログあんてな(POC版)</title>';
 echo '</head>';
 echo '<body>';
 echo '<p><a href="?rss">RSS1.0</a></p>';
 echo '<h1>IT系ブログあんてな(POC版)</h1>';
 echo '<h2>新着</h2>';
 echo '<ul>';
 foreach($rssarray as $value) {
  $linkstr  = "<a href='".$value['url']."'>" . $value['title'] . "</a>";
  $linkstr .= " - " . $value['blogtitle'];
  $linkstr .= " " . $value['date'];

     print '<li>'.$linkstr.'</li>';
 }
 echo '</ul>';
 echo '<p>Copyright (c)<a href="http://itneko.blogspot.jp/">狸おやじ</a>, 2016</p>';
 echo '</body>';
 echo '</html>';
}
?>

今後、気が向けば、かつ、時間があれば、以下を追加予定。
  • 「NEW!」表示
  • 人気順
  • CSS
  • ブログパーツ
  • 画像アイコン取得
  • 本文冒頭xx文字
あと、こんなので良ければだが、RSS掲載コメントがあれば対応する。

以上



0 件のコメント:

コメントを投稿