エス技研

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サイト全体での「ポイント設定」を変更しても、商品個別の情報は変更されません。
 
そのため、管理画面上の機能を使って商品個別のポイントを修正したい場合は、商品情報を登録する画面を表示し、商品ごとにポイントを編集し直すしかありません。
 
 
ただ、商品点数が多い場合は、それではかなり手間がかかりますので、データベースの値を直接変更する方法を解説します。
 
 


 

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

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

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

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

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

 - PHP・Smarty・ECCUBE

GoogleAdwords

GoogleAdwords

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

Message

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

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

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

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

  関連記事

ECCUBE2.13.3で商品規格の在庫数が無制限から変更できないバグがある

2.13.3固有のバグである商品規格の在庫数の入力エリアがアクティブにならない不具合を解消する解説です。product_class.tplの2行を修正するだけの簡単対応です。

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

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

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

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

PHP range関数を使って階乗と重複組み合わせを計算

PHPの range関数を使って階乗と重複組み合わせを計算し、それを元に乱数発生器を作成しました。

include、requireのパス指定をdirname(__FILE__)、__DIR__と書く理由

include、requireのパスの指定を dirname(__FILE__)、__DIR__で記述する理由に付いて解説。相対パス、絶対パスを直書き、パスを書かない場合は何が問題かを説明。

乱数発生器(パスワード生成サービス)がバージョンアップで高速化!
乱数発生器(パスワード生成サービス)がバージョンアップで高速化!

乱数やパスワードを生成する乱数発生器を高速化!重複しない10桁、20桁の文字列を10万件、20万件と生成することも可能!イベントのキャンペーンのシリアルコードなどにも利用可能!

SEO対策用タイトル、ディスクリプションの文字数カウントツール

SEO対策に使える文字数カウントツールで文字数の条件の説明も行っています。

連想配列のキーも値もまとめてhtmlspecialchars()でサニタイズする関数の作成解説
連想配列のキーも値もまとめてhtmlspecialchars()でサニタイズする関数の作成解説

PHPの配列・連想配列のキーと値をまとめてhtmlspecialchars()関数でサニタイズ(無害化、無毒化)を行う関数を作成。連想配列のキーはarray_map()関数でのサニタイズは無理。

AdminerはphpMyAdmin代替のデータベース管理ツール

AdminerはphpMyAdminとほぼ同機能のデータベース管理ツール。PHP 1ファイルのため設置が非常に簡単で軽快に動作し、phpMyAdminの置き換えで使うのも問題なし。

ECCUBEでアップロードできない。upload_max_filesizeを設定する場所

テンプレートをアップロードする際に発生するエラー「テンプレートファイルがアップロードされていません」の対処方法。これはファイル容量の制限に引っかかっています。