バージョン選択

フォーラム

メニュー

オンライン状況

35 人のユーザが現在オンラインです。 (21 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 35
もっと...

サイト内検索

質問 > その他 > EC-CUBE3でランディングページ内に購入フォーム

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
yusuke0911
投稿日時: 2018/6/11 15:30
対応状況: −−−
半人前
登録日: 2017/5/2
居住地:
投稿: 21
EC-CUBE3でランディングページ内に購入フォーム
▼テンプレート
[EC-CUBE]3.0.16
[レンタルサーバ]ロリポップ スタンダード
[OS] macOS High Sierra
[PHP]PHP Version 5.6.21
[データベース]mysql

EC-CUBE3を新しくインストールしました。
トップページをランディングページにカスタマイズし、そのランディングページ内に購入フォームを入れたいと考えています。

以下のようなイメージで考えているのですが、素人なのでわからないことも多く、間違っているところや必要な作業などお教えいただければ幸いです。

①ランディングページ内に、既存の購入フォームのコードをコピーして入れる
②特定の商品IDを取得?して購入できるようにする。

このようなことが可能でしょうか。わかる方がいらっしゃいましたらお力をお貸しいただければ幸いです。

よろしくお願いいたします。
umebius
投稿日時: 2018/6/11 15:45
対応状況: −−−
登録日: 2016/7/22
居住地: Tokyo
投稿: 1007
Re: EC-CUBE3でランディングページ内に購入フォーム
ランディングページ内で購入完結させるのは非常に難しいですが、

ランディングページからカートを飛ばして注文確認画面まで行くのでよければ、それほど難しくありません。

まず購入したい商品ID、商品規格IDを特定。

ランディングページのフォームでAddCartTypeというフォームを使用して、CartServiceのaddProductというメソッドで商品を追加。(先に何か入っていればクリアすることも)

あとは/cart/buystepというURLにリダイレクトすれば、エラーがなければ注文確認画面まで表示できます。


----------

購入フォーム自体をLPに入れる場合ですが(次は完了画面)
受注生成のロジックを自前で書いてやる必要がございます。
その辺りはShoppingServiceのクラスを参考にされると良いかと思います。


----------------
////////////////
(株)U-Mebius EC-CUBE3 カスタマイズ /バグ修正/SEO はおまかせ
一緒にEC-CUBEでサイト制作を行うプログラマ・コーダー・デザイナー募集

yusuke0911
投稿日時: 2018/6/11 17:28
対応状況: −−−
半人前
登録日: 2017/5/2
居住地:
投稿: 21
Re: EC-CUBE3でランディングページ内に購入フォーム
ご丁寧に説明していただきありがとうございます。

せっかく回答をいただいたのですが、まずフォームを入れることができません。既存のフォーム(非会員購入情報入力というページのフォームの部分)をそのままコピペするとシステムエラーになってしまいます。

あまりに知識がなく申し訳ないのですが、どのようにしてAddCartTypeのフォームを入れるのかというのはお教えいただくことは可能でしょうか。


umebius
投稿日時: 2018/6/11 17:35
対応状況: −−−
登録日: 2016/7/22
居住地: Tokyo
投稿: 1007
Re: EC-CUBE3でランディングページ内に購入フォーム
yusuke0911様

可能な限りはお話いたしますが、容易にできるものではなく、おそらく非常に長く複雑になると思います。
まず、前提なのですがLPはコンテンツ管理のページ管理から
作成されたページでしょうか?

すみません、Topページですね。
ではTopControllerでProductControllerのdetailメソッド内にある

$Product = ~~~// 事前に取得しておく

/* @var $builder \Symfony\Component\Form\FormBuilderInterface */
$builder = $app['form.factory']->createNamedBuilder('', 'add_cart', null, array(
'product' => $Product,
'id_add_product_id' => false,
));

$event = new EventArgs(
array(
'builder' => $builder,
'Product' => $Product,
),
$request
);
$app['eccube.event.dispatcher']->dispatch(EccubeEvents::FRONT_PRODUCT_DETAIL_INITIALIZE, $event);

/* @var $form \Symfony\Component\Form\FormInterface */
$form = $builder->getForm();


を追加して、twigへ渡してみてください。


----------------
////////////////
(株)U-Mebius EC-CUBE3 カスタマイズ /バグ修正/SEO はおまかせ
一緒にEC-CUBEでサイト制作を行うプログラマ・コーダー・デザイナー募集

umebius
投稿日時: 2018/6/11 17:39
対応状況: −−−
登録日: 2016/7/22
居住地: Tokyo
投稿: 1007
Re: EC-CUBE3でランディングページ内に購入フォーム
あるいは、カートへ飛ばすまででよろしければ
商品詳細ページと同じフォームを作って、該当の商品ページへPOSTするだけでも可能です。
yusuke0911
投稿日時: 2018/6/12 9:27
対応状況: −−−
半人前
登録日: 2017/5/2
居住地:
投稿: 21
Re: EC-CUBE3でランディングページ内に購入フォーム
お世話になっております。

カートページへ直接飛ばす方法にしたいと思います。

商品詳細ページのフォームを貼り付けてみたのですが、システムエラーとなってしまいます。

どこを修正すればよろしいでしょうか。。。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBEペイメント

統計情報

総メンバー数は33,294名です
総投稿数は87,800件です

投稿数ランキング

1
seasoft
7331
2
AMUAMU
2712
3
nanasess
1796
4
yuh
1515
5
468
1275
6
red
1178
7
umebius
1007
8
fukap
907
9
shutta
827
10
tsuji
815
11 ramrun 789
12
tao_s
665
13 karin 656
14 sumida 641
15
homan
633
16
h_tanaka
572
17 DELIGHT 571
18
patapata
502
19
flealog
483
20 tonton 436


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© LOCKON CO.,LTD. All Rights Reserved.