EC-CUBE ver.2.1.2でサイトを構築した時のトラブル解決メモ帳
本日EC-CUBEの正式版のバージョンが2.3.0になりました。 3日ほど前に新しくサーバを借りてEC-CUBEをインストールしてサイトを構築したので、バージョンが2.1.2です。 EC-CUBEを正式採用しているサーバなのでコントロールパネルからインストールできるので、サーバ自体の対応しないとEC-CUBEのアップデートできません。 ファイルを自分でアップしてアップデートする方法もあるのですが・・・。 サーバ自体がちょっと特殊で・・・・。 挑戦したのですが、トラブルが起きコントロールパネルもサイトも表示されないという最悪のシナリオを本日体験しました。 そこで、本日また1からサイトを構築した時にver.2.1.2のバグ解決を行ったので、忘れないように解決メモ帳として書き留めときます。 ※EC-CUBEのコミュニティでも同じ内容が書いてあったのですが、私には分かりにくかったので・・・。 ブロックの新規登録ができない場合は、 /html/user_data/packages/defaultのblokフォルダの属性を書き込み可能に変更するとOK カレンダーの定休日は標準では毎週土日が定休日になっていますが、それを日曜日だけ定休日に変更したい場合は、 /data/class/pages/frontparts/bloc/LC_Page_FrontParts_Bloc_Calendar.phpの function IfGetCalendar内の if ($this->lfCheckHoliday($month, $Day->day) || $Day->first || $Day->last) { ↓↓↓ if ($this->lfCheckHoliday($month, $Day->day) || $Day->first) { に変更する。 カレンダーの表示する色などの変更はCSSで変えること。 デザイン管理でカレンダーがブロックとして表示されない場合は、 /data/Smarty/templates/default/bloc/内のcalendar.tplが無いので最新版(2.3以降)のファイルからコピーする。 システム設定のシステム情報やパロメータなどが機能しない場合は、最新版(2.3以降)のデータを移す。(ver.2.1.2にはファイルが入っていないので表示されない。) html/admin/system/の中身を移す data/class_extends/page_extends/admin/system/の中身を移す data/class/pages/admin/system/の中を移す メールの新規設定は,システム設定のマスタデータ管理でmtb_mail_templateで設定できる。(上のファイルを移していないと表示されない。) メールのテンプレート内容(動的内容)の確認や変更は data/Smarty/templates/Book/mail_templates/order_mail.tpl(受注確認メール)などで確認できる。 他の新規メールにテンプレートの動的内容を使用したり、応用する場合は、システム設定のマスタデータ管理のmtb_mail_tpl_pathでパスを設定して、直接使用したいデータ(例:order_mail.tpl)をコピーしてファイル名を設定したファイル名に変更したら、動的データ挿入部分が完成。 後はメール設定でヘッダーとフッターを記入すれば完成。 帳票の発行時に全く表示されない場合や発行しても白紙の状態の場合は、 html/dmin/order/pdf.php /data/class_extends/page_extends/admin/order/LC_Page_Admin_Order_Pdf_Ex.php /data/class/pages/admin/order/LC_Page_Admin_Order_Pdf.php の3つを最新版(2.3以降)に変更する。/data/pdf/japanese.php(2.3以降)の 初期設定: require('../../../data/pdf/fpdf.php'); require('../../../data/pdf/fpdi.php'); 変更後: require('fpdf.php'); require('fpdi.php'); に書き換えたら、/datra/pdf/の中身をすべて最新版(2.3以降)に移し替える。 data/calss/SC_Fpdf.phpを最新版(2.3以降)に移し替える。 data/Smarty/templates/default/admin/orderの中身を最新(2.3以降)に移し替える。 data/Smarty/templates/default/admin/order/pdf_input.tplを最新(2.3以降)に移し替える。 html/user_data/packages/default/img/pdf/logo.pngを会社の社名に差し替える。 (サーバにアップされていないとエラー表示される。又、PNGだがアルファを設定してるとエラー表示される。) html/admin/oder/pdf.phpの require_once("../../require.php");を require_once("../require.php");に書き換える必要はない。 (コミュニティサイトでは書き換えると表示されるとなっていたが・・・) 以上ですべてだが、Adobe Readerのバージョンやブラウザのバージョンによっても表示されないようだ。 私の環境は、Internet Explorer 7(google版)+FoxitReader2.1を使用しています。 Internt Explorer6 + Adobe Reader 5では表示されませんでした。 バージョンを上げれば表示される可能性はありますが、検証していないので・・・。 確認が取れた場合、コメントやトラックバックに書いてください。 これだけで私が確認したEC-CUBEのバグはすべてだと思います・・・(∩∀`*) サーバの設定や使っている環境にもよると思いますが、参考になればいいと思います。 資料が少ないのでみんなで共有できればと思います。 ...more»