[Tep-j-general] Re: 2.2MS1配送モジュール作成用のドキュメントありませんか?

Back to archive index

Margy Mutoh margy****@roseb*****
2004年 6月 10日 (木) 14:18:54 JST


山下さん、こんにちは。Margyと申します。

> 現在、osCommerceで独自の配送モジュールを作成しようと思っているのですが、
> osCommerce 2.2MS1用の配送モジュールを作成するためのドキュメントが見つかりません。

私の場合はまったくの自己流ですから、お役に立つかどうかわかり
ませんが、以下のような方法で独自の配送モジュールを作ってます。
(佐川急便のモジュールをベースに、福山通運のモジュールを作る場合)

1)catalog/includes/modules/shipping/sagawaex.php
 catalog/includes/classes/_sagawaex.php     …をコピー。

2)それぞれのファイル名を
catalog/includes/modules/shipping/fukutsu.php
catalog/includes/classes/_fukutsu.php     …へリネーム。
※fukutsuの部分は任意ですが、アンダースコア以外は同じにします。

2)それぞれのファイルをエディタで開いて、以下の部分を全変換します。
※大文字/小文字の区別がある点に注意してください。

catalog/includes/modules/shipping/fukutsu.php
変更前文字列   →   変更後文字列
sagawaex          →        fukutsu
SAGAWAEX          →        FUKUTSU
SagawaEx          →        Fukutsu
佐川急便          →        福山通運

catalog/includes/classes/_fukutsu.php
変更前文字列   →   変更後文字列
sagawaex          →        fukutsu
SAGAWAEX          →        FUKUTSU
SagawaEx          →        Fukutsu

3)catalog/includes/classes/_fukutsu.php をエディタで開いて、
地帯コードや価格を修正します。

※198行目付近の「// 地帯 - 地帯間の価格ランク」を編集するとき、
地帯コードのアルファベットを逆順に並べると誤動作の元となります
のでご注意ください。

例/ABCDEの5つの地域コードがあり、発送地がCの場合
'CA'=>'N01',
'CB'=>'N02',
'CC'=>'N03',
'CD'=>'N04',
'CE'=>'N05'  …のようにすると誤動作します。

'AC'=>'N01',
'BC'=>'N02',
'CC'=>'N03',
'CD'=>'N04',
'CE'=>'N05'  …が正解です。

つい自分のいるところを基準に考えてしまい、私はこれで誤動作
にハマりました(^_^;
※なお、最終行の末尾にカンマがないことにも気をつけてください。

4)catalog/includes/languages/japanese/modules/shipping/sagawaex.php
をfukutsu.phpにリネームし、エディタで開いて適宜編集します。
※他の言語を使っている場合は、それぞれの言語用のfukutsu.phpを
作ってください。

5)それぞれのファイルをアップロードします。

6)管理画面の「モジュール設定」→「配送モジュール」を開くと
新しく作ったモジュール(福山通運)が表示されていますので、
ステータスをグリーンにします。

※ファイルを編集後、保存するときは、当然ながらEUC形式で
保存しないと動きませんのでご注意ください。

私は同様の方法で支払モジュールも独自のモノを増産してます。
やってみるとそれほど難しい作業ではないと思いますので、
トライしてみられてください。

間違いおよび補足がありましたら、ご指摘よろしくお願い
いたします。m(_ _)m

Margy Mutoh






Tep-j-general メーリングリストの案内
Back to archive index