ECCUBEのポイント設定、ポイント付与率を一括で変更する方法解説
2017/03/11
ECCUBEのポイント設定、ポイント付与率
ECCUBEのポイント付与率を一括で変更する方法について
ECCUBEには、商品を購入するとポイントを付与する仕組みがあらかじめ実装されています。
それに関連して、商品個別に設定されているポイント付与率をまとめて一括で変更したい場合の対応方法につての記事です。
また、この記事は ECCUBEのバージョン 2.13.1をもとにして記述しています。
ECCUBEのポイント付与率の流れ
ECCUBEのポイントは、まず、「基本情報管理」-「ポイント設定」で ECサイト全体でのポイント設定を行います。
そして、商品の情報を登録する際には、上記の画面で設定した「ポイント付与率(初期値)」をデフォルト設定として「ポイント付与率」に編集した状態で画面が表示されます。
ここで設定した情報は、商品個別の情報として保存されます。
そのため、商品を登録した後に最初の ECサイト全体での「ポイント設定」を変更しても、商品個別の情報は変更されません。
そのため、管理画面上の機能を使って商品個別のポイントを修正したい場合は、商品情報を登録する画面を表示し、商品ごとにポイントを編集し直すしかありません。
ただ、商品点数が多い場合は、それではかなり手間がかかりますので、データベースの値を直接変更する方法を解説します。
ECCUBEの商品個別のポイント付与率を一括変更
変更の方法は、SQLを実行しポイント率を一気に変更する、という方法です。
ポイント付与率は、テーブル「dtb_product_class」の項目「point_rate」に編集されています。
そのため、変更するための SQL文は以下になります。
|
1 |
UPDATE dtb_product_class SET point_rate = ポイント付与率; |
例えば、3ポイントに変更する場合は以下のような感じです。
|
1 |
UPDATE dtb_product_class SET point_rate = 3; |
また、現在 2ポイントの商品だけ 3ポイントに変えたい場合は以下のような感じです。
|
1 |
UPDATE dtb_product_class SET point_rate = 3 WHERE point_rate = 2; |
このほか、特定のカテゴリの商品だけとか、値段がいくら以上の商品だけとか、SQLの条件の書き方でいろいろな条件にマッチする商品だけのポイント付与率を変更することもできますが、それに関しては SQLの書き方を調べて見てください。
ちなみに、「point_rate(ポイント付与率)」の項目は、テーブル「dtb_product」にあったようですので、そのように書かれているサイトもありましたが、現在のテーブルは「dtb_product_class」ですのでお間違えの無いように。
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
ファイル変更だけ!ECCUBEの本番から開発環境をコピーする手順を解説
ECCUBEを本番から開発環境をコピーする際の手順を解説。PGMメンテに必要な開発環境を構築する手順を解説。ECCUBEの仕組みは簡単なので作業は5分ほど。
-
-
ECCUBEでアップロードできない。upload_max_filesizeを設定する場所
テンプレートをアップロードする際に発生するエラー「テンプレートファイルがアップロードされていません」の対処方法。これはファイル容量の制限に引っかかっています。
-
-
ECCUBEの問い合わせフォームに任意の値を引数として渡す方法
ECCUBEのお問い合わせフォームに値を固有の情報を送りそれに基づいて処理をする方法を解説。ボタンの設置、受け取り側のテンプレート、プログラムのサンプルソースを提供。
-
-
ECCUBE2.13.3で商品規格の在庫数が無制限から変更できないバグがある
2.13.3固有のバグである商品規格の在庫数の入力エリアがアクティブにならない不具合を解消する解説です。product_class.tplの2行を修正するだけの簡単対応です。
-
-
ob_start、ob_get_contents関数でPHPの標準出力をバッファリング・変数に代入
標準出力をバッファリングし変数に代入することができるob_start()関数の解説。include()の処理をバッファリングすることで自由な場所に処理を記述することが可能。
-
-
ECCUBE mtb_constants initパラメータ設定の項目を追加する方法
ECCUBEのパラメータ設定で設定できる項目を追加する方法を説明します。
-
-
AdminerはphpMyAdmin代替のデータベース管理ツール
AdminerはphpMyAdminとほぼ同機能のデータベース管理ツール。PHP 1ファイルのため設置が非常に簡単で軽快に動作し、phpMyAdminの置き換えで使うのも問題なし。
-
-
PHPで配列の値をダブルクオーテーションで囲んでimplodeでカンマ区切りにする方法
PHPで配列の値を、preg_replace関数でクォーテーションで囲み、implode関数で「,(カンマ)」で区切ってテキスト化する方法。この方法であれば配列が空でも分岐の処理は必要なし!
-
-
ECCUBEでカード決済NGの受注情報をマイページ購入履歴に表示しない方法解説
ECCUBEでカード決済に失敗しても購入履歴一覧に注文情報(受注情報)が表示される問題への対処方法を解説。受注情報レコードの作成の流れとステイタスについても解説。
-
-
PHPで1ヵ月前、先月、今月1日、来月末の日付などの算出はDateTimeImmutableを使う
PHPには日時をオブジェクトとして生成する関数「DateTimeImmutable」「DateTime」が用意されている。これを利用して1ヶ月後、月初日、月末日、5日後などを指定して日付を取得できる。

