CS-Cart用アドオン いくつか出来上がってきてます

ひとまず速報的に。

  • ショップ側ソート順拡張アドオン:ショップ側商品一覧の「ソート順」に「登録日順」を追加する
  • 詳細検索結果の拡張アドオン:新着商品、全商品を詳細検索の検索結果として一覧表示する
  • 管理側受注一覧検索拡張アドオン:受注一覧の詳細検索に「支払方法」を追加する
  • 受注商品のソート順指定アドオン:納品書や配送表等で受注商品の並び順をコントロールする

個々のネーミングは未定です。。

リリースタイミングも未定です。

先日告知した「日付オプション追加アドオンの機能追加」と同時にリリースしようかなと思ってます。

CS-Cart 日付オプション追加アドオンの拡張

先日リリースした日付オプション追加アドオンですが、必要に迫られていくつか機能拡張しました。

基本機能は下記の通りです。

  • オプションに日付を追加
  • 入力にカレンダーからの選択機能を追加
  • 携帯対応(通常のテキストフィールド)

これに下記の機能を追加しました。

  • 入力文字列の正規表現バリデート(デフォルトで持っている機能を当該アドオンでも利用するようにしただけですが。)
  • 特定の日付指定に対応(カンマ区切りで複数指定可 ex 2012/03/15,2012/03/30)
  • 日付範囲の指定に対応(入力可能な日付範囲を指定 ex 2012/04/01%%2012/05/26)
  • 当日より前の日付の指定禁止に対応(当日以降の日付選択のみに)
  • 携帯アドオンに完全対応(日付をセレクトボックスで生成 指定日も範囲も当日以降の日付表示も対応)

指定範囲を外れた入力に対してはPHP側でチェックします。
正規表現をうまく使えばデフォルトのバリデーションでチェックできます。
(上記画像の正規表現項目に設定してあるのは日付フォーマットのチェック用です)

これらの設定は商品の編集画面のオプションタブで行います。
携帯アドオンをご利用の場合には携帯用言語に切り替えてそちらでも設定する必要がありますので注意が必要です。

性質上「特定の日付指定」と「日付範囲の指定」は排他関係にありますが、それぞれの設定項目の入力制限は実装していませんので設定時にはどちらか片方のみにするようにしてください。(アップデートのリリース時には対応するかもしれませんが未定です)

このアドオンは某サイトのチケット販売でご利用頂いています。
(公開が可能であればご紹介させていただきますが現段階では導入サイトは非公開です)

ちなみに、CS-Cartでは jQuery UI のDatepicker が採用されています。

CS-Cart アドオンの構成

まず、アドオンには決められた作法があります。

ディレクトリ構成、ファイル構成、それらの名称が下記のように定められています。

 

ディレクトリ構成

/addons/[アドオン名]
アドオンのPHPファイルを格納するディレクトリ

/var/skins_repository/base/customer/addons/[アドオン名]
ショップフロント側で使用するアドオン用スキンファイルを格納するディレクトリ

/var/skins_repository/base/admin/addons/[アドオン名]
管理者用パネル側で使用するアドオン用スキンファイルを格納するディレクトリ

/var/skins_repository/base/mail/addons/[アドオン名]
アドオン用Eメールテンプレートを格納するディレクトリ

※ /addons/[アドオン名] 以外のディレクトリはアドオンの構成上必要な場合のみ作成(下位階層も同様)

ファイル構成

/addons/[アドオン名]のディレクトリに配置するファイルは下記の通り。

addon.xml
アドオンの設定ファイル。アドオンのインストールやアンインストールに必要。

func.php
アドオンのコントローラー内で使用する関数を定義するファイル。

init.php
アドオンで使用するフックを登録するファイル。

config.php
アドオンで使用する定数や各種設定値を登録するファイル。

/controllers
アドオンで使用するコントローラーおよびCS-Cart標準コントローラーのプレコントローラーおよびポストコントローラーを格納するディレクトリ。

/schemas
管理者用パネル内のメニューや管理者に付与する権限など、既存のスキーマを拡張するファイルを格納するディレクトリ。

 

