※ PHPファイルの作成に失敗しました EC-CUBE2.1.4

※ PHPファイルの作成に失敗しました

と表示される事象に遭遇中です。

「デザイン管理>PC>ページ詳細設定」で新規ページ追加時に起こった現象ですが。

ブロック設定からの新規追加は可能。

パーミッション変更でもらちがあきませんでした。

ん〜どうしよう。。。

面倒なので以下で解決。

phpが作れないとダダをこねるなら。。。。

登録したいファイル名でphpを予め作りFTPで「user_data」にアップロード。

因にファイル内容は下記でアップロード。

そしてブラウザ側で登録ボタンを押すことでtplファイルの生成とSQLへの登録も行えます。

以下余談。

クラスがだめなのかと思い、該当ファイルのみナイトリービルドを突っ込んでみました。

案の定デザインclassだった為か全部書き換えられ、一時的にuser_dataフォルダも認識しない状態に・・・

バックアップとって再インストールして解決。

EC-CUBE 商品詳細に在庫数表示

上記コードを表示させたいところに表示。

商品詳細ページのファイルは下記。

eccube2.11 インストール時の文字化け対策

新規DBを下記のように設定します。
MySQL の文字セット: UTF-8 Unicode (utf8)
MySQL 接続照合順序: UTF-8 Unicode_ci
作成後に変更しても直らないので再インストールになります。
■PHP MyAdminで文字コードを utf8_general_ci に変更
 ※PHP MyAdminでデータベースを選択後、操作タブ→照合順序 で変更可能

■文字化けが直っていればOK

ですが、もしその手順でインストールしていた、やってみたが直っていなければ下記の手順も試してみましょう。

■.htaccessに、
AddHandler .php
suPHP_ConfigPath

■php.iniを、.htaccessと一緒に指定した階層に置く。

参考サイト↓
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=flat&order=ASC&topic_id=9044&forum=10

もう一つの方法が

■下記のUTF-8の部分が別の物になっていれば、修正してからインストール

/data/class/SC_Query.php の79行目、

//$this->conn->setCharset(CHAR_CODE);
$this->conn->setCharset(‘utf8′);

/data/module\MDB2/Driver/mysql.php の539行目、

//if (!empty($this->dsn[‘charset’])) {
  //$result = $this->setCharset($this->dsn[‘charset’], $connection);
  $result = $this->setCharset(‘utf8′, $connection);
  if (PEAR::isError($result)) {
    $this->disconnect(false);
    return $result;
  }
//}

参考サイト↓
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=7678&forum=2&post_id=37349

EC-CUBEの商品の登録項目内容の追加

「EC-CUBEの商品の登録項目内容の追加」

商品詳細ページに入力項目を追加したいと思います。
例として今回は家具サイトの例として「サイズ(W*D*H)」を追加します。

データベース(以下、DB)にカラムを追加する

dtb_productsに1カラム追加。
カラム名「comment7」
データ型「text」

商品詳細ページの編集

管理ページのデザイン管理>ページ詳細設定>商品詳細ページを開き、サイズを表示したい部分に、

<!–{$arrProduct.comment7}–>

と記述する。

サイズ表示しないようにするには、

<!–{$arrProduct.comment7|escape}–>

と記述する

商品登録ページの編集

data/Smarty/templates/default/admin/products/product.tplのファイルを開き、メーカーサイトの項目の下あたりに、

つづく

商品一覧を3列のカラム(column)表示 / 横型商品一覧の導入

user_date/packages/default/css/common.css内の記述を変更
(contents.cssの可能性あり)

↓に変更。

下記はカラムへの回り込み禁則処理
(商品が1つの場合や価格順・新着順のソートバー回り込み禁則)

common.cssの中(100行目あたり)に追記

下層コンテンツあたりに追記

多分以上で出来るが、商品名や文字のボリュームで個々のheightがバラバラになることがあります。
なので、「heightLine.js」jQuery等でそろえること。
(面倒であればCSSでdiv.list_areaとdiv.list_area h3 の heightを強制固定)

