Shoping Cart拡張アプリ アップデートのお知らせ 2023年5月


この記事では、ShoppingCart 拡張アプリ について、2023年5月9日にリリースした  Ver. 2.1.0、Ver. 2.1.1 の内容及び、5月15日にリリースした Ver. 2.1.2 について紹介いたします。

現在お困りの問題に該当する項目がありましたら、お早めにバージョンアップのご検討をお願いいたします。

Ver. 2.1.0 のリリースノート

Added

  • Order_Summaryモジュールで注文商品・決済方法・追加手数料・配送地域・総注文商品(エントリー)数合計・総注文商品の数量合計のデータを出力できるブロック、変数を追加
  • ShoppingForm モジュールで適用中の決済方法の説明用画像を表示できるように改良
  • 決済方法に利用条件を設定できる機能及び、利用条件を満たした決済方法を表示するモジュール(Payment_Select)を追加
  • フォーマットした送料無料のしきい値(小計)を表示するグローバル変数(%{SHIPPING_FREE_SUBTOTAL_FORMATTED} )を追加
  • ShoppingCart 及び ShoppingCart_Summary モジュールで配送グループ(shippingGroup)ブロックを表示できるように改修
  • 決済方法・配送グループ・追加手数料にステータス設定を追加(公開 or 非公開)& Payment_Selectモジュールでステータスを考慮した決済方法のみを表示するように改修 & ステータスを考慮した配送グループ・追加手数料を表示するモジュール(ShippingGroup_AdminSelect・Addition_Select)を追加
  • Squareで決済をした場合、レシート番号(square-receiptNumber)とレシートURL(square-receiptUrl)をメール用の変数として表示できる機能を追加
  • ShoppingCart_Summary モジュールで税金情報と小計を表示できる変数を追加(taxAmount:loop, subtotal)

Changed

  • ECテーマのカート追加・更新・削除時にJavaScriptを触らずにバリデーションを追加できる用に変更
  • 管理画面のタブの分け方を変更
  • ECテーマでOrder_SummaryモジュールからAPI経由で取得していたカート内商品のデータをShoppingCart_Summary に置き換え
  • ECテーマの決済フォームのカテゴリーを cart → shopping に変更
  • ECテーマ決済フォームにおいて、注文情報を Order_Summaryモジュールで表示するように変更
  • ECテーマの不要なCSS及びJavaScript を削除など整理

Fixed

  • ECテーマのカート追加時に、カラーとサイズの必須チェックをするように修正
  • 送料無料のしきい値に0を設定した場合に、送料無料にならない問題の修正
  • ShippingCart_Summaryモジュールの変数表に(sort, usort, csort, ecd)を追加
  • 設定されている決済方法・配送グループ・追加手数料が0個の場合、エラーが出る問題を修正

Ver. 2.1.1 のリリースノート

Fixed

  • fix: PHP7.4で syntax error, unexpected '|', expecting variable (T_VARIABLE) が発生する問題の修正
  • ECテーマ詳細ページの Entry_Summary で ページネーションが表示されてしまう問題の修正

Ver. 2.1.2 のリリースノート

Fixed

  • ECテーマ: IOSでモーダルの背景がスクロールできてしまう問題の修正
  • ShippingGroup_AdminSelect モジュールの変数表が間違っている問題の修正
  • Firefox でクレジットカード決済が必ずエラーになってしまう問題の修正
  • Ver. 16 未満の Safariで Square の クレジットカード情報取得時にフォームが送信されない問題の修正
  • カート及び決済フォームを表示するページはページキャッシュされないように修正

主なリリースノート内容

今回のリリースではいくつか新しい機能が追加されていますが、新しい機能を利用するためにテンプレートの変更が必要になることがあります。

そのため、この記事では、テンプレートの変更が必要になる部分について詳しく説明いたします。

決済方法に利用条件を設定できる機能及び、利用条件を満たした決済方法を表示するモジュール(Payment_Select)を追加

Ver. 2.1.0 より、決済手数料を利用条件毎に設定できるようになりました。

具体的には、注文の合計金額(決済手数料を含めます)が0円 ~ 9999円の場合の決済手数料は 330 円、10000円 以上の場合の決済手数料は 440 円 のような要件が実現可能になりました。

特に、代引き手数料では、実際に購入者が支払う金額によって決済手数料が変動する場合があるため、決済手数料を利用条件毎に設定することで、販売者側が損をしてしまうといったことをなくすことが可能です。

Ver.2.1.0 より前のバージョンに同梱の EC テーマをご利用の場合、決済手数料を利用条件毎に設定できるようにするためにはテーマのテンプレートを変更する必要があります。

