

=== ヘッドラインモジュール xhld ===
RSSやATOMを表示するモジュールです。
歴史的には標準モジュールであるXoopsHeadlineがベースですが、今ではかなり書き変わって別物と化しているはずです。
2.73以降、フィードの日時フォーマットが空文字の場合、日時が表示されません。
日時が表示されなくなったな、と思ったら、「記事発行時間のフォーマット(短縮形)」を設定して下さい。デフォルトは、m/d H:i です。
2.6から、RSS/ATOMのエンコード指定が意味あるものになりました。
UTF-8以外のRSS/ATOMがありそうな場合は、一端、すべてのフィードについて、エンコーディングを「自動検出」として「更新・再取得」して下さい。
このモジュールを複数利用している場合、上書きアップグレードはすべてのxhldモジュールに対して行ってください。
そうしないとおかしくなります。
売り:
- ATOM 0.3 に対応しました
- RSS 0.9, 1.0, 2.0 ready!
- allow_url_fopen が Off でも正常に動作します (余計なリスクを負わずに済みます)
- 全ヘッドラインタイトルを最新順にまとめて表示するメイン画面およびブロックがあります
- ヘッドラインのタイトルで絞り込みが出来ます
例えば、/円/ として絞れば、レート確認用ブロックのできあがり!
- ヘッドラインのリンクで絞り込みが出来ます
例えばアサヒ・コムのリンクを /business/ として絞れば、経済ニュース
ブロックのできあがり!
- プロクシ経由でもRSS/RDFを取得できます(多分)
- JavaScriptによるクライアントサイドの時差計算
こうすることで、モジュールキャッシュやブロックキャッシュを有効にし
た際に、異なるTimezoneを持つクライアントが連続して訪れるだけで時間
表示がおかしくなる、という不具合を防げます
- Duplicatable バージョン2.1 (何じゃそりゃ

)
今度のDuplicatableはひと味違います。
かなり自由にディレクトリ名を決められます。
ただし、ちょっとしたルールがあるので、それだけは守らなくてはいけません。
(数字以外が1字以上)+(数字が1字以上)
という名前にしてください。
デフォルトの 'xhld0' は、もちろんOKです。
このディレクトリに置かれたモジュールは、xhldの0番目として扱われます。
このモジュールをコピーして、'test1' として置けば、xhldの1番目のできあがり。
'test00003' とかしても良いですが、これは3番目になります。
とりあえず、0,1,2,3 の4つだけ用意してあります。
テンプレートとsqlファイルを用意しさえすれば、いくつでも可能ですよ。
まあ、コンテンツ系とは違い、ヘッドラインブロックをそんなにいくつも
作らないだろうとは思いますが。
また、一つだけ、番号なしのdirnameも作れます。xhld ではなく、xoopsheadline とすることも可能です。
2.25以降、XoopsHeadlineモジュールが存在する状態でインストールしても、エラーで止まることはなくなりました。
ただ、それでも、XoopsHeadlineとXhldは、言語定数の問題があって、あまり相性が良くありません。
複数のヘッドライン系モジュールが必要であれば、Xhldを必要数だけインストールして、XoopsHeadlineそのものはアンインストールして、modules/ ディレクトリからも削除することをお勧めします。
xhld0 を xoopsheadline とリネームしてインストールすれば、URI互換もとれるはずです。
更新履歴:
v.2.99 2005-6-15
- updated mymenu 0.14 & myblocksadmin 0.30
- 一つの<item>に複数の<link>が存在するフィードへの対応でのエンバグを修正
v.2.98 2005-6-3
- <dc:date> のタイムゾーン指定がない場合、直前の値を指定するようにした
- 一つの<item>に複数の<link>が存在するフィードへの対応を行った
v.2.97 2005-5-27
- descriptionフィールドのみが、nl2br()の処理を通過するように修正
- updated myblocksadmin 0.29
v.2.96a 2005-4-23
- PHP5 環境で ATOM がパース出来なかったのを修正 (thx scaf)
v.2.96 2005-4-8
- xmlrss2parser.php で日時型を文字列結合してしまうバグを修正
v.2.95 2005-4-5
- パース済みキャッシュの型を変更
- 取得ミス時の処理を修正
v.2.94 2005-3-30
- ブロックオプションがおかしくなっている時の挙動を修正
- XOOPSコアバージョン2.0.5.2以下に対応
- フランス語ファイル更新 (thx marco) (2.94a)
v.2.93 2005-3-16
- 一応、携帯対応 (また実験ステージですが)
- cron用キャッシュ強制更新スクリプトを作成 (include/update_cache.sh)
v.2.92 2005-3-2
- updated myblocksadmin 0.27 & mymenu 0.12
- magic_quotes_gpc on 環境で正常に動作しなかったのを修正 (thx Ryuji)
- 英語ファイルを修正 (thx Peter)
- XMLをパーサに渡す前にtrim()するようにした (2.92a)
v.2.91 2005-2-21
- PHP5で動作しなかったのを修正 (thx OXTS5 & Marichan)
- フランス語追加 (thx marco)
- ブラジルポルトガル語追加 (thx Xbartts)
- ロシア語追加 (thx FractalizeR)
v.2.90 2005-2-11
- 排除パターンの新設
- チケットからIPチェック排除
v.2.84 2005-1-27
- xhld という名前だけが動かなかったバグの修正 (thx mikity)
v.2.83 2005-1-15
- sitemapモジュール用のプラグインを用意した
- updated myblocksadmin 0.24 & mymenu 0.10
v.2.82 2005-1-8
- updated myblocksadmin 0.23
v.2.81 2005-1-5
- モジュールアップデート時のALTER TABLEが抜けていたのを修正 (thx jseymour)
v.2.80 2005-1-4
- フィード毎表示ブロックを複製可能とし、フィードを絞って表示できるようにした
- saxparser.php の危険な仕様を修正 (thx JM2)
- updated myblocksadmin 0.22 & mymenu 0.07
v.2.76 2004-12-21
- <content:encoded>タグのハンドラを追加
v.2.75 2004-12-20
- 知らないタイムゾーンでも、少しでも正確な日時を取得できるよう改善 (thx Tom_G3X)
v.2.74 2004-12-16
- updated myblocksadmin (0.12) & mymenu (0.06)
v.2.73 2004-12-12
- 短縮形の日時フォーマットが空文字でも許可するようにした (thx takahashi)
v.2.72 2004-12-7
- チケットシステムの更新 (旧バージョンと混在せぬよう注意)(thx nobunobu)
- updated myblocksadmin (0.11) & mymenu (0.05)
v.2.71 2004-12-7
- チケットシステムが有効になっていなかったバグの修正
v.2.70 2004-12-6
- タイムアウトかどうかを判別するようにした
- サイトの通常アクセスで、取得時にタイムアウトがXMLパースエラーが起きたときは、キャッシュされたデータを表示するようにした
- saxparser.php,xmltaghandler.php をモジュール内に取り込んだ
- saxparser.php の $this = null; を削除した (php5対策) (thx Marijuana)
- ISO-8859-1のウムラウト等を表示できるように、HTML禁止時にはhtmlentitiesかけるようにした
- dc:date が DD-MM-YYYY という間違ったフォーマットになってるフィードに対応した
- タイムアウトを各フィード毎に設定できるようにした
- HTML許可・不許可をフィード毎に設定できるようにした(XSS対策) (thx JM2)
- 管理画面へのチケットシステムの本格導入
- myblocksadminを0.10に、mymenuを0.04にアップデートした
v2.63 2004-12-4
- 各フィード管理画面にリンクをつけ、取得エラーを色分けした (thx Tom_G3X)
v2.62 2004-12-3
- XOOPSそのものがISO-8859-1で動いている時の処理を追加
- 最新ブロックで、フィード毎の個数上限を指定出来るようにした
- myblocksadmin, mymenu を最新版にアップデートした
v2.61 2004-12-3
- 日本語処理のtypoを修正 (thx Tom_G3X)
- フィード管理画面の細かな改善 (thx Tom_G3X)
v2.60 2004-12-2 (またまた、モジュール更新を忘れずに)
- 文字コード選択の処理をまともにした(自動検出も実装)
- 新着一覧エントリの抽出方法を、2種類のパターンから選べるようにした
- フィード管理画面の改善
- エラー処理の改善
v2.53 2004-11-27
- pubdate無しフィードは、すでに降順ソートされているとして扱うようにした
- 記事発行日の短縮形フォーマットを一般設定で指定できるようにした
- 記事発行日のフル記述フォーマットは、_DATESTRINGを参照するようにした
v2.52 2004-11-25
- xhld*_block.html における$itemsのtypoを修正 (thx yokos)
v2.51 2004-11-21
- パーサクラスが二重定義となってしまうバグの修正 (thx yokos)
- 新着一覧について最新10件の内容を表示するようにした (thx Tom_G3X)
- フィードタイプを、直接指定できるようにした(自動判別も可)
- エラー処理のおかしな点をあちこち修正
- XMLコードを"auto"で判定するのをやめた (2.51a)
- UTF-8 へ変換する際、バイト欠けで生じた0x00を消すようにした (2.51b)
v2.50 2004-11-18
- ATOM 0.3 への対応 (special thx ohwada!)
- XMLパース済みデータをキャッシュするように変更 (100倍以上の高速化)
- あちこちフィールドサイズを大きめにした
- 管理者画面の作り直し
- キャッシュ時間などを数値指定出来るようにした(ただし、キャッシュは最短10分)
- オリジナル由来の細かいバグ潰し
v2.40 2004-11-16
- フォーム名"headline_form"がダブっているのを修正 (thx godfield)
- 不思議な仕様だったテンプレート blocks/headline_block.html を標準仕様に
- pubdateの存在しないRSS/RDFへの処理を修正した (thx godfield & haroa)
- 管理画面の全RSS/RDFアップデートがおかしかったバグを修正
v2.31 2004-11-10
- コード指定が ISO-8859-1 の時には、取得時にUTF-8コンバートするようにした
- スペイン語ファイルを追加 (thx MonDarSE)
v2.30 2004-10-28
- $HTTP_*_VARS をすべて $_GET や $_POST に置き換えた (PHP5対応)
- Dupilcatable V2.1 仕様に変更 (番号無しdirnameの許可)
- RSS/RDFが時間順に並んでいないものでも、最新順となるよう改善
- あまり好ましくないコーディングを極力修正 ($_POST展開をやめる等)
- アイコン変更
v2.25 2004-10-21
- XoopsHeadlineがあってもハングアップしないようにした(それでも、XoopsHeadline と一緒には使わないことをお勧めします)
v2.24 2004-10-21
- ヘッドラインの降順ソートがおかしかったのを修正 (thx Ryuji)
v2.23 2004-10-4
- mbstring設定が誤っているサーバについては、EUC-JPを強制セットするようにした
- RSS/RDF 編集・一括更新時に、ブロックキャッシュのクリアを行うようにした
- RSS/RDF 編集・一括更新時に、XMLキャッシュのクリアを行うようにした
- キャッシュタイムの選択肢に「10分」を追加
v2.22 2004-9-26
- プロキシ経由でのRSS/RDF取得を可能にした (thx domifara & Takao_O)
- XML保存領域を、text から mediumtext にした (thx domifara)
-- すでにインストールされた分について必要であれば、フィールドをmodifyして下さい
- リンクターゲットを _blank で統一した (thx Nu-nrg)
v2.21 2004-8-12
- オリジナル由来と思われるadmin/index.phpのtypoを修正 (thx doublebass)
- コンフィグ説明文の文字数オーバーを修正 (thx Tom_G3X)
v2.20 2004-8-12
- トップページに、全ヘッドラインを時系列でソートした出力を表示 (special thx Tom_G3X)
- Snoopyのタイムアウト時間を指定する設定値を新設
- テンプレート xhld*_index.html および xhld*_feed.html の改良。カスタムテンプレートをお使いの方は、手作業でこの2つのテンプレートをアップデートして下さい (thx Tom_G3X)
- モジュールアップデートを行っても、ブロックオプション値が保存されるように改善 (thx nobunobu)
- <dc:date> (w3c形式) のパーサを改良して、多少のフォーマット違いにも対応できるようにした
- mymenu を導入
v2.11 2004-8-1
- ヘッドラインエントリを削除できないバグの修正 (thx Nu-nrg)
- 日本語環境において、内部コードをEUC-JPと決めうちしている部分の修正 (thx Nu-nrg)
- dc:date(W3C形式)の処理をまともにした (thx Marijuana)
- 各ブロックで、日時を表示するようにした。デフォルトは、月/日 時:分
- 日付形式は、テンプレートファイル内で変更できるようにした
- ブロックキャッシュをかけても問題がないように、JavaScriptで時間を計算するようにした (thx Dave Lerner)
v2.10 2004-7-20
- 全ヘッドラインを時系列でソートしてまとめて出力するブロックを追加
- 通常のヘッドラインブロックにおける複数列表示オプションを追加 (thx Ryuji)
- ブロック表示時のタイトル文字数制限オプションを追加 (thx Marijuana)
v2.01 2004-7-13
- Snoopyを使ってallow_url_fopen offでも動くように(thx hokousya & toshimitsu)
v2.00 2004-7-9
- 最初のリリース(...で、最後のリリースになると良いなあ)