買い物かごの表記は下記ファイルの200行目前後。
今回は消去しました。
template/default/products/list.php

2012年1月24日 加筆

eccube2.11 インストール方法 (ver2.11.4)

eccube2.11.4 インストール方法 一回やりましたがもう既に忘れたのでもう一度トライするところから。

まず、データベースを構築するところからですが user_eccube と適当に設定。

空のDBを作成したら、 EC-CUBE Version 2.11.4(zip)をダウンロード。

この時、不具合修正ファイルの最新版も同時にダウンロード。

上記のうち、ECサイトそして機能するのに必要なデータは「data」「html」の2つのフォルダだけなので他は無視。

セットアップ前に、不具合修正ファイル内にある「data」「html」をeccube-2.11.4の中に入れて上書きしてください。

“eccube2.11 インストール方法 (ver2.11.4)” の続きを読む

WordPressプラグイン。めんどくさいのでこれだけは入れてみたw3種の神器w

面倒なので、3つくらいしかプラグイン選びたくないですwっていう人に最適。
事実、別のワードプレスに入れてみたのが以下3個のみw

Simple Tags
面倒なので紹介すらここではしませんw
http://wordpress.siyouyo.com/plugin/1330/
上記「WordPressの使い方」でうまい具合に紹介しています。
いいとこポイントも3点のみ紹介します。
1.タグ管理が楽になる
2.本文を読み取って自動的にタグを入れてくれる
3.過去の記事にもタグ付してくれたw

2.3.は非常にめんどくさがり屋さんな自分には助かりましたw

Akismet
初期設定でインストールされているプラグインです。
面倒なスパム野郎はこれで撃退できます。有効化すればいいのですが、面倒なポイントはAPIKEYを取得しないといけないことくらいですねw
いいとこポイントではなく面倒なポイント3点のみ紹介w
1.APIKEYを取得しないといけない(取得は簡単ですが)
2.最初からインストールされてるのに有効化されてないw
3.Akismetという名前だけじゃスパムを消してくれるプラグインかわからないw

特にプラグインの名前・・・意味が分からず・・・過去にもこのプラグイン使ってましたが、全然思い出す気にもならないネーミングw
メンドクサイ名前だw(非常に有効活用させていただいてますが)

Google Analytics Dashboard
ダッシュボードにアナリティクスを表示してくれる奴ですねw
面倒なので敢えて紹介はしませんが楽なポイント3点紹介しますぉw
1.いちいちGoogleAnalityicsにアクセスしなくていいw
2.設定も楽
3.こんなプラグイン探してたw

結局紹介自体面倒なので適当ですが、めんどくさがり屋な自分にとって入れられるのは3つくらいなもので、Akismetに至ってはスパムがかなり入ってから入れたくらいですw
本気出せば結構選べるのですが、FTP使わずにインストールできる機能も備わっていながらそれでも面倒なのでプライベートで作るBlogに至っては超適当にやってますwなのでインストールしてもプラグインすら設定してない状態もありマスが、今日作ったブログで入れたのは上記の3点くらいなものですw
他にも魅力的なプラグインがいろんなところで紹介されているので漁ってみるのもいいですねw

例えば下記とか好きですw
2011年版!絶対にインストールしたいWORDPRESSプラグイン45個

EC-CUBE 動的ページを静的ページ(静的URL)にする

なぜ静的URLにするのかというと・・・

GoogleやYahoo! などの検索の場合、動的URLでは、一つのページとみなしてしまいます。 (まぁ最近じゃ?がついていようとインデックスしてくれるみたいですが) ちなみに動的URLとは下記のように?が入るURLです。 http://サーバ名/ec-cube/html/products/detail.php?product_id=xxこちらですと、検索するにあたって、detail.phpのファイルとみなされていまい、 1ページしかインデックスされません。

ですので、各ページごとにインデックスされるように、 http://サーバ名/ec-cube/html/products/detail/xx

とします。これが静的URLです。 実際にページは存在していませんが、 検索ロボットに存在しているように見せることができます。

1. パラメータを変える。

