エス技研

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


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

      2016/04/04

ECCUBE2.13.3では商品規格の在庫数の変更ができない

 

商品規格管理のテンプレートを修正

 
■修正対象ファイル
{eccube}/data/smarty/templates/admin/products/product_class.tpl
 
 
■対象行
30行目、42行目
 
 
■修正内容
 

 
30行目も 42行目も記述内容は同じですので、同じように修正を行います。
 
 

商品規格の在庫数の変更ができないバグはECCUBE2.13.3だけ

 
商品規格の在庫数が変更できない ECCUBEのバグは、バージョン 2.13.3だけに存在するようです。
 
バグの内容ですが、「商品管理」の一覧から「商品規格」を編集する「商品管理>商品登録(商品規格)」の画面で発生します。
 
20160404_web_01
 
上記の画面のように、「在庫数」を編集するために「無制限」のチェックを外しても「在庫数」の入力エリアがアクティブにならないという不具合です。
「在庫数」の入力エリアがアクティブにならないため、「在庫数」の入力ができません。常に「無制限」でしか運用できません。
 
ただし、「商品規格」の機能を使わない商品を「商品登録」画面から登録する場合の「在庫数」は問題なく変更することができます。
 
 
これは、先に挙げたテンプレートファイル「product_class.tpl」に直接記述してある JavaScriptの記述が間違っているために発生しています。
 
 
「2.13.1」→「2.13.3」では、「product_class.tpl」自体に差異はありません。(※2.13.2 は、ソースが手元にないため確認していません。)
「2.13.3」→「2.13.4」では、先に解説をした内容が更新されています。
 
そのため、「2.13.1」→「2.13.3」では、何かしら修正された影響でこの「商品規格」の「在庫数」の変更の部分が影響を受け、「2.13.4」ではそのバグフィックスのために変更が行われた、というところなのでしょう。
 
※まったく確認はしていませんが、ECCUBE 2.13.3前後で使用している jQueryのバージョンが 2系に変更になったことが影響しているとのことのようです。
 
 
ECCUBEの「2.13.3」というバージョンだけという固有のバグですが、WordPressの様に簡単にバージョンアップができるわけではありませんので、いざ使い始めてから気づいても修正の仕様がない場合も多いですよね。
 
しかも、全然情報がありませんし...
 
そんなわけで、この記事が ECCUBEの 2.13.3を使っている方のお役にたてれば幸いです。

 - PHP・Smarty・ECCUBE

GoogleAdwords

GoogleAdwords

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

Message

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

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

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

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

  関連記事

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

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

リダイレクトループが原因で「ERR_TOO_MANY_REDIRECTS」「このページを表示できません」が出たときの対策12事例+α

リダイレクトループ、自動転送設定ループの原因の解説とその対応方法を含め事例 12例を挙げて説明。

Phpmailerでスパム回避!Gmail等のSMTPを経由するPHPのメールフォーム解説

お問い合わせ等のメールフォームから送ったメールがスパム扱いされる!その対策としてライブラリ「Phpmailer」を使う方法を解説。関数化していますのでコピペでOK。

PHPで正規表現の検証には preg_match_allが便利

PHPで正規表現の検証には preg_match_allが便利です。その便利さの使い方の解説です。

CentOS6、7のPHPを5.3から5.6、7.0、7.1にバージョンアップする手順の解説
CentOS6、7のPHPを5.3から5.6、7.0、7.1にバージョンアップする手順の解説

CentOS6系、7系のPHPバージョンを5.3から5.6、7.0、7.1にアップする作業手順と解説。yum updateコマンドを使い作業時間は約10分。コマンドの解説や引数の意味なども解説しているので役に立つはず。

パーミッション(属性)一括変更ツール・WordPress最適化済

WordPressのパーミッション(属性)を一括変更するツールを作成!ファイル、フォルダのパーミッションが一覧表示でき、ファイルを選んでパーミッションの変更が行えます。

カオナビAPI Ver.2.0のtokenを取得する PHP+cURLのサンプルプログラム
カオナビAPI Ver.2.0のtokenを取得する PHP+cURLのサンプルプログラム

PHPのcURLを使用してカオナビAPIのアクセスに必要なtoken、シートの情報を取得するサンプルプログラムを作成。cURLの処理は関数化しているため他のAPIでも流用できる。

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

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

Smartyのテンプレート内の処理で計算、加工をする方法

Smartyのテンプレート上で変数を計算する、加工する方法を解説します。

PHPで1ヵ月前、先月、今月1日、来月末の日付などの算出はDateTimeImmutableを使う
PHPで1ヵ月前、先月、今月1日、来月末の日付などの算出はDateTimeImmutableを使う

PHPには日時をオブジェクトとして生成する関数「DateTimeImmutable」「DateTime」が用意されている。これを利用して1ヶ月後、月初日、月末日、5日後などを指定して日付を取得できる。