EC-CUBE

マークアップエンジニアとかWEBディレクターとかをやってる僕が、自分が詰まって、解決したことをここに残しておきますよ。

EC-CUBEで注文メールが届かないと思ったらやること

管理ページで


システム設定>パラメータ設定

に入る。


ズラーっとよくわからないのが並んでいるので


MAIL_BACKEND


を探す。


最初はそこが"smtp"になっているので、それを"mail"
にしてみる。


それでうまくいっきました。

EC-CUBEでupgradeフォルダを消したら全部壊れた

EC-CUBEで、htmlディレクトリの中にupgradeというディレクトリがある。

インストール後に生成されるディレクトリなのだが、
モジュールをインストールする際に、あやまって削除してしまったら、

EC-CUBEの表画面がトップ以外全部壊れてしまった。

ぐぐったけど解決策らしきものは見当たらず、
やむなく出来る限りのバックアップをとって、再インストール。

2時間かかった・・・。


upgradeディレクトリには、index.phpというファイル1つのみが入っていて、
あらためて見てみると、ほんの50行程度のphpプログラムが入っている。

 
インストール後に生成される以上、条件によって違うファイルになるのだろうが、
同じ過ちをやっちまった人のために、index.phpの中味を晒しておく。

<?php
//$_SERVER['REQUEST_METHOD'] = 'POST';
//$_POST['mode'] = 'products_list';

if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
    header("HTTP/1.1 400 Bad Request");
    exit();
}

// {{{ requires
require_once '../require.php';
require_once '../' . ADMIN_DIR . 'require.php';

// }}}
// {{{ generate page

$mode = isset($_POST['mode']) ? $_POST['mode'] : '';
$objPage = lfPageFactory($mode);
$objPage->init();
register_shutdown_function(array($objPage, "destroy"));
$objPage->process($mode);


function lfPageFactory($mode) {
    $prefix = 'LC_Page_Upgrade_';
    $file   = CLASS_REALDIR . "pages/upgrade/${prefix}";
    $class  = $prefix;

    switch ($mode) {
    case 'products_list':
        $file  .= 'ProductsList.php';
        $class .= 'ProductsList';
        break;
    case 'patch_download':
    case 'download':
    case 'auto_update':
        $file  .= 'Download.php';
        $class .= 'Download';
        break;
    case 'site_check':
        $file  .= 'SiteCheck.php';
        $class .= 'SiteCheck';
        break;
    default:
        header("HTTP/1.1 400 Bad Request");
        GC_Util::gfPrintLog("modeの値が正しくありません。:".$mode);
        exit();
        break;
    }

    require_once $file;
    return new $class;
}
?>

 万が一にもこれのコピペでupgrade/index.phpにアップしてみて
直る人がいたら、ラッキーですよね。
記事検索

リモキュー

お仕事のご依頼・お問い合わせはこちら

コーディングのお仕事が得意です。

https://twitter.com/tacshock
タグクラウド
QRコード
QRコード
  • ライブドアブログ