変更点としては、決済フォームで決済方法の選択肢を表示するために利用しているモジュールを ShoppingCart_Settings モジュールから Payment_Select モジュールに置き換える必要があります。

ECテーマで決済方法を表示しているところを、Payment_Select モジュールに置き換えてください。以下はサンプルコードになります。

        <!-- BEGIN_MODULE Payment_Select -->
        <ul class="form-table-list">
          <!-- BEGIN payment:loop -->
          <li class="form-table-list-item">
            <div
              class="acms-form-radio payment-method-select"
            >
              <input
                id="input-radio-payment-method-{block}"
                type="radio"
                name="payment-method"
                value="{block}"
                \{payment-method:checked#{block}\}
                <!-- BEGIN_IF [\{payment-method\}/em/_and_/{payment.i}/eq/1] -->
                checked="checked"
                <!-- END_IF -->
                data-validator="payment-method"
              />
              <label for="input-radio-payment-method-{block}">
                <i class="acms-ico-radio"></i>{name}<!-- BEGIN_IF [{commissionPaid}/gt/0] -->:手数料 ¥{commissionPaid}[number_format]<!-- END_IF -->
              </label>
              <!-- BEGIN description:veil -->
              <div class="form-table-description">
                <!-- BEGIN_IF [{description}[delnl]/nem] -->
                <div class="form-table-message">{description}[nl2br]</div>
                <!-- END_IF -->
                <!-- BEGIN_IF [{image@path}/nem] -->
                <img
                  src="%{MEDIA_ARCHIVES_DIR}{image@path}"
                  class="acms-img-responsive"
                  alt="{image@alt}"
                  width="{image@width}"
                  height="{image@height}"
                >
                <!-- END_IF -->
                <!-- BEGIN_IF [{block}/eq/creditcard] -->
                @include("/include/parts/card-form.html")
                <!-- END_IF -->
              </div>
              <!-- END description:veil -->
            </div>
          </li>
          <!-- END payment:loop -->
        </ul>
        <!-- END_MODULE Payment_Select -->

Payment_Select モジュールに置き換えることで、利用条件に当てはまる決済方法のみを選択肢として表示することができます。また、{commissionPaid} 変数で表示される決済手数料においても利用条件を考慮した金額が表示されます。

また、購入者が決済方法の選択を行うステップより前に配送先や追加手数料を選択するフォームのステップを設置する必要があることに注意してください。

これは決済手数料の利用条件として設定する金額は配送手数料や追加手数料を含んだ購入者が支払う合計金額のことになり、決済手数料を計算するためには配送手数料や追加手数料が決定している必要があるためです。

決済方法の利用条件設定についての詳しい内容はドキュメントに記載しましたので、以下のリンクからご確認ください。


決済方法・配送グループ・追加手数料にステータス設定を追加(公開 or 非公開)& Payment_Selectモジュールでステータスを考慮した決済方法のみを表示するように改修 & ステータスを考慮した配送グループ・追加手数料を表示するモジュール(ShippingGroup_AdminSelect・Addition_Select)を追加

Ver. 2.1.0 より、決済方法・配送グループ・追加手数料にステータス(公開 or 非公開)を設定できるようになりました。

これにより、管理者側としては設定画面に登録しておきたいが、閲覧者には表示させたくないといった仕様を実現できるようになりました。

Ver.2.1.0 より前のバージョンに同梱の EC テーマをご利用の場合、ShoppingCart 設定画面で設定した決済方法・配送グループ・追加手数料のステータスを考慮した選択肢を表示するためには、それぞれ Ver. 2.1.0 で新しく追加されたモジュールに置き換える必要があります。

決済方法の場合

ステータスが「公開」の決済方法のみを購入フォームで表示するためには Payment_Select モジュールを利用する必要があります。こちらの変更方法については、先程、「決済方法に利用条件を設定できる機能及び、利用条件を満たした決済方法を表示するモジュール(Payment_Select)を追加」で説明いたしましたので割愛させていただきます。

配送グループの場合

ステータスが「公開」の配送グループのみをエントリー編集画面で表示するためには ShippingGroup_AdminSelect モジュールを利用する必要があります。

Ver. 2.0.0 に同梱の EC テーマのエントリー編集画面で配送グループの選択肢を ShoppingCart_Settings モジュールで表示しているテンプレートを、 ShippingGroup_AdminSelect モジュールに置き換えてください。以下はサンプルコードになります。

<select name="item_shipping_group_id">
  <!-- BEGIN_MODULE ShippingGroup_AdminSelect -->
    <!-- BEGIN shippingGroup:loop -->
    <option value="{id}" \{item_shipping_group_id:selected#{id}\}>{name}</option>
    <!-- END shippingGroup:loop -->
    <!-- END_MODULE ShippingGroup_AdminSelect -->
  </select>
<input type="hidden" name="field[]" value="item_shipping_group_id" />

ShippingGroup_AdminSelect モジュールに置き換えることで、ステータスが「公開」の配送グループのみをエントリー編集画面で表示することができるようになります。

追加手数料の場合

ステータスが「公開」の追加手数料のみを購入フォームで表示するためには Addition_Select モジュールを利用する必要があります。

Ver. 2.0.0 に同梱の EC テーマの購入フォームで追加手数料の選択肢を ShoppingCart_Settings モジュールで表示しているテンプレートを、 Addition_Select モジュールに置き換えてください。以下はサンプルコードになります。

<!-- BEGIN_MODULE Addition_Select -->
<!-- BEGIN addition:veil -->
<h3>追加手数料</h3>
<table>
  <tbody>
    <tr>
      <th></th>
      <td>
        <ul>
          <!-- BEGIN addition:loop -->
          <li class="form-table-list-item">
            <div class="acms-form-checkbox">
              <input type="checkbox" name="addition[]" value="{id}" \{addition:checked#{id}\} id="input-checkbox-addition-{id}" />
              <label for="input-checkbox-addition-{id}">
                <i class="acms-ico-checkbox"></i>{name}(¥{fee}[number_format])</label>
            </div>
          </li>
          <!-- END addition:loop -->
        </ul>
        <input type="hidden" name="field[]" value="addition" />
      </td>
    </tr>
  </tbody>
</table>
<!-- END addition:veil -->
<!-- END_MODULE Addition_Select -->

Addition_Select モジュールに置き換えることで、ステータスが「公開」の追加手数料のみをエントリー編集画面で表示することができるようになります。

最後に

該当する問題がありましたら、お早めにバージョンアップのご検討をお願いいたします。また、迅速にご報告いただいたユーザーの皆さま、誠にありがとうございました。

今後もご報告いただいた内容に対して真摯に受け止め修正と改善を行ってまいります。 今後ともどうぞよろしくお願いいたします。

読み込みが必要なインクルードファイル

特定の機能をご利用になる際はご利用に必要なテンプレートファイルを読み込み、お使いください。

管理ボックス

@include("/admin/action.html")

エントリー作成ボタン、ダイレクト編集ボタン、管理ページ移動ボタン、Ping送信ボタン、プレビューモード(プロフェッショナル版以上のみ)、ログアウトボタンが設置されています。 そのほか、ログイン中のユーザー、デバッグモード、現在の承認通知(承認機能利用時のみ)、現在適用中のルール、現在適用中のテンプレートが確認できます。

バージョン管理用テンプレート

@include("/admin/entry/revision-info.html")

バージョン管理の利用、承認機能の利用の際は必ず読み込んでください。

編集画面タイトル表示用テンプレート

@include("/admin/entry/title.html")

エントリー編集の際に、編集時の状態を表すタイトルを表示します。

動的フォーム入力用テンプレート

@include("/admin/form2/edit.html")

動的フォームの項目を設定するためのテンプレートです。

動的フォームの内容表示用テンプレート

@include("/include/form/unit.html")

動的フォームで設定した項目を表示します。

エントリー入力用テンプレート

@include("/admin/entry/edit.html")

エントリーの内容を入力するためのユニットを表示するテンプレートです。 ステータス、タイトル、カテゴリー、タグ、日付、詳細設定、関連エントリー設定、位置情報設定、カスタムフィールド、ユニット、ユニット追加ボタン、続きを読む、保存ボタンが含まれます。

ユニット追加先頭テンプレート

@include("/admin/entry/add.html")

エントリーに追記するために必要なユニット追加ボタンを表示するテンプレートです。

エントリー編集&ユニット追加用テンプレート

@include("/admin/entry/action.html")

エントリー編集とユニット追加ボタンを表示するテンプレートです。 エントリー編集の操作では、エントリーの変更、複製、動的フォームの追加(動的フォーム有効時のみ)、削除、非公開、公開が利用できます。

カスタムフィールド設置用テンプレート

@include("/admin/entry/field.html")

カスタムフィールドを設置するテンプレートです。field.htmlにカスタムフィールドメーカーで作成したカスタムフィールドを記述します。

カスタムフィールド設置(エントリー後方)用テンプレート

@include("/admin/entry/field_foot.html")

ユニット編集画面の後にカスタムフィールドを設置するテンプレートです。field.html同様、カスタムフィールドメーカーで作成したカスタムフィールドを記述します。表示位置が変更されるだけで、機能はfield.htmlと同じです。

SEO確認用テンプレート

@include("/include/check-seo.html")

検索エンジンに関わる表示設定を確認可能です。デフォルトでは、タイトル、キーワード、description、rotbotsの設定、OGP画像が確認できます。 そのほかにも、実際のGoogle、Yahoo!による表示を確認できたり、Facebook Debuggerで確認できるリンクを用意しています。

SEO確認拡張用テンプレート

@include("/include/check-seo-extend.html")

SEO確認用テンプレートを拡張するためのテンプレート。check-seo-extend.htmlに記述した内容は、OGP画像の</tr>の後に投入されるため、tr要素やtd要素をお忘れないようお気をつけください。

記述例:

<tr>
	<th>サンプルの設定 - <small>sample</small></th>
	<td>
		<!-- BEGIN_MODULE Blog_Field -->{sample_contents}<!-- END_MODULE Blog_Field -->
	</td>
</tr>

Ver. 3.0.26 フィックスバージョンリリースのお知らせ


2023年05月19日にリリースした Ver. 3.0.26 の修正内容についてご紹介いたします。

現在お困りの問題に該当する項目がありましたら、お早めにバージョンアップのご検討をお願いいたします。

Ver. 3.0.26 リリースノート

不具合修正

  • CMS-6370 php8.0 以上でPHP Warningエラーが出る問題を修正
  • CMS-6371 メールの重要度(X-Priority)を設定しないように修正
  • CMS-6372 フォームのTo, Cc, Bcc に「ラベル <メールアドレス>」のフォーマットでアドレス指定すると、メールが送信できない問題を修正
  • CMS-6373 テキストユニットで、入力エリアの高さ調整が保存後効かない場合がある問題を修正
  • CMS-6374 動的フォームで入力チェックのフィールドを削除して1つもない状態にすると、PHP8.0以降でエラーが出る問題を修正
  • CMS-6375 メディアアップロードで、MIMEタイプの取得方法を改善
  • CMS-6376 スケジュールモジュールで「七曜表時の曜日始まり」を月曜日にしていると、最後のタグが表示されない問題を修正
  • CMS-6377 コンフィグ > ユニット設定でテキストタグセレクトのデフォルト値を、ACMS.Config.LiteEditorSourceModeTags で設定したタグに設定している場合、追加したユニットのテキストタグセレクトを ACMS.Config.LiteEditorSourceModeTags で設定したタグ以外のタグに変更した場合に、入力した値が消えてしまう問題の修正(wysiwyg の場合は例外的に発生しません。)
  • CMS-6378 「投稿者以上の権限であっても管理画面、編集画面以外は、読者(閲覧者)と同じ条件で表示する」設定がONだと、カテゴリーの選択肢が動作しない問題を修正

主なリリースノート内容

CMS-6371 メールの重要度(X-Priority)を設定しないように修正

フォームなどのメール送信で、重要度(X-Priority)が設定されている影響で、Outlookなど「X-Priority」が有効なメーラーで、優先度が自動的に「高」になってしまう問題を「X-Priority」ヘッダーを削除することにより修正しました。

CMS-6372 フォームのTo, Cc, Bcc に「ラベル <メールアドレス>」のフォーマットでアドレス指定すると、メールが送信できない問題を修正

問題のバージョン

  • Ver. 3.0.24
  • Ver. 3.0.25

フォームのTo, CC, Bcc に以下のフォーマットのメールアドレスを指定した場合、メールが送信できない不具合を修正しました。

"ラベル" <info@example.com>

CMS-6376 スケジュールモジュールで「七曜表時の曜日始まり」を月曜日にしていると、最後のタグが表示されない問題を修正

スケジュールモジュールで「七曜表時の曜日始まり」を「月曜日」に設定してしまうと、出力されるテーブルの最後の1日のタグが出力されない問題を修正しました。


CMS-6378 「投稿者以上の権限であっても管理画面、編集画面以外は、読者(閲覧者)と同じ条件で表示する」設定がONだと、カテゴリーの選択肢が動作しない問題を修正

コンフィグ > ログイン設定 にある「投稿者以上の権限であっても管理画面、編集画面以外は、読者(閲覧者)と同じ条件で表示する」にチェックが付いていると、カテゴリーの選択肢が出てこない問題を修正しました。


最後に

該当する問題がありましたら、お早めにバージョンアップのご検討をお願いいたします。また、迅速にご報告いただいたユーザーの皆さま、誠にありがとうございました。

今後もご報告いただいた内容に対して真摯に受け止め修正と改善を行ってまいります。 今後ともどうぞよろしくお願いいたします。