76
XoopsEC Distribution Package Presented By Bluemoon inc. and GMO Payment Gateway 2013 2 - 13

XOOPS EC Distribution

Embed Size (px)

Citation preview

Page 1: XOOPS EC Distribution

XoopsECDistribution Package

Presented By Bluemoon inc.and GMO Payment Gateway

2013 – 2 - 13

Page 2: XOOPS EC Distribution

自己紹介

• 有限会社ブルームーン CEO 酒井能克

• Twitter @bluemooninc

• https://www.facebook.com/bluemooninc

• http://www.bluemooninc.jp

• N88-Basic,MASM,Quick-C,MS-C,VB,桐,dBaseIII,MS-Access 2.0 – 2013,PHP, JavaScript 等プログラム歴30年

• MdNウェブデザイン特別号執筆。

Page 3: XOOPS EC Distribution

コンセプト

• シンプルに導入しやすく!os-commerce,zen-cart,ec-cube,magento,uu-cart等色んなオープンソースの経験より

• 磨き込まれたUXヲトリイレヨ

ヤフオクとかアマゾンとか良いので真似る。

• コアは最小限に拡張性は無限に

学習コストを最小にするが拡張性は犠牲にしない。

Page 4: XOOPS EC Distribution

https://www.xoopsec.com

Page 5: XOOPS EC Distribution

https://github.com/bluemooninc/xoopsec

Page 6: XOOPS EC Distribution

特徴

• ヤフオク&アマゾンから発想したUX• アマゾンと同様の簡単クレジット決済• スマホ/タブレット自動サイズ調整• メール通知と共にサイト内メッセージも配信• CSVインポート・エクスポート=全テーブル• 動作環境=PHP5.3/MySQL5.5以降• GPL V3 オープンソース・無償ダウンロード• XOOPS Cube V2.2最新コア対応• Legacy モジュール上位互換(機能追加あり)

Page 7: XOOPS EC Distribution

導入ガイダンス

Page 8: XOOPS EC Distribution

インストール

• html, xoops_trust_path をサーバにアップ

Page 9: XOOPS EC Distribution

ウィザードの始まり

Page 10: XOOPS EC Distribution

アクセス権限チェック

Page 11: XOOPS EC Distribution

データベースの設定

Page 12: XOOPS EC Distribution

内容を確認

Page 13: XOOPS EC Distribution

mainfile.php の生成

Page 14: XOOPS EC Distribution

書込可能フォルダのチェック

Page 15: XOOPS EC Distribution

設定のチェック

Page 16: XOOPS EC Distribution

データベースの設定

Page 17: XOOPS EC Distribution

データベースの存在チェック

Page 18: XOOPS EC Distribution

データベースの作成とチェック

Page 19: XOOPS EC Distribution

システムテーブル作成

Page 20: XOOPS EC Distribution

アプリのインストール

Page 21: XOOPS EC Distribution

サイトページへログイン

Page 22: XOOPS EC Distribution

バックヤードへ

Page 23: XOOPS EC Distribution

ブロックの表示位置調整

Page 24: XOOPS EC Distribution

デモサイトと同様の画面

Page 25: XOOPS EC Distribution

クレジット機能のセットアップ

Page 26: XOOPS EC Distribution

GMO-PGX モジュール

Page 27: XOOPS EC Distribution

GMO-PG API連携の設定

Page 28: XOOPS EC Distribution

クレジットカードのテストID取得

https://service.gmo-pg.com/cyllene/entry/trialStart.htm

Page 29: XOOPS EC Distribution

登録してメールを受信

Page 30: XOOPS EC Distribution

テスト環境使用の確認

Page 31: XOOPS EC Distribution

ID/PWをメールで取得

Page 32: XOOPS EC Distribution

ショッピングカートについて

Page 33: XOOPS EC Distribution

最近チェックした商品

• 非ログイン時はセッションで管理

• ログインしてもセッションを引き継ぐ

• 常に最新のチェック品が左先頭来る

