【開発コミュニティの人気Tipsをご紹介⑤】カートに入れるボタンを作ってみる
EC-CUBEでは、ご利用者同士が問題解決方法を投稿・共有できる「開発コミュニティ」を開設し、多くの方にお使いいただいています。この連載では、開発コミュニティで話題のカスタマイズや、よく質問にあがる「これってどうやるの?」について解説を行っていきます。
※過去の記事はこちらからご覧いただけます。
- 【開発コミュニティの人気Tipsをご紹介①】「すぐに購入する」ボタンを追加してみる
- 【開発コミュニティの人気Tipsをご紹介②】EC-CUBEで会員制サイトを作ってみよう
- 【開発コミュニティの人気Tipsをご紹介③】コントローラ付きのブロックを追加してみよう
- 【開発コミュニティの人気Tipsをご紹介④】ログインブロックを作成してみよう
管理画面のページ管理で作成したランディングページで、カートボタンを作る場面はよくあると思います。今回は、通常の商品詳細ページではなく、独自ページにカートにいれるボタンを作るカスタマイズをご紹介します。
1. ページを作成する
管理画面の、コンテンツ管理>ページ管理から新規ページを作成します。
- 名称:パーコレータLP
- URL:percolator
- ファイル名:percolator
- 内容:
{% extends 'default_frame.twig' %} {% block main %} {% endblock %}

/user_data/percolator にアクセスし、画面が表示されたらOKです。

EC-CUBE公式アドバイザーが、ツール選びからサイト制作、マーケティング・セキュリティの領域までアドバイスいたします。ご相談窓口はこちら
2. カートに入れる処理を実装する
ベースとなるページは作成できたので、ここからはカートに入れる処理を記述していきます。
作成したページの内容を、以下のように修正します。
{% extends 'default_frame.twig' %} {% block main %} <button class="btn-default" id="cart-add">カートに入れる</button> {% endblock %} {% block javascript %} <script> $('#cart-add').on('click', function () { $.ajax({ url: "{{ url('cart_add') }}", type: 'POST', data: { 'product_class_id': 10, 'quantity': 2 }, dataType: 'html', }).done(function (data) { alert('カートに追加しました。'); }).fail(function (data) { alert('カートの追加に失敗しました。'); }); }); </script> {% endblock %}
画面に戻り、カートボタンをクリックしてみましょう。
「カートに追加しました」とメッセージが表示されれば成功です。

カート画面にアクセスすると、カートに追加できているのがわかります。

3. カートブロックを更新する
先程の修正で、カートに追加することはできましたが、ページ右上のカートエリアは更新されていません。商品追加後、カートエリアも更新するように修正してみます。
{% extends 'default_frame.twig' %} {% block main %} <button class="btn-default" id="cart-add">カートに入れる</button> {% endblock %} {% block javascript %} <script> $('#cart-add').on('click', function () { $.ajax({ url: "{{ url('cart_add') }}", type: 'POST', data: { 'product_class_id': 10, 'quantity': 2 }, dataType: 'html', }).done(function (data) { alert('カートに追加しました。'); $.ajax({ url: "{{ url('block_cart') }}", type: 'GET', dataType: 'html' }).done(function(html) { $('#cart_area').html(html); }); }).fail(function (data) { alert('カートの追加に失敗しました。'); }); }); </script> {% endblock %}
「カートに追加しました」の後に、カートブロックを取得しなおす処理を追加しています。
動作確認をして、カートブロックが更新されればOKです。

最後に
カートに入れるボタンの作成については以上です!
いかがでしたでしょうか?
開発コミュニティでは、「EC-CUBE」 をより快適で便利なものにしていくために、エンジニアの方はもちろんのこと、ショップ運営者の方、デザイナーの方など、 EC構築・運営に関わる多くの方々のご参加をお待ちしています。
「どうか教えてください!」「バグ見つけましたよ」「こんな機能あったらなぁ」といったテーマごとにスレッドが分かれていますので、気になるキーワードがあれば開発コミュニティへ訪れてみてください。
他の記事もご覧ください
-
ネットショップ開業に必要な8つのステップ
オンラインショッピングの比率が高まる中、ネットショップを開業してみようと思う個人事業主・フリーランスの方も多いのではないでしょうか? しかし実際に開業を検討すると、ネットショップの開業手続きは手間がかかりそう ネットショップをオープンするまでに何をする必要があるかわからない そんな不安のある方も多いかと思います。今回の記事ではネットショップ開業の手続き、販売開始までにやるべきことを8つのステップでわかりやすく解説します。これからネットショップを開業するか検討したい、という会社員の方にも参考になれば幸いです。
-
ECサイトの構築ガイド/作り方と手順や費用もご紹介
「これからECサイトを構築することになったが、何から手をつけたらよいかわからない」「ECサイトをリニューアルすることになったが、どのパッケージを使えばベストなのかわからない」「ASPカート、パッケージ、オープンソース、フルスクラッチの違いや特徴がいまいち理解できていない」とお悩みのご担当者は多いのではないでしょうか?この記事ではECサイト制作・構築のステップ、よくある困りごとと対策などを解説していきます。ECサイトをこれから立ち上げる予定の方、リニューアルを検討している方にとって何かひとつでもお役に立てば幸いです。
-
ECサイトのリニューアルを成功させるコツ!手順、タイミング、注意すべき点を解説
ある調査結果では、80%の企業が現在使っているECプラットフォームに不満を感じているようです。そこで今回の記事では、ECサイトをリニューアルするタイミング、リニューアルの手順、注意すべきことや成功のポイントを解説していきます。「これからECサイトをリニューアルしたいが、失敗したくない・回り道をしたくない」と考えている方のヒントになれば幸いです。