ECCUBE2.13.3で商品規格の在庫数が無制限から変更できないバグがある
2016/04/04
ECCUBE2.13.3では商品規格の在庫数の変更ができない
商品規格管理のテンプレートを修正
■修正対象ファイル
{eccube}/data/smarty/templates/admin/products/product_class.tpl
■対象行
30行目、42行目
■修正内容
|
1 2 3 |
誤り:var checked = $(this).attr('checked'); 正解:var checked = $("#chk_stock_unlimited_"+index+":checked").val(); |
30行目も 42行目も記述内容は同じですので、同じように修正を行います。
商品規格の在庫数の変更ができないバグはECCUBE2.13.3だけ
商品規格の在庫数が変更できない ECCUBEのバグは、バージョン 2.13.3だけに存在するようです。
バグの内容ですが、「商品管理」の一覧から「商品規格」を編集する「商品管理>商品登録(商品規格)」の画面で発生します。
上記の画面のように、「在庫数」を編集するために「無制限」のチェックを外しても「在庫数」の入力エリアがアクティブにならないという不具合です。
「在庫数」の入力エリアがアクティブにならないため、「在庫数」の入力ができません。常に「無制限」でしか運用できません。
ただし、「商品規格」の機能を使わない商品を「商品登録」画面から登録する場合の「在庫数」は問題なく変更することができます。
これは、先に挙げたテンプレートファイル「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を使っている方のお役にたてれば幸いです。
GoogleAdwords
GoogleAdwords
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!
関連記事
-
-
include、requireのパス指定をdirname(__FILE__)、__DIR__と書く理由
include、requireのパスの指定を dirname(__FILE__)、__DIR__で記述する理由に付いて解説。相対パス、絶対パスを直書き、パスを書かない場合は何が問題かを説明。
-
-
指定した数で文字列を丸める(n文字目で…にする)関数substr、mb_substr、mb_strimwidthの違い
文字列を指定された数で抜き出すPHPの関数、substr、mb_substr、mb_strimwidthについての解説。似た関数だが引数の指定方法が違ったり、文字数がバイト数か文字数かも違ったり、注意が必要だ。
-
-
PHPで正規表現の検証には preg_match_allが便利
PHPで正規表現の検証には preg_match_allが便利です。その便利さの使い方の解説です。
-
-
ECCUBEでテンプレートファイルのファイルサイズは10MB以下のものを使用してくださいのエラーが出た場合
テンプレートをアップロードする際にファイルサイズが大きすぎてエラーが表示される際の対処方法解説。パラメータ設定で設定する制限について解説を行っています。
-
-
PHPで月末から1ヶ月後「+1 month」を算出すると想定する日付にならない場合がある
PHPでは月末の1ヶ月後が想定した日付にならない場合がある。原因はバグではなくPHPの1ヶ月後の定義によるもの。なので必要とする日付を定義しそれに合わせてDateTime、modifyを使用して算出方法を解説している。
-
-
ECCUBE mtb_constants initパラメータ設定の項目を追加する方法
ECCUBEのパラメータ設定で設定できる項目を追加する方法を説明します。
-
-
PHPで APIにアクセスする際などに使用する cURLのサンプルプログラム
PHPのcURLを使用して各種APIにアクセスするサンプルプログラムを作成し、その処理を解説。カオナビAPIのみならず、他の多くのAPIにアクセスする際にも使用できる。
-
-
QRコード作成ライブラリ「cakePHP-QR-Code-Helper」をPHPで使うカスタマイズ
CakePHP2用のQRコード作成ライブラリ「cakePHP-QR-Code-Helper」をプレーンのPHPでも使うためのカスタマイズ方法を解説。1ファイルを設置するだけでQRコードが作れるため使い勝手がいい。
-
-
ファイル変更だけ!ECCUBEの本番から開発環境をコピーする手順を解説
ECCUBEを本番から開発環境をコピーする際の手順を解説。PGMメンテに必要な開発環境を構築する手順を解説。ECCUBEの仕組みは簡単なので作業は5分ほど。
-
-
Phpmailerでスパム回避!Gmail等のSMTPを経由するPHPのメールフォーム解説
お問い合わせ等のメールフォームから送ったメールがスパム扱いされる!その対策としてライブラリ「Phpmailer」を使う方法を解説。関数化していますのでコピペでOK。
