WebLinks マニュアル

他のモジュールと使い方が違うものや、ちょっと分かりにくいところを、説明しています。

1.RSS/ATOM関係のブロック

1.1 リンク集の新着RSS/ATOM記事
viewfeed.php と類似の機能です。
テーブル atomfeed に格納されたRSS/ATOM記事を日付の新しい順から表示します。
このブロックを表示しても、新しいRSS/ATOM記事の取得は行いません。
取得に関しては「RSS/ATOM記事の取得」をご覧ください。

1.2 リンク集のblog表示
テーブル atomfeed に格納されたRSS/ATOM記事から、特定のリンクの記事を日付の新しい順から表示します。
1.1と同様に、このブロックを表示しても、新しいRSS/ATOM記事の取得は行いません。

ブロック管理より「リンク集のblog表示」の編集画面を開き、
表示するblogのリンクIDを設定します。

1.3 カスタム・ブロックにてblogを表示する
1.2と類似の機能です。
違いは、2つあります。
(1) 複数のリンクに対して、それぞれblogを表示できます。
(2) このブロックを表示するときに、新しいRSS/ATOM記事の取得を行います。

カスタム・ブロックをPHPモードで作成し、下記を記入する。
include_once XOOPS_ROOT_PATH."/modules/weblinks/include/atomfeed.inc.php";
weblinks_view_blog(???);
??? はリンクID

2.リンク切れの検査

どういう契機でリンク切れを検査するか。
3つの方法があります。

2.1 利用者が気が付いたときに、リンク切れの報告をする。
mylinks から継承した方法です。

2.2 管理者が手動で検査する。

2.3 コマンドラインモードで、定期的に検査する。

cache ディレクトリィ を書き込み可能にする。
Weblinksの管理者画面より、「その他の機能」 -> 「create config file for bin」 を実行する。
bin/link_check.php の $XOOPS_ROOT_PATH を自分の環境に合わせて変更する。

crontab に下記のような設定を加える。
11 2 * * 0 /usr/bin/php4 -q -f /home/***/html/modules/weblinks/bin/link_check.php

3.RSS/ATOM記事の取得

どういう契機でRSS/ATOM記事を取得するか。
4つの方法があります。

3.1 singlelink.php にてリンク詳細を表示するときに、そのリンクから取得する
何も設定しなくとも、実行されます。
管理者画面からキャッシュ時間を設定できます。
初期値は24時間です。

3.2 カスタム・ブロックにてblogを表示するときに、そのリンクから取得する。

3.3 管理者が手動で全てのリンクから取得する

3.4 コマンドラインモードで、定期的に全てのリンクから取得する。

cache ディレクトリィ を書き込み可能にする。
Weblinksの管理者画面より、「その他の機能」 -> 「create config file for bin」 を実行する。
bin/rss_refresh.php の $XOOPS_ROOT_PATH を自分の環境に合わせて変更する。

crontab に下記のような設定を加える。
22 3 * * * /usr/bin/php4 -q -f /home/***/html/modules/weblinks/bin/rss_refresh.php

3.5 「リンク集の新着RSS/ATOM記事」のブロックを表示するときに、全てのリンクから取得する。
サポートしていない。
RSS/ATOM対応のリンクが多いと、タイムアウトする可能性あり。

4.地域依存性

4.地域依存性
4.1 地図サイト(yahoo)へのリンク
日本と米国では方式が異なる。

(1) 日本では、yahooへ住所を渡すだけを、検索できる。
<a href="http://search.map.yahoo.co.jp/search?p=<{$link.addr_encode}>" target=_blank>
<img src="<{$module_url}>/images/map.png" board="0" alt="map"></a>

(2) 米国では、住所以外に、郵便番号、州、市 を渡す必要がある。
<form action="http://us.rd.yahoo.com/maps/home/submit_a/*-http://maps.yahoo.com/maps" target="_blank" method=get>
<input type="hidden" name="addr" value="<{$link.address}>">
<input type="hidden" name="csz" value="<{$link.city}>, <{$link.state}> <{$link.zip}>">
<input type="hidden" name="country" value="us">
<input type=hidden name=srchtype value=a>
<input type=submit name="getmap" value="Map">
</form>

(3) 違いの吸収
これは、テンプレート weblinks_link.html に埋め込まれている。
現状は、日本用のものしかない。

4.2 検索サイト(googole)へのリンク
日本と米国ではgogoleのURLが異なる。

(1) 日本
http://www.google.co.jp/search?hl=ja&amp;q=

(2) 米国
http://www.google.com/search?hl=en&amp;q=

(3) 違いの吸収
URLを 言語別ファイルの admin.php にて設定している。

4.3 友達に教える
日本固有の事情がある。
文字コードが SJIS,JIS,EUC-JP と複数ある。
サーバーの文字コードとクライアントPCの文字コードが異なると、
「友達に教える」が文字化けする。
さらに、クライアントPCにて使用しているメール・アプリ・ソフトも関係しており、複雑な現象を起こしている。

ひとまずの対策として、
クライアントPCのOSが、Windows か MAC であれば、
文字コードを SJIS に変換している。

違いの吸収
この処理は、言語別処理ファイルの language_convert.php にて実装している。


目次
$Id: manual_1_jp.html,v 1.2 2005/07/19 03:52:21 ohwada Exp $