全てのアドオンは上記のような構成で成り立っています。

上記のディレクトリ構成を見ると分かりますが、/var/skins_repository/以下に置くディレクトリの下位階層について触れていません。(テンプレートでの表示側ですね)

これらは必要に応じてと書いていますが、おおざっぱに言うとCS-Cart本体のディレクトリ構成に準じた命名規則と配置で設置します。
admin側、customer側、mail以下ではその構成が異なりますが多くのアドオンは下記のようなディレクトリを持っています。
(一部CS-Cart本体に無いディレクトリ名を使っている物もあります。が理由が無い限りCS-Cart本体のディレクトリ構成に則った方が良いと思います。)

/var/skins_repository/base/admin/addons/[アドオン名]以下

  • common_templates
  • hooks
  • views

/var/skins_repository/base/customer/addons/[アドオン名]以下

  • blocks
  • hooks
  • views

/var/skins_repository/base/mail/addons/[アドオン名]以下

  • hooks

 

まずはアドオンがどういった構成で成り立っているのか上記を念頭においてください。

 

下記は実際のアドオンの構成例です。

CS-Cart アドオン開発リファレンス

これ需要あるかなー。

飯のタネなんでこういうことを明文化するのは賛否ありそうなんだけど「CS-Cart利用者」を増やす為には「採用サイトを増やす」ことと同じくらい、いや普及フェーズにおいてはそれ以上に「CS-Cartをプロモーション」する必要がある。

その為には「CS-Cartってなんぞや」ということを紹介していかなきゃいけない。

機能紹介はうちのサイトでもそのうち拡充するとして、今現在あんどぷらすにしか出来ないことをやるべきなんじゃないかと。

そのひとつが「アドオン」に関すること。

アドオンの受託開発は勿論業務として行っているんだけど、もっと多くの優秀な人たちにアドオン開発に参加してもらいたい。
世のPGとか俺より遥かに優秀な人たちばかりなので参入されるのは脅威でもあるんだけど。

そんなわけで「アドオンの作り方」的な記事を書いていこうと思う。
本当はCS-Cartそのものの動作について触れるべきなんだけどそこは最大限省略。

 

CS-Cartではアドオンと呼んでいるけど、ZenCartではモジュール、WordPressではプラグイン。色々呼び名はあるけどまぁ似たようなもの。

WordPressでは管理画面からプラグインを探してオンラインでインストールできちゃう。アップデートも管理画面からポチってやるだけで終わる。基本的にはどのプラグインも共通の作法に則って作られてるからできる芸当。
良い仕組みだよね。

ZenCartはFTPアップロードしてモジュールごとの仕様でインストール方法が異なる。ものによっては手動でSQLを走らせる必要がある。

CS-CartはアドオンのファイルをFTPでアップロードする必要はあるけど本体へのインストール、アンインストールは管理画面からポチっとすれば終わる。XOOPSみたいな感じ。

 

WordPress優位かな。現状は。
でもいずれCS-CartもWordPress的になると思うよ。いつになるか分かんないけどw

 

アドオンの構成

