エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


ECCUBEのポイント設定、ポイント付与率を一括で変更する方法解説

      2017/03/11

ECCUBEのポイント設定、ポイント付与率

 

ECCUBEのポイント付与率を一括で変更する方法について

 
ECCUBEには、商品を購入するとポイントを付与する仕組みがあらかじめ実装されています。
 
それに関連して、商品個別に設定されているポイント付与率をまとめて一括で変更したい場合の対応方法につての記事です。
 
また、この記事は ECCUBEのバージョン 2.13.1をもとにして記述しています。
 
 

ECCUBEのポイント付与率の流れ

 
ECCUBEのポイントは、まず、「基本情報管理」-「ポイント設定」で ECサイト全体でのポイント設定を行います。
 
20141216_php_01
 
そして、商品の情報を登録する際には、上記の画面で設定した「ポイント付与率(初期値)」をデフォルト設定として「ポイント付与率」に編集した状態で画面が表示されます。
 
20141216_php_02
 
ここで設定した情報は、商品個別の情報として保存されます。
そのため、商品を登録した後に最初の ECサイト全体での「ポイント設定」を変更しても、商品個別の情報は変更されません。
 
そのため、管理画面上の機能を使って商品個別のポイントを修正したい場合は、商品情報を登録する画面を表示し、商品ごとにポイントを編集し直すしかありません。
 
 
ただ、商品点数が多い場合は、それではかなり手間がかかりますので、データベースの値を直接変更する方法を解説します。
 
 
[amazonjs asin=”4478028591″ locale=”JP” title=”<ネット広告&通販の第一人者が明かす>100%確実に売上がアップする最強の仕組み”]
 

ECCUBEの商品個別のポイント付与率を一括変更

 
変更の方法は、SQLを実行しポイント率を一気に変更する、という方法です。
 
 
ポイント付与率は、テーブル「dtb_product_class」の項目「point_rate」に編集されています。
 
そのため、変更するための SQL文は以下になります。
 

UPDATE dtb_product_class SET point_rate = ポイント付与率;

 
例えば、3ポイントに変更する場合は以下のような感じです。

UPDATE dtb_product_class SET point_rate = 3;

 
また、現在 2ポイントの商品だけ 3ポイントに変えたい場合は以下のような感じです。

UPDATE dtb_product_class SET point_rate = 3 WHERE point_rate = 2;

 
このほか、特定のカテゴリの商品だけとか、値段がいくら以上の商品だけとか、SQLの条件の書き方でいろいろな条件にマッチする商品だけのポイント付与率を変更することもできますが、それに関しては SQLの書き方を調べて見てください。
 
 
ちなみに、「point_rate(ポイント付与率)」の項目は、テーブル「dtb_product」にあったようですので、そのように書かれているサイトもありましたが、現在のテーブルは「dtb_product_class」ですのでお間違えの無いように。

 - PHP・Smarty・ECCUBE

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 ※ が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

ECCUBE mtb_constants initパラメータ設定の項目を追加する方法

ECCUBEのパラメータ設定で設定できる項目を追加する方法を説明します。

ECCUBEを開発環境から本番ドメインに変更でエラーが・パス変更について

レンタルサーバでサーバ会社から割り当てられたURLで開発し、本番公開時にドメインを当てたらエラーが!そんな場合の対処方法の解説。対処方法は簡単ですが管理画面からは対応不可。

ECCUBEの新規追加ページがInternal Server Error・Not Foundに

ECCUBEで新規追加したページがInternal Server Errorに!原因はファイルのパーミッションの場合が多くその対処方法とプログラムの修正ポイントを解説。Not Foundも解説。

フォルダを指定してファイルのパーミッションを変更するプログラム

フォームからフォルダ、パーミッションを指定しパーミッションを変更するサンプルプログラムの解説です。

PHPで月末から1ヶ月後「+1 month」を算出すると想定する日付にならない場合がある
PHPで月末から1ヶ月後「+1 month」を算出すると想定する日付にならない場合がある

PHPでは月末の1ヶ月後が想定した日付にならない場合がある。原因はバグではなくPHPの1ヶ月後の定義によるもの。なので必要とする日付を定義しそれに合わせてDateTime、modifyを使用して算出方法を解説している。

WindowsのXAMPPのPHPではstrptimeは使用不可。代替はdate_parse_from_formatを使う
WindowsのXAMPPのPHPではstrptimeは使用不可。代替はdate_parse_from_formatを使う

strptimeはWindowsのPHPには未実装。LinuxとMacで挙動が異なる。PHP8.1で非推奨になる。なので日付のチェックはdate_parse_from_formatを使おう。使い方を詳細解説。

数値がMySQLのint(11)に保存できない!PHPの変数が本当にint型か確認!
数値がMySQLのint(11)に保存できない!PHPの変数が本当にint型か確認!

PHPでintegerとdoubleが混在するような計算をする場合は要注意!計算結果が整数値であっても途中で使用する変数にdoubleの値が入っているときは計算結果がintegerではない場合があります。

サーバ移転、PHPバージョンアップでPHPのソースコードが表示される・ショートタグのPHPが動かない

PHPでショートタグを使うのは危険。サーバ移転やバージョンアップで動かなくなる!ソースが丸見え、設定情報流出のリスクが!php.iniのshort_open_tagの設定を再確認。

Smartyの修飾子regex_replaceで正規表現の後方参照・PHPではpreg_replace

ECCUBEで使われているSmartyで文字列を正規表現で置換し後方参照で値を利用する装飾子regex_replaceの解説です。細かな条件がありますので注意が必要です。

路線・駅検索をPHPで実装する方法解説。GoogleMapsの緯度経度から計算し検索
路線・駅検索をPHPで実装する方法解説。GoogleMapsの緯度経度から計算し検索

路線・駅検索の仕組みの構築は大変。登録する側も最寄り駅が多い場合は大変。なので簡易に実装するため緯度経度に基づき直線距離を計算する処理を考案して実装して、その処理を解説。