EC-CUBE2.11.4 管理画面からの新規ページ作成方法(500エラー回避方法)
さて、最近EC-CUBE2.11.4を触っているわけですが、ポチポチしながら、携帯サイトとスマホサイトは、ほぼ終了(とりあえずの満足感のある感じ)しました。
でもって、PCサイトに着手しようかなと思っています。
ザクっと書くと、TOPページは1カラムでjqueryでグローバルメニュー作って、そのメニューから各ページに移動しようかなと・・・
で、その移動先のページを新たに作ろうと思い、何も考えずに、EC-CUBE2.11.4の管理画面から
デザイン管理>PC>ページ詳細設定
でページの新規作成をしたわけです。
すると・・・
500エラーです。 _| ̄|○
意味がわかりません・・・
仕方ないので、FTPで見て見ると、ファイル自体は作られていました。
まんざら新規ページ作成自体は問題ないらしい・・・
但し、表示(ブラウザで見れない)されない!!!
まぁ、これが仕様なのかもしれませんけど・・・
でもそれでは困るので、以下にて対処しました。
簡単な一連の流れとして・・・
①:【data/class/helper/SC_Helper_FileManager.php】の342行目付近を見て頂いて
/**
* ファイル書込を行う.
*
* @param string $filename ファイルパス
* @param string $value 書き込み内容
* @return boolean ファイルの書き込みに成功した場合 true
*/
function sfWriteFile($filename, $value) {
if (!is_dir(dirname($filename))) {
SC_Utils_Ex::recursiveMkdir(dirname($filename), 0777);
}
$fp = fopen($filename,’w’);
if ($fp === false) {
return false;
}
if (fwrite($fp, $value) === false) {
return false;
}
chmod($filename, 0644); //←この行を追加
return fclose($fp);;
}
こんな感じに書き直します。
【メモ】
そもそも、この似たような現象はEC-CUBE2.4系の時も下記のファイル
data/class/pages/admin/design/LC_Page_Admin_Design_MainEdit.php
にあったみたいですけど、今回は対象となるファイルが違います。
②:EC-CUBE2.11.4の管理画面から普通にページを作る。
これで問題なく表示されると思います。
①⇒②の順番で行って下さい。
②⇒①ではダメなの?
↓
やればわかります。
①のパーミッション【0644】当たりはお好みで【777】とかでも・・・・
ええ、自己責任でよろしくお願いします。
直ちに影響はありません。
ヽ(*´∀`)ノ
これからPCサイト側を触って、動作確認とかするわけですが、色々と楽しいことがあるかも知れませんね・・・
(;・`д・´)
ではでは、こんなことが役に立ちますように・・・・