• 左右スライダーでページ切り替え

Page 34: XOOPS EC Distribution

カテゴリー

• ヤフオクと同じUXで動くカテゴリーブロック

• カテゴリーの樹形図は無限(Callback with closure 使用=PHP V5.3 以降必須)

Page 35: XOOPS EC Distribution

商品の編集について

• クリックで商品詳細>編集へ

Page 36: XOOPS EC Distribution

商品の編集

• 編集する>バックステージの編集へ

Page 37: XOOPS EC Distribution

画像を説明文に追加• 商品説明にも画像の追加が可能

Page 38: XOOPS EC Distribution

サーバ側での画像管理

Page 39: XOOPS EC Distribution

商品説明の整形例

Page 40: XOOPS EC Distribution

新規商品の登録

Page 41: XOOPS EC Distribution

商品一覧

Page 42: XOOPS EC Distribution

商品一覧で追加を確認

• 鉛筆アイコンで再編集• ×は削除• その隣は画像ファイル登録• 目のアイコンは表の画面で確認• 販売しない時は、在庫を0にしておきます。

Page 43: XOOPS EC Distribution

画像カタログに写真を追加

Page 44: XOOPS EC Distribution

商品画像一覧表で確認

Page 45: XOOPS EC Distribution

2枚目の画像を追加

• 無限に追加可能

Page 46: XOOPS EC Distribution

2枚の画像を登録完了

Page 47: XOOPS EC Distribution

表の画面で確認

Page 48: XOOPS EC Distribution

カートに入れてレジへ

Page 49: XOOPS EC Distribution

注文内容の確認• 配送先を入力して、支払い方法を選択>注文を確定

Page 50: XOOPS EC Distribution

お届け先を入力

Page 51: XOOPS EC Distribution

お届け先登録完了

Page 52: XOOPS EC Distribution

クレジットカードの利用登録

• 全ページ右側のクレジットカード下のボタンをクリック

Page 53: XOOPS EC Distribution

登録完了

• 既に登録されている場合はワーニング

Page 54: XOOPS EC Distribution

クレジットカード登録

• GMOペイメントのAPIで登録

Page 55: XOOPS EC Distribution

注文を確定する

Page 56: XOOPS EC Distribution

ご注文一覧

• ご注文有り難うございますのメッセージ後遷移先

Page 57: XOOPS EC Distribution

確認メール

• Bmcart/languages/ja_utf_8/ThankYouForOrder.tpl

メッセージでも補完

Page 58: XOOPS EC Distribution

注文一覧

管理者メニューより注文一覧をクリック

Page 59: XOOPS EC Distribution

配送情報の入力

Page 60: XOOPS EC Distribution

クレジット課金

決済実行で課金API実行。日時が入り、決済実行アイコン(鍵)が消える。

Page 61: XOOPS EC Distribution

商品発送の連絡

Page 62: XOOPS EC Distribution

発送メール

• Bmcart/languages/ja_utf_8/ShoppingNpw.tpl

Page 63: XOOPS EC Distribution

CSV入出力

• モジュール名テーブル名毎にCSVを入出力

• エクセルファイルで編集して一括登録可

• テストと本番のデータ入れ替えに最適

Page 64: XOOPS EC Distribution

B.M.Cart CSV

• ダウンロードするとヘッダ付きCSVをエクセルで編集できる。エクセル編集後のCSVを読み込ませて更新、追加が可能。

Page 65: XOOPS EC Distribution

Category

• 樹形構造=parent_id

• カテゴリーID=category_id

Page 66: XOOPS EC Distribution

Item (商品)

• `item_id` int(8) unsigned NOT NULL auto_increment, 商品ID• `category_id` int(8) unsigned NOT NULL, カテゴリID• `uid` int(8) unsigned NOT NULL, 登録者ユーザID• `item_name` varchar(255) NOT NULL, 商品名称• `item_desc` text, 商品説明• `price` decimal(13,2), 商品価格• `shipping_fee` decimal(13,2), 送料• `stock_qty` int(1) unsigned NOT NULL, 在庫数量• `last_update` int(10) unsigned NOT NULL, 最終更新日• `publish_date` int(10) unsigned NOT NULL, 公開日(将来対応予定)• `expire_date` int(10) unsigned NOT NULL, 公開終了日(将来対応予定)

