ECCUBE

ECCUBEで商品登録サブ画像を増やす方法

  • このエントリーをはてなブックマークに追加

ECCUBEはオープンソースのCMSで、使い勝手もそれなりに良いのですが、デフォルトの状態では少々使いずらい点があります。

その一つに「サブ画像の枚数」があるのですが、初期状態では5枚までの登録にしか対応していません。
「5枚で十分」という人もいるかもしれまんせんが、ネットショップでは画像が生命線という考えている人の方が多いはず。

というわけで、ECCUBEのサブ画像を増やす方法です!

i.管理画面のパラメータ設定を変更

ECCUBEの管理画面にログインし、
「EC-CUBE管理画面>システム設定>パラメーター設定」でPRODUCTSUB_MAXを変更します。

今までその数値を触っていなければ「5」になっているはずです。
その値を自分が登録できるようにしたい数値に変更します。

ii.データベースの修正

次にデータベースの修正です。
phpMyadminを使用するので、該当のデータベースアカウントにログイン。

今回はサブ画像の枚数を増やしたいので、サブ画像を記録しているdtb_productsというテーブルに新しくカラムを追加します。

カラムの追加方法

phpMyadminでカラムを追加している例1

まずはこの状態まで。
dtb_productsにアクセスし、SQLをクリックすれば上記のようになります。

ここに以下のコードを入力し実行します。

ALTER TABLE dtb_products ADD COLUMN sub_title7 text;
ALTER TABLE dtb_products ADD COLUMN sub_comment7 text;
ALTER TABLE dtb_products ADD COLUMN sub_image7 text;
ALTER TABLE dtb_products ADD COLUMN sub_large_image7 text;

phpMyadminでカラムを追加している例2

これで7枚目のサブ画像を登録するためのカラムが追加されたことになります。
8枚目以降は数字を変えたもの(7→8)を実行すれば追加されます。

-なぜ「6」からではないのか-

実は6枚目を登録するために必要なものはすでに登録されています。
なので、サブ画像を6枚まで増やしたいときには、管理画面のパラメータ設定でPRODUCTSUB_MAXを6にすればOKです。

-1枚ずつ追加しないといけないのか-

複数枚を一気に追加することも可能です。
この記事の最後に追加コードを書いたファイルがあるので、必要であればダウンロードしてください!

iii.phpファイルの修正

FTPソフトを使い、/data/classファルダにある「SC_Product.php」をダウンロードします。
675行目ぐらいにある「,dtb_products.sub_large_image6」という記述と「,dtb_products.del_flg」の間に次のコードを追加します。

,dtb_products.sub_title7
,dtb_products.sub_comment7
,dtb_products.sub_image7
,dtb_products.sub_large_image7

ここまでで管理画面から7枚目のサブ画像を登録することが出来るようになっているはずです。
一度確認してみてください。

8枚目以降の登録は、上記のコードに続けて数字を変えたものを追加すればOKです。

-SC_Product.phpで該当のコードが見つからない-

これはECCUBEのバージョンによるもので、2.13.2verまでは「,dtb_products.sub_large_image6」のコードがありますが、2.13.3verからは「,dtb_products.*」のコードになっています。
2.13.3verでは「,dtb_products.*」がすべてのコードを表示してくれるため、今回のphpファイルの修正は必要ありません。
一度、ECCUBEのバージョンを確かめてみてください。(システム設定>システム情報)

サブ画像を増やすために必要なコードファイル

実はコードを作るのが大変だったりします・・・。
数字を変えるだけの作業なんてしたくありませんよね^^;

せっかくなので、楽に画像が増やせるようにコードをダウンロードできるようにします!!
必要であればダウンロードして使っちゃってください。50枚まで増やせます!

ダウンロード

ここまでの作業をするとサブ画像の登録枚数が増えるのですが、いざ登録していくと思わぬ壁にぶつかることがあります。

画像登録エラー

使っているサーバーによりますが、上記のようにエラーが返されることがあります。
この原因は、サーバー側で設定されている「登録枚数の上限」によるものなので、その設定を変えてあげることで解決します。

php.iniを編集する

サーバー上にあるphp.iniをダウンロードしてください。(サーバーの管理画面から修正できる場合もあります)

修正する項目は、

  1. upload_max_filesize
  2. max_file_uploads
の2つです。簡単に3つの項目を説明します。

upload_max_filesize
アップロードファイルの許容サイズを設定
max_file_uploads
アップロードファイルの許容枚数を設定

明確な設定値はありませんが、初期で設定してある値(サーバーによって異なる)よりも大きな値に変更することでエラーを回避できるので、試してみてください。

-実はまだ終わりじゃない!?-

さて、これで終わったと言えば終わったのですが、実は完璧ではありません(笑)
というのも、CSV周りの変更ができていないんですよね・・・。

「サブ画像を増やしたは良いけど、CSVアップロードできない!!!!!」
なんてことになりたくないですよね。商品登録が手作業は死にたくなるほど面倒な作業です。

それではCSV周りの修正もやっちゃいましょーう!
ECCUBEのサブ画像を増やしたら、CSVファイル周りの修正も忘れずに!

  • このエントリーをはてなブックマークに追加

  関連記事

コメントを残す

*