まず、 システム設定>パラメータ設定より以下を変更います。 パラメータ:LIST_P_HTML 変更前:URL_DIR . “products/list-p” 変更後:URL_DIR . “products/list/” パラメータ:DETAIL_P_HTML変更前:URL_DIR . “products/detail.php?product_id=”変更後:URL_DIR . “products/detail/”

2. .htaccsessファイルをhtml/products/以下にに配置します。 そのファイルに下記の内容を追加します。 RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^detail/([0-9]+)+ detail.php?product_id=$1 [L] RewriteRule ^list/([0-9]+)+ list.php?category_id=$1 [L]

※.htaccsessは、html/ 内にありますので、それをコピーして設置すると楽です。

3.管理画面>デザイン管理>ブロック編集>カテゴリを開き46行目あたりのソースを変更

こちらはカテゴリのリンクの変更です。

変更前:products/list.php?category_id= 変更後:products/list/

4.管理画面>デザイン管理>ページ詳細設定>商品詳細ページのソースを変更

商品詳細のページのリンクが静的ページにするために、パス( / )を切った関係で、階層が一つ多くなってしまいました。

変更箇所は、 内の合計6つ変更です。

変更前:./ 変更後:../  ※2階層上へ送っている

他、動作には関係ありませんが、こちらも変更をオススメ、

 

変更前:products/list.php?category_id= 変更後:products/list/

これで、変更完了です。 各種エディターを使って、コピペして、コマンド+Fで所定の箇所を探してみてください。

EC-CUBE 2.11 Smarty 主要ディレクトリパス一覧

[html]
<!–{$TPL_URLPATH}–>
/html/user_data/packages/XXXX(使用中のテンプレ)

<!–{$smarty.const.USER_TEMPLATE_REALDIR}–>
html/user_data/packages/

<!–{$smarty.const.TOP_URLPATH}–>
/html/

<!–{$smarty.const.ROOT_URLPATH}–>
/html/

<!–{$smarty.const.HTML_REALDIR}–>
/html/

<!–{$smarty.const.HTTPS_URL}–>
https://ドメイン

<!–{$smarty.const.P_DETAIL_URLPATH}–>
/html/products/detail.php?product_id=

<!–{$smarty.const.IMAGE_SAVE_URLPATH}–>
/html/upload/save_image/

<!–{$smarty.const.DATA_REALDIR}–>
/data/

<!–{$smarty.const.CLASS_REALDIR}–>
/data/class/

<!–{$smarty.const.CLASS_EX_REALDIR}–>
/data/class_extends/

<!–{$smarty.const.TEMPLATE_REALDIR}–>
/data/Smarty/templates/default/

<!–{$smarty.const.TEMPLATE_ADMIN_REALDIR}–>
data/Smarty/templates/admin/

<!–{$smarty.const.TEMPLATE_TEMP_REALDIR}–>
html/upload/temp_template/

<!–{$smarty.const.GRAPH_URLPATH}–>
/html/upload/graph_image/

<!–{$smarty.const.IMAGE_TEMP_URLPATH}–>
/html/upload/temp_image/

<!–{$smarty.const.CART_URLPATH}–>
/html/cart/

<!–{$smarty.const.ADMIN_LOGIN_URLPATH}–>
/html/shopmng/

<!–{$smarty.const.ADMIN_SYSTEM_URLPATH}–>
/html/shopmng/system/

<!–{$smarty.const.ADMIN_PRODUCTS_URLPATH}–>
/html/shopmng/products/

<!–{$smarty.const.ADMIN_ORDER_URLPATH}–>
/html/shopmng/order/

<!–{$smarty.const.MOBILE_IMAGE_URLPATH}–>
/html/upload/mobile_image/

<!–{$smarty.const.MOBILE_TOP_URLPATH}–>
/html/

<!–{$smarty.const.MOBILE_CART_URLPATH}–>
/html/cart/

<!–{$smarty.const.MOBILE_P_DETAIL_URLPATH}–>
/html/products/detail.php?product_id=

[/html]