Page 67: XOOPS EC Distribution

Order

• `order_id` int(8) unsigned NOT NULL auto_increment, 注文番号• `uid` int(8) unsigned NOT NULL, ユーザID• `first_name` varchar(80) NOT NULL, 名• `last_name` varchar(80) NOT NULL, 氏• `zip_code` varchar(10) NOT NULL, 郵便番号• `state` varchar(32) NOT NULL, 都道府県• `address` varchar(80) NOT NULL, 市区町村• `address2` varchar(80) NOT NULL, 番地、建物等• `phone` varchar(12) NOT NULL, 電話番号• `payment_type` tinyint(1) unsigned NOT NULL, 支払い(1:銀行振込、2:カード• `card_order_id` varchar(14), カード側へのオーダーID• `sub_total` decimal(13,2), 商品系• `tax` decimal(13,2),消費税• `shipping_fee` decimal(13,2),送料• `amount` decimal(13,2), 合計• `order_date` int(10) unsigned, 注文日時• `paid_date` int(10) unsigned, 支払日• `shipping_date` int(10) unsigned, 配送日• `shipping_carrier` varchar(32), 配送会社名称• `shipping_number` varchar(24), 配送伝票番号• `shipping_memo` text, 配送に関するメモ• `notify_date` int(10) unsigned, 配送事項送信日時

Page 68: XOOPS EC Distribution

OrderItems

• `orderItem_id` int(8) unsigned NOT NULL auto_increment, 注文カウントID

• `order_id` int(8) unsigned NOT NULL, 注文ID• `item_id` int(8) unsigned NOT NULL, 商品ID• `price` decimal(13,2),商品価格• `shipping_fee` decimal(13,2),送料• `qty` int(1) unsigned NOT NULL,数量

Page 69: XOOPS EC Distribution

フォルダ構成等

• 色々ある

Page 70: XOOPS EC Distribution

本日リリースした内容まとめ

Page 71: XOOPS EC Distribution

使ったテーマ

Page 72: XOOPS EC Distribution

フレームワーク

• Achtungbaby(と呼んでます)

– admin = Mojavi のactionです

– App = CakePHPのフォルダ構成

– Model = FuelPHPのForge

• それぞれの好きなとこだけ集めて作りました。

Page 73: XOOPS EC Distribution

MVCフレームワーク

• 代表的な フレームワーク• 2003年 phrame フレームワークの黎明期• 2004年 Mojavi MVCフレームワークの台頭• 2005年 Agavi, Ethna, Maple フレームワーク戦争時代

• 2006年 CakePHP,Ruby on RailのRAD機能を• もつフレームワークの登場• 2007年 symfony,Zend Framework 企業レベルで開発されたフレームワークの台頭

• 2011年 FuelPHP RAD熟成期 Rest コントローラや名前空間等、PHPやWebのAPI進化と共に

Page 74: XOOPS EC Distribution

Achtungbabyって何?

• XOOPS Cube に置ける Mojavi フレーム派生

• CakePHP の App フォルダ構成>RADで次に何をすればいいかレスポンシブな反応がフレームワームに欲しかった。

• FuelPHP の Model 構成>handlerはテーブル毎だがまるっとビジ

ネスロジックをやってくれる場所が欲しかった。

• 無い>作った!(今ココ)

Page 75: XOOPS EC Distribution

次にしたい事を教えてくれる

/modules/bmcart/コントローラ名/メソッド名/値1/2

Page 76: XOOPS EC Distribution

Model_Forgeカートの中身を見るには色々なテーブルのビジネスロジックを丸っと書く>それはコントローラでは無い