アドオンの仕組み(未

CS-Cart メールテンプレート拡張アドオン

過去記事でも開発中とご報告したCS-Cart用アドオン「メールテンプレート拡張アドオン」をアップデートしました。
昨日CS-Cartのフォーラムでも質問があり回答してありますが、このアドオンは下記の機能を実現するものです。

ーーーーーーーーーーーーーーーーーー

デフォルトのメールテンプレートアドオンを拡張します。(受注メール、自動返信メール、ステータス変更通知メールが対象になります)

 

機能その1:
メールテンプレート「注文内容」に商品型番を表示します。

書式を4パターンから選択できます。

  1. デフォルト(数量 × 商品名 = 小計 改行 オプション)
  2. 商品名 (商品型番) x 数量 = 小計 改行 オプション
  3. 連番 商品名 (商品型番) x 数量 = 小計 改行 オプション
  4. 連番 商品名 (商品型番) 改行 オプション 改行 数量 × 単価 = 小計

 

機能その2:
注文の支払方法「銀行振込」の時、注文内容テンプレート中の「支払方法」の内容を拡張します。

ーー下記が追加されますーー
商品代金は以下の口座へお振込みください。
~以下支払方法の編集画面、詳細設定に記載した内容~
~/br/を除去した値~
ーーここまでーー

 

CS-Cartバージョン
CS-Cart日本語版 v2.1.4-jp-2 および CS-Cart日本語版 v2.2.1-jp-1以降

ーーーーーーーーーーーーーーーーーー
管理画面、支払方法>支払方法の編集>詳細設定の画面

機能その2で挿入する文字列(銀行の口座情報)はこの画面に入力した文字列です。
メールテンプレート拡張アドオン用に文字列を新たに設定するものではなく、デフォルトで用意されている機能を最大限に流用しますので設定は非常に簡単です。

 

 

 

 

送信されるメールはこのようになります。

  • 注文商品の表示内容と順序:連番 商品名 (商品型番) 改行 オプション 改行 数量 × 単価 = 小計
  • 口座情報を注文内容テンプレートに追加する:追加する

と設定した場合に送られるメール本文です。
(住所氏名等が記載されてますがオフィスの所在地なので気にしないでください。)

 

 

 

 

 

 

 

下記はデフォルトのメールです。

 

価格は10,500円(税込)です。

ご購入はあんどぷらすのサイト もしくはCS-Cartマーケットプレイス から。

 

 

 

 

CS-Cart 日付オプションの追加アドオン

とあるアドオン開発中に必要に迫られて作ったものです。

商品オプションに「日付」がなかったなと。
CS-Cartでデフォルトで用意されているのは下記のものになります。

  1. テキストフィールド
  2. テキストエリア
  3. ラジオボタン
  4. チェックボタン
  5. セレクトボックス
  6. ファイル

オプションで日付を扱いたい場合(例えばチケット販売で日付指定するケース)、テキストフィールドに入力してもらう必要があります。
勿論運用上これで問題が無いケースもありますが

カレンダーで指定選択させたい。
入力される文字列フォーマットを統一したい 。

といった要望もあるかと思います。

というわけで日付オプションを追加するアドオンを作りました。
(携帯ではカレンダー表示できませんのでただのテキストフィールドとなります。)

日付オプションをふたつ使えば期間の指定も対応できます。(たぶん)

実装にあたってはコアも他のアドオンも触らず、当該アドオンだけで完結しますが、コアを触らない為に処理が多重化している箇所があります。
コアファイルにちょっと書き加えればもっと簡単に実装できますが「コアを触らない」ことを優先してます。

  • 商品一覧画面
  • 商品画面
  • カート
  • 注文手続き中の最終確認画面
  • マイアカウント内注文>注文情報ページ
  • 管理画面:注文内容の確認画面

これらで選択したオプション値(日付)が表示されなければいけませんのでそれなりに大変でした。

販売時期と価格は追って告知します。

開発中のアドオン達

これはメモ

 

  1. ポイント拡張アドオンアップデート(ほぼ完了)
    1. 有効期限
    2. 初回購入時のポイント利用制限
  2. メールテンプレート拡張(※機能追加後アップデート)
    1. 商品コード追加
    2. 複数レイアウトの選択
    3. 銀行振込時の口座情報追加※
  3. Moba8(完了 実運用中)
  4. 商品オプション拡張
    1. 画像登録
    2. 日付オプション
  5. ブロック内商品のランダム表示化
  6. 注文ステータス変更とユーザーグループ変更の紐付け
  7. zaiko Robot(完了 実運用中)
  8. らくちゃ
  9. 出荷代行管理(とある会社と連携)
  10. 新入荷商品へのアイコン表示
  11. ユーザーと配送方法の紐付け
  12. ユーザーと支払方法の紐付け
  13. 帳票一括出力
  14. ヤマトB2用CSV入出力
  15. 佐川e飛伝用CSV入出力
  16. 西濃カンガルーマジック用CSV入出力
  17. 日本郵便ゆうパックプリント用CSV入出力
  18. 配送伝票番号等一括入力
  19. jQuery Diapo(あんどぷらすのサイトで運用中 アドオン化はまだ)
  20. 共同購入
  21. その他非公開

 

えぇ商いどっと混むダウンロード販売終了

 

本日は件名の通り、えぇ商いどっと混むでのダウンロード販売終了のお知らせをさせていただきます。

これまで多くの方にZenCartでサイト構築する際の情報源の一端としてご利用頂くとともに、ZenCart用モジュールも数多くダウンロードしていただきました。

感謝の気持ちでいっぱいですが、この度2012年2月末日でえぇ商いどっと混むサイトのリニューアル準備のためダウンロード販売も終了することになりました。

 

オフィスあんどぷらすのサイトもリニューアルし、そちらでZenCart用モジュールやCS-Cart用アドオンのダウンロード販売を行っております。
今後はオフィスあんどぷらすのサイトをご利用頂きますようお願い申し上げます。
※えぇ商いどっと混むは今後形を変え各種情報提供を行っていくことを考えておりますが詳細は未定となっております。

 

この度は皆様方にご迷惑をおかけすることになってしまいます為、僭越ながらオフィスあんどぷらすサイトへの新規会員登録で5,000円分のポイントをプレゼントさせていただきます。
※2月末日までに新規会員登録頂いた方に限定させていただきますことご了承ください。

 

えぇ商いどっと混むではメールアドレスさえも虚偽のユーザー登録が多かったためユーザー情報の移行は行いません。
改めてご登録頂きますようお願いいたします。
なお、住所、氏名等虚偽のものと判断したご登録はご連絡なく削除いたしますのでご了承くださいませ。

オフィスあんどぷらすのサイトへのご登録は下記よりお願いいたします。

http://www.andplus.net/index.php?dispatch=profiles.add

 

リリース予定、開発予定の当方開発CS-Cart用アドオンも多数控えていきますし、今回のポイントご利用でお安くご購入頂けますのでこれを機会にCS-Cartへの乗り換えをご検討いただけたらとてもとても嬉しいです。

それでは今後ともオフィスあんどぷらすをよろしくお願いいたします。

 

CS-Cart用アドオン zaiko Robot連動アドオンの仕様

CS-Cart用アドオン zaiko Robot連動アドオンの説明の前に、zaiko Robot自体の概要を。

zaiko Robotは複数のネットショップを運営している事業体が、個々の店舗の在庫数を自動で同数に保つ為のASPサービスです。

A店舗でa商品が2個売れたら、B店舗、C店舗、D店舗の在庫数を等しく2減算するということを自動で処理します。
多店舗展開の強い味方です。

この動作をCS-Cart導入店で対応するには下記のことを行う必要があります。

  • 受注情報から商品とその個数をzaiko Robot側に通知する
  • zaiko Robot側からの在庫数変更指示を受け取る
  • 上記指示を元にCS-Cart店の在庫数を更新する
上記の動作自体はzaiko Robotがサポートしているカート、ASPどれでも差異はないのですがCS-Cart用のアドオンで特徴的なことは下記の点です。
  1. 受注メールの転送設定が不要
  2. zaiko RobotがアクセスするURLはCS-Cart導入サイトのルートでOK
また、アドオンの管理画面から次のことを設定することができます。
  • zaiko Robotから発行されるアカウント情報の設定(通知用メールアドレス含む)
  • zaiko Robotへの売上通知メールの送信可否設定
  • zaiko Robotへの通知メールに記載する店舗名の設定
zaiko Robotの利用には当該アドオンを購入頂くことと、zaiko Robotへの利用申し込みが必要になります。
オフィスあんどぷらすはzaiko Robotの販売代理店ですのでzaiko Robot利用のお申し込みも承ります。
zaiko Robot連動アドオンの販売価格は31,500円(税込)です。
リリース次第改めてエントリを立てます。

こちらも参考に

CS-Cart用アドオン 今月中に3種リリース+1種アップデート

今月中(といっても残り僅かなわけですが)に下記のCS-Cart用アドオンをリリースします。

加えて下記のアドオンに機能追加します。