ハートショップ

データ一括作成/管理スクリプト(SVtoSM) 解説


スクリプト概要
  • CSV(Comma Separated Values)、TSV(Tab Separated Values)、PSV(Pipe Separated Values)等のデータからショップマスター(モバイル)用データを作成します。
  • 「マーチャンダイザーデータ変換スクリプト」および「お試しキット」の機能を統合かつ強化させたものになります。
  • 複数のECサイトのデータを一括して(順番に)処理することができます。
  • 更新データを用意することで、更新作業も簡単に行うことができます。
  • 多階層のカテゴリを処理することができます。
  • ショップマスターを複数タイプで使用(type=master以外に複数使用)することにより、同一カテゴリ内でECサイト間の横断的な商品閲覧・検索が可能となります。
  • ECサイト独自のデータ仕様に応じて好みの形式に自動で編集、変更することができます。
  • データ更新後も「チェック」履歴は保持されます。
  • ECサイト毎にデータ分割ができるため、総データ量が増大した場合でも、サーバ負担が最小になります(大規模モールの運営が可能です)。

ご注意
  • このスクリプトは、「シェアウェア」になります。
  • ECサイト毎の設定ファイルは簡単なPerlスクリプト(正規表現)で設定することになります。「ハートショップタウン」「ハートショップ モバイル」で利用させていただいているECサイトの設定ファイルは別途シェアウェア料金がかかります。
  • スクリプトの実行はローカルのWEB環境が必要(「Apache を利用したローカルウェブの構築」)です。サーバー上でも実行可能ですが、共用サーバ等の環境では、スクリプト負荷が利用サーバの動作制限のため正常に終了できない場合があります。また、共用サーバを利用する上でのモラル的な面からもサーバー上での利用はご遠慮いただけたらと思います。
  • 環境に関しては、
    CPU:Pentium V 1GHz
    メモリ:256MB
    OS:WindowsXP
    Webサーバ:AN HTTPD Version 1.42n(AN HTTP Server Home Page
    Perl:Perl 5.6(Active State

    CPU:Intel(R) Core(TM)2 Duo CPU T7250 2GHz×2
    メモリ:2GB
    OS:Windows Vista
    Webサーバ:Apach2.0.59(The Apache HTTP Server Project
    Perl:ActivePerl 5.8.8(Active State
    で動作確認しています。

ダウンロード
申し込みおよびダウンロード」 から、お願い致します。
  • スクリプト本体には、「スマイル通販」の設定ファイルを添付しています。
  • 設定ファイル一式に含まれているECサイトでも「ハートショップタウン」「ハートショップ モバイル」で運用中でなければ、ECサイト側の配布データの関係上メンテナンス不能の場合があります。
  • 設定ファイル一式にはスクリプト本体は含まれておりません。
  • スクリプト本体には、分かりやすいように「ショップマスター」と重複するディレクトリおよびファイルが含まれておりますが、その場合はこちらからダウンロードしたものをご利用ください。

ファイル構成および設置
「ショップマスター」を設置しなくても動作しますが、同一ディレクトリ構造内で処理をした方が便利になります。(**)が必ず設定が必要なファイル、(*)が必要に応じて設定するファイルとなります。「***」は、EC設定ファイル(d-dec.cgi)で設定したECキーとなります。count.dat は、ショップマスター解説ページの構造でもいいのですが、以下のように、全てのタイプの count.dat を一括管理した方がデータ更新時に楽になります(ローカルでトップページのランキングを更新する場合、count.dat のダウンロードが必要になるため)。

public_html /
 |
 +-- cgi /
      |
      +-- master / (master.cgi 等)
           |
           +-- svtosm / svtosm.cgi        スクリプトファイル
           |    |       setup.cgi         設定ファイル(**)
           |    |       kaika.dat         経過ファイル(自動生成)
           |    |
           |    +-- setup / d-ckey.cgi    カテゴリーキーファイル(自動生成)
           |    |     |     d-dec.cgi     EC設定ファイル(**)
           |    |     |     d-prefix.cgi  カテゴリキー接頭文字設定ファイル(*)
           |    |     |     d-trans.cgi   カテゴリ変換共通ファイル(*)
           |    |     |
           |    |     +-- ckey / ***.dat  ECサイト別カテゴリキーファイル
           |    |                         (自動生成)
           |    |
           |    +-- rule / all.cgi        ECサイト共通設定ファイル(*)
           |    |          ***.cgi        ECサイト別設定ファイル(**)
           |    |
           |    +-- down-data /           ECサイト別商品データファイル
           |    |
           |    +-- LWP /                 CGIモジュール
           |    +-- Net /
           |    +-- Unicode /
           |
           +-- data / *** / d-goods.cgi   ショップマスター用データファイル
           |    |           d-ec.cgi      (自動生成)
           |    |           d-cate.cgi
           |    |
           |    +-- count /
           |         |
           |         +-- *** / count.dat  ショップマスター用カウントファイル
           |
           +-- img / *** /                ダウンロード画像ディレクトリ
           |                              (自動生成)
           |
           +-- type / d-type.cgi          タイプキー設定ファイル(*)
           |          master.ini          type=master の設定ファイル(*)
           |          other.ini           type=master 以外の設定ファイル(*)
           |
           +-- ref
           |    |
           |    +-- master / (index.ref 等)
           |    +-- other  / (index.ref 等)
           |
           +-- lock / *** /                ロックディレクトリ(ECサイト分必要)


ファイル設定
ファイルの文字コードはすべて「UTF-8」になっております。文字コードは変換せずにこのままで設定してください。

svtosm.cgi:スクリプトファイル(必要であれば)
→ 一行目を必要であれば修正してください(#!/usr/bin/perl)。

setup.cgi:設定ファイル(必須)
ファイル内の指示通りに設定してください。

d-dec.cgi:EC設定ファイル(必須)
ECキー<>EC名<>データファイル名<>ダウンロードURL(*)<>
→ マーチャンダイザーデータの場合は、[YOUR-CODE]をあなたのコードに変換してください。
→ (*)マーチャンダイザーデータに関しては必要ありません。
→ (*)https://〜で始まるURL、および認証が必要なURLは指定できません。
→ 行頭に'#'でコメントアウト。

d-prefix.cgi:カテゴリキー接頭文字設定ファイル(任意)
接頭文字(a-z)<>カテゴリ名<>
→ カテゴリ名を任意の順番に並べたい時に設定します。
→ カテゴリ名に「other」を設定すると、ここで設定していないカテゴリに指定の接頭文字を付けます。
【具体例】
a<>注目商品<>
z<>その他ファッション<>
zz<>その他<>
m<>other<>

d-trans.cgi:カテゴリ変換共通ファイル(任意)
変換前カテゴリ名<>変換後カテゴリ名<>
→ここで設定すると、全ECサイトのカテゴリに適用されます。
【具体例】
クリスチャン・ディオール<>ディオール<>
Tシャツ<>Tシャツ<> (→半角から全角へ)

rule/[ECキー].cgi:ECサイト毎の設定ファイル(必須)
→ スクリプト本体には、設定ファイルは見本のみとなります。
→ 簡単なPerl文(主に正規表現)で設定します。
→ 「バリューコマース」ECサイトは、このファイル内でSID, PIDを設定してください。
→ 「アクセストレード」ECサイトは、このファイル内でrkを設定してください。
→ 「リアルマーケット」は、このファイル内で媒体設定およびカテゴリキーの関連付けを行ってください。

【変数】
$id:商品ID
$cate:カテゴリーキー
$name:商品名
$item:項目内容(あまり使いません)
$pic:画像URL
$com:コメント(商品紹介)
$url:リンクURL
$eval:評価(あまり使いません)
$date:登録日時(自動設定)
$term:期限(例:2008/1/1)
$ec:ECサイトキー
$pri:価格
$regp:定価
$poi:ポイント
$post:送料

$data[0],$data[1],…… がCSVファイルの1,2,……列目になります。

実行手順
  1. svtosm.cgi にアクセスし、メニュー画面を表示させます。
    【例】http://127.0.0.1/cgi/master/svtosm/svtosm.cgi

  2. データダウンロード」を実行し、データを一括でダウンロードします。
    • 圧縮されているデータは解凍されませんので、ダウンロード後に一括して解凍してください(複数選択して解凍ソフトへドロップ)。
    • マーチャンダイザーデータ以外では、d-dec.cgi でダウンロードURLを設定したECサイトのみダウンロードされます。

  3. データ作成したいECサイトを「チェック」し「データ作成」をします。
    • ファイル情報が表示されていない場合は、「メニューに戻る」を押してください。
    • データ作成と同時に画像ファイルのダウンロードが必要なECサイトの場合はダウンロードされます(バリューコマースのECサイトはほとんど)。この時、ECサイトによっては画像ファイル容量がかなり大きくなりますので、事前に 対応済ECサイト一覧(PC, モバイル)で確認しておいてください。
    • すでにダウンロードされている画像ファイルに関しては、再ダウンロードされません(2回目以降速くなります)。
    • 作成ECサイト数、動作環境により、数十分以上かかることがありますのでご注意ください。

  4. カテゴリーキーファイル(d-ckey.cgi) を開き、想定外のカテゴリがないかチェックします。ECサイト毎にチェックする場合は、rule/[ECキー].dat をチェックします。
    • 一旦、d-ckey.cgi が作成されたら、そのファイルを削除しないでください(カテゴリーキーが変更されてしまう可能性があります)。

  5. カテゴリの設定に修正がある場合、rule/[ECキー].cgi, d-trans.cgi 等を設定し、再度「データ作成」を行ってください。特に必要はありませんが、失敗したカテゴリが d-ckey.cgi に残っている場合に「未使用カテゴリーキーデータ削除」を行ってください。

  6. 「ショップマスター」(Ver 7.0.0 以降)にて通常の処理を行ってください。
    • ショップマスター解説と同じディレクトリ構造でも大丈夫ですが、基本的にはローカルWEB環境での処理を考えておりますので、上記に示した構造のように、count.dat ファイルを独立させておく方がサイト更新の際に便利になります。こうしておきますと、ダウンロード時に count/ ディレクトリごと一括でダウンロードすることができます。