KG Software Library

RSSに関する改良

Page :: FSWiki / Tips / RSS

このエントリーをはてなブックマークに追加


alternate を設定し、Firefox の Feed に対応させる

サイトテンプレートの<head>タグ内に下の記述を追加すると、Firefoxの RSS Feed に対応できます。

<link rel="alternate" type="application/rss+xml" title="RSS" href="?action=RSS" />

※WikiFarmにおいても対応できています。

RSSの詳細情報に多くの情報を出力する

下記修正は、ページソースを 255バイトで切ってしまうので、語尾が文字化けする可能性もあります。(メンドイので細かいところは気にしない・・・)

--- RSSMaker10.pm.org   Tue Dec 07 15:47:10 2004
+++ RSSMaker10.pm       Fri Apr 15 10:22:49 2005
@@ -21,10 +21,9 @@
 sub get_headline {
        my ($page_body) = @_;

-       if ($page_body =~ m/\!{1,3}\s*(.+)/mo) {
-               return $1;
-       }
-       return undef;
+       $page_body =~ s/\n//g;
+
+       return substr($page_body,0,255);
 }

 #==============================================================================

Sleipnir2 のRSS Reader 対応

以下の修正を適用し、index.rdf へのアクセスをRSS出力にする。

index.rdf へのアクセスをRSS出力に適用させる
例えば、wiki.cgi/index.rdf へのアクセスを ?action=RSS に対応させます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
--- wiki.cgi.org    Wed Aug 03 18:17:01 2005
+++ wiki.cgi    Wed Aug 03 18:04:55 2005
@@ -12,6 +12,16 @@
 }
 
 #==============================================================================
+# Sleipnir2 - RSS Reader 対応
+#==============================================================================
+if ( $ENV{'PATH_INFO'} =~ /\/index\.rdf$/ ) {
+    $ENV{'QUERY_STRING'}='action=RSS';
+    $ENV{'PATH_INFO'} =~ s/\/index\.rdf//;
+}
+
+#==============================================================================
 # モジュールのインクルード
 #==============================================================================
 use Cwd;
メニューの RSS を index.rdf へのリンクに変更する
1
2
3
4
5
6
7
8
9
10
11
--- Install.pm.org    Wed Aug 03 18:27:12 2005
+++ Install.pm    Wed Aug 03 18:27:22 2005
@@ -8,7 +8,7 @@
 
 sub install {
     my $wiki = shift;
-    $wiki->add_menu("RSS",$wiki->config('script_name')."?action=RSS",-1);
+    $wiki->add_menu("RSS",$wiki->config('script_name')."/index.rdf",-1);
     
     if($wiki->config("rss_version") eq "1"){
         $wiki->add_handler("RSS","plugin::rss::RSSMaker10");
Comment
お名前: コメント:

最終更新時間:2005/08/03-18:38:09