‘EC CUBE – エラー’ カテゴリーのアーカイブ

EC CUBEでメールが届かない

2009 年 10 月 12 日 月曜日

カスタマイズしていると、突然、受注メールやお問い合わせメールが、送信者にも管理者にも届かなくなる事がある。

この場合、
/data/mtb_constants_init.php と /data/cash/mtb_constants.php の

define(‘MAIL_BACKEND’, “smtp”);

define(‘MAIL_BACKEND’, “mail”);
に変更。

参考
EC-CUBE 開発コミュニティサイト

http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=3133&forum=4

システム運用|システムインテグレータTAG

http://ameblo.jp/tag-m/entry-10266773372.html

このエントリーを含むはてなブックマーク

EC CUBEでカテゴリーの最大階層を増やす

2009 年 4 月 21 日 火曜日

EC CUBEはデフォルトでカテゴリーの最大階層が5に指定されている。これを増やすにはパラメーター設定のLEVEL_MAXの数値を変更すれば良い。
カテゴリーを細分化したい場合、特にSEO対策などを念頭におく場合には数値の変更。

このエントリーを含むはてなブックマーク

EC CUBEにパンくずナビを設置する

2009 年 4 月 21 日 火曜日

ソースそのものを以下のサイトを参考

www.gnnk.net
web book movie
[EC-CUBE]パンくずリスト

バージョンが古いのか、上記サイトの指示に従ってソースを埋めても動作しなかったので、以下覚書。
なお、以下の行数はEC CUBE version 2.3.4

/data/class_extends/helper_extends/SC_Helper_DB_Ex.php
37行目に以下を追加

function sfGetTopicPath($category_id){
// 商品が属するカテゴリIDを縦に取得
$objQuery = new SC_Query();
$arrCatID = $this->sfGetParents($objQuery, “dtb_category”, “parent_category_id”, “category_id”, $category_id);
$TopicPath = ” > “;

// カテゴリー名称を取得する
foreach($arrCatID as $key => $val){
$sql = “SELECT category_name FROM dtb_category WHERE category_id = ?”;
$arrVal = array($val);
$CatName = $objQuery->getOne($sql,$arrVal);
if( $val != $category_id){
$TopicPath .= ‘<a href=”./list.php?category_id=’ .$val . ‘”>’ . $CatName . ‘</a> > ‘;
}else{
$TopicPath .= $CatName;
}
}

return $TopicPath;
}
function sfGetTopicPath2($category_id){
// 商品が属するカテゴリIDを縦に取得
$objQuery = new SC_Query();
$arrCatID = $this->sfGetParents($objQuery, “dtb_category”, “parent_category_id”, “category_id”, $category_id);
$TopicPath = ” > “;

// カテゴリー名称を取得する
foreach($arrCatID as $key => $val){
$sql = “SELECT category_name FROM dtb_category WHERE category_id = ?”;
$arrVal = array($val);
$CatName = $objQuery->getOne($sql,$arrVal);
$TopicPath .= ‘<a href=”./list.php?category_id=’ .$val . ‘”>’ . $CatName . ‘</a> > ‘;
}
return $TopicPath;
}

これは指定通りに、{}の中に埋め込む。

/data/class/pages/products/LC_Page_Products_List.php
107行目に以下を追加
$TopicPath = $objDb->sfGetTopicPath($arrCategory_id[0]);
$this->tpl_topicpath = $TopicPath;

こちらは107行目ではなく113行目

/data/class/pages/products/LC_Page_Products_Detail.php
211行目に以下を追加

$arrTopicPath = $objDb->sfGetTopicPath2($arrCategory_id[0]);
$this->tpl_topicpath = $arrTopicPath;

これは211行目ではなく231行目

/data/Smarty/templates/default/site_main.tpl
37行目に以下を追加

<!–{if $tpl_topicpath != “”}–>
<a href=”<!–{$smarty.const.SITE_URL}–>index.php”>TopPage</a>
<!–{$tpl_topicpath}–>
<!–{$arrProduct.name|escape}–>
<!–{/if}–>

これは、設置した場所であれば、指定以外(detail.phpやlist.php)でも可。
ただし、URLを静的化している場合でも、発行されるURLは動的(list.php?category=***の形)になる。

このエントリーを含むはてなブックマーク

EC CUBEのタイトルをトップページ・商品一覧ページ・商品詳細ページで分ける

2009 年 4 月 21 日 火曜日

EC CUBEはデフォルトではタイトルまわりが、SEO的にもユーザービリティ的も良くは感じない。

site_frame.tplを以下のように変更

<!–{assign var=index  value=”`$smarty.const.URL_DIR`index.php”}–>

<!–{if $smarty.server.PHP_SELF==$index}–>
<title><!–{$arrSiteInfo.shop_name}–></title>

<!–{elseif $tpl_title == “商品一覧ページ”}–>
<title><!–{$tpl_subtitle|escape}–> : <!–{$arrSiteInfo.shop_name}–></title>

<!–{else}–>

<title><!–{$tpl_title|escape}–> : <!–{$arrSiteInfo.shop_name}–></title>
<!–{/if}–>

商品一覧ページでは最上階のカテゴリを表示

このエントリーを含むはてなブックマーク

EC CUBEのインストールエラー:require_base.php&Fatal error

2009 年 2 月 19 日 木曜日

EC CUBEのインストール時に以下のようなエラーが出る問題

Warning: require_once(/************/../data/require_base.php) [function.require-once]: failed to open stream: No such file or directory in /virtual/notes2/public_html/banbii.com/require.php on line 26

Fatal error: require_once() [function.require]: Failed opening required ‘/************/../data/require_base.php’ (include_path=’.:/usr/local/lib/php’) in /virtual/notes2/public_html/banbii.com/require.php on line 26

これは実際問題として記載されている箇所にエラーがあるのではなく、eccube/html/のdefine.phpで指定している階層設定に問題がある場合が多い。

/** HTMLディレクトリからのDATAディレクトリの相対パス */
define("HTML2DATA_DIR", "../data/");

/** DATA ディレクトリから HTML ディレクトリの相対パス */
define("DATA_DIR2HTML", "/../html/");

/*
* Local variables:
* coding: utf-8
* tab-width: 4
* c-basic-offset: 4
* c-hanging-comment-ender-p: nil
* End:
*/
?>

上記タグの中の
define(“HTML2DATA_DIR”, “../data/”);
define(“HTML2DATA_DIR”, “../html/”);
を修正すると解決する場合が多い。

このエントリーを含むはてなブックマーク