8 |
function plugin_rss10_action() |
function plugin_rss10_action() |
9 |
{ |
{ |
10 |
global $script,$rss_max,$page_title,$whatsnew; |
global $script,$rss_max,$page_title,$whatsnew; |
11 |
|
global $trackback; |
12 |
|
|
13 |
$self = $script.'?'; |
$self = (preg_match('#^https?://#',$script) ? $script : get_script_uri()); |
14 |
|
if ($self === FALSE) |
15 |
|
{ |
16 |
|
die_message("please set '\$script' in ".INI_FILE); |
17 |
|
} |
18 |
|
|
19 |
$page_title_utf8 = mb_convert_encoding($page_title,'UTF-8',SOURCE_ENCODING); |
$page_title_utf8 = mb_convert_encoding($page_title,'UTF-8',SOURCE_ENCODING); |
20 |
|
|
30 |
{ |
{ |
31 |
list($time,$page) = explode("\t",rtrim($line)); |
list($time,$page) = explode("\t",rtrim($line)); |
32 |
$r_page = rawurlencode($page); |
$r_page = rawurlencode($page); |
|
$tb_id = md5($r_page); |
|
33 |
$title = mb_convert_encoding($page,'UTF-8',SOURCE_ENCODING); |
$title = mb_convert_encoding($page,'UTF-8',SOURCE_ENCODING); |
34 |
// 'O'が出力する時刻を'+09:00'の形に整形 |
// 'O'が出力する時刻を'+09:00'の形に整形 |
35 |
$dcdate = substr_replace(get_date('Y-m-d\TH:i:sO',$time),':',-2,0); |
$dc_date = substr_replace(get_date('Y-m-d\TH:i:sO',$time),':',-2,0); |
36 |
|
|
37 |
// $desc = get_date('D, d M Y H:i:s T',$time); |
// $desc = get_date('D, d M Y H:i:s T',$time); |
38 |
// <description>$desc</description> |
// <description>$desc</description> |
39 |
|
|
40 |
|
$dc_identifier = $trackback_ping = ''; |
41 |
|
if ($trackback) |
42 |
|
{ |
43 |
|
$tb_id = md5($r_page); |
44 |
|
$dc_identifier = " <dc:identifier>$self?$r_page</dc:identifier>"; |
45 |
|
$trackback_ping = " <trackback:ping>$self?plugin=tb&tb_id=$tb_id</trackback:ping>"; |
46 |
|
} |
47 |
$items .= <<<EOD |
$items .= <<<EOD |
48 |
<item rdf:about="$script?$r_page"> |
<item rdf:about="$self?$r_page"> |
49 |
<title>$title</title> |
<title>$title</title> |
50 |
<link>$script?$r_page</link> |
<link>$self?$r_page</link> |
51 |
<dc:date>$dcdate</dc:date> |
<dc:date>$dc_date</dc:date> |
52 |
<dc:identifer>$script?$r_page</dc:identifer> |
$dc_identifier |
53 |
<trackback:ping>$script?plugin=tb&tb_id=$tb_id</trackback:ping> |
$trackback_ping |
54 |
</item> |
</item> |
55 |
|
|
56 |
EOD; |
EOD; |
57 |
$rdf_li .= " <rdf:li rdf:resource=\"$script?$r_page\" />\n"; |
$rdf_li .= " <rdf:li rdf:resource=\"$self?$r_page\" />\n"; |
58 |
} |
} |
59 |
|
|
60 |
|
$xmlns_trackback = $trackback ? |
61 |
|
' xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"' : ''; |
62 |
|
|
63 |
header('Content-type: application/xml'); |
header('Content-type: application/xml'); |
64 |
|
|
65 |
print <<<EOD |
print <<<EOD |
67 |
|
|
68 |
<rdf:RDF |
<rdf:RDF |
69 |
xmlns:dc="http://purl.org/dc/elements/1.1/" |
xmlns:dc="http://purl.org/dc/elements/1.1/" |
70 |
xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" |
$xmlns_trackback |
71 |
xmlns="http://purl.org/rss/1.0/" |
xmlns="http://purl.org/rss/1.0/" |
72 |
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" |
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" |
73 |
xml:lang="ja"> |
xml:lang="ja"> |
74 |
|
|
75 |
<channel rdf:about="$script?rss"> |
<channel rdf:about="$self?$whatsnew"> |
76 |
<title>$page_title_utf8</title> |
<title>$page_title_utf8</title> |
77 |
<link>$script?$whatsnew</link> |
<link>$self?$whatsnew</link> |
78 |
<description>PukiWiki RecentChanges</description> |
<description>PukiWiki RecentChanges</description> |
79 |
<items> |
<items> |
80 |
<rdf:Seq> |
<rdf:Seq> |