LaunchCartのキャンペーン機能の使い方について説明します。
Index
キャンペーン機能でできること
キャンペーン機能では、LPでのアップセルおよびクロスセル販売を実現するための機能です。
この機能を利用することで、1回目の購入時の入力情報を用いて、ボタン一つでアップセル/クロスセルを成功させることができます。
ただし、決済時の認証のためアップセル/クロスセルを実現できない決済方法もございますので、対応可能な決済方法についてはお問い合わせください。
キャンペーンを作成する
1.【マーケティング】>【キャンペーン】>「+新規追加」をクリックします。
2.下記項目を選択/記入してください
①キャンペーン名
どのようなキャンペーンなのか判別するための名称を入力します。管理者のみ確認できる名称です。
例) 20XX年YY月 ZZZキャンペーン
②ベース商品
アップセル/クロスセル前に購入してもらう商品を設定します。
③アップセル商品
アップセル/クロスセルで購入してもらう商品を設定します。
④タイプ
アップセル/クロスセルのどちらの場合でも「アップセル」を選択します。
⑤開始時間
キャンペーン期間の開始日時の設定です。空欄でも問題ありません。
⑥終了時間
キャンペーン期間の終了日時の設定です。空欄でも問題ありません。
⑦ステータス
キャンペーンが実施可能な場合には「オープン」、停止状態にしたい場合には「クローズ」を選択します。
LPでのアップセル/クロスセル販売を利用できるようにする
アップセル/クロスセル販売を利用するためには、3つのテンプレートを準備/調整する必要があります。
1.ベース商品を購入してもらうためのLPの準備/調整
1 2 3 4 |
{{ app.session.set('slug_name', 'upsaleLP-1') }} {{ app.session.set('is_up_sale_origin', true) }} {{ app.session.set('campaign_id', 1) }} {# 1はサンプル値なので、必要に応じて変更してください#} {{ app.session.set('pagesession', 1) }} {# 1はサンプル値なので、必要に応じて変更してください#} |
2.アップセル商品を購入してもらうためのLPの準備/調整
ここでは例として、アップセルLPのルーティングを「upsaleLP-2」としてお伝えします。
このLP(テンプレート)は、以下の情報をベースにご用意ください。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
{% set productSkuId = app.session.get('productSkuId') %} {% set productid = app.session.get('productid') %} {% set upsaleProductSku = get_entity_manager().getRepository('EcCoreBundle:ProductSku').find(productSkuId) %} {% if upsaleProductSku.isRegular %} {% if app.session.get('regular_int') %} {% set regular_int = app.session.get('regular_int') %} {% else %} {% set regular_int = 1 %} {# 1は配送頻度IDのサンプル値なので、必要に応じて変更してください#} {% endif %} {% else %} {% set regular_int = '' %} {% endif %} {% set productArray = [{"skuId" : productSkuId,"regular_interval" : regular_int}] %} {% set slug_name = "upsaleLP-2" %} {{ app.session.set('is_up_sale', true) }} {{ app.session.set('pagesession', 2) }} {# 2はサンプル値なので、必要に応じて変更してください#} <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-Hant-TW" lang="zh-hk"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <title>SterField DEMO Online Shop</title> <meta name="description" content="" /> <meta name="keywords" content="" /> <meta name="author" content="" /> <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" /> <meta http-equiv="content-script-type" content="text/javascript" /> <link rel="stylesheet" href="{{asset("resources/lp/css/reset.css")}}" /> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> </head> <body> <div class="wrapper"> <div style="text-align:center;"> <p class="txt01">アップセルLP</p> <p><img src="resources/lp/images/main.jpg" style="max-width: 100%;"></p> <a href="https://sample-domain.com/regular_purchase">単品コースで申し込む</a> {# アップセルしない場合のボタン。必要に応じて静的ページを用意して変更してください#} {% if form_lp is not defined%} {% set form = landing_page_api.getLandingPageFormView(upsaleProductSku.product.id, app.request) %} {% else %} {% set form = form_lp %} {% endif %} <form id="{{ form.vars.id }}" name="cartin" action="{{ path("ec_client_landing_page_up_sale_settlement", {"slug": slug_name, "product_id":upsaleProductSku.product.id})}}#{{ form.vars.id }}" method="post"> {{ form_errors(form) }} {{ form_widget(form._token) }} {{ form_widget(form.token) }} {{ form_widget(form.tokennumber) }} <input type="hidden" id="ec_client_landing_page_type_product_sku_id" name="ec_client_landing_page_type[product_sku_id]" value="{{ productSkuId }}" > <input type="hidden" id="ec_client_landing_page_type_regular_interval" name="ec_client_landing_page_type[regular_interval]" value="{{ regular_int }}"> <input type="hidden" id="ec_client_landing_page_type_quantity" name="ec_client_landing_page_type[quantity][{{ productSkuId }}]" value="1"> <input type="hidden" name="ec_client_landing_page_type[option6]" value="{{ slug_name }}" > <button type="submit" class="productChange">お得な定期コースを申し込む</button> </form> </div> </div> </body> <style> .wrapper{ margin-bottom: 30px; } form{ display: inline-block; } .txt01{ font-size: 50px; color: red; font-weight: bold; } button,a{ background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #ffd700), color-stop(1.0, #ff8c00)); border: 1px solid #ff0; border-color: #ffa500 #a0522d #a0522d; box-shadow: 0px 0px 1px #fff inset; border-radius: 10px; display: inline-block; padding: 12px 50px; color: #fff; font-weight: bold; font-size: 24px; cursor: pointer; margin-top: 18px; } a{ margin-right: 10px; text-decoration: none; background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0.00, #888), color-stop(1.0, #888)); border: 1px solid #888; border-color: #888 #888 #888; box-shadow: 0px 0px 1px #fff inset; } </style> </html> |
3.サンクスページの調整(ベース商品LPからアップセルLPへのリダイレクト)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
{% set campaign = order_group.saleCampaign %} {% if (campaign) %} {% set productDef = get_entity_manager().getRepository('EcCoreBundle:ProductSku').find(campaign.upsaleOriginalProductId) %} {% set product = get_entity_manager().getRepository('EcCoreBundle:Product').find(productDef.product.id) %} {% set productid = productDef.product.id %} {% set SkuId = campaign.upsaleProductId %} {% set regular_int = "" %} {% set upsaleOriginalProductId = campaign.upsaleOriginalProductId %} {% if (upsaleOriginalProductId)%} {{ app.session.set('productSkuId', campaign.upsaleProductId) }} {% set productSkuId = app.session.get('productSkuId') %} {% set productArray = [ {"skuId" : productSkuId,"regular_interval" : regular_int} ] %} {# Customer Information #} {{ app.session.set('productID', productid) }} <!-- 元商品 --> {{ app.session.set('productSkuId', campaign.upsaleProductId) }} <!-- アップセル後の商品 --> {{ app.session.set('regular_int', regular_int) }} <!-- アップセル後の定期頻度 --> {% if app.session.get('pagesession') == 1 %} <script> setTimeout(function () { window.location.href = "https://demo-casual.denv.sterfield.co.jp/upsaleLP_2"; }, 2500); {# 2.5秒後にアップセルLPにリダイレクト #} </script> {% endif %} {% endif %} {% endif %} |
キャンペーン一覧
【マーケティング】>【キャンペーン】より、全てのキャンペーンの一覧を見ることができます。
各キャンペーンの詳細を変更したい場合は、変更したいキャンペーンの「id」か「キャンペーン名」「編集ボタン」をクリックすると、編集ページへ遷移します。