ECCUBEの会員登録(入力フォーム)を編集したいとき

ECCUBEで作成したオンラインショップで英語対応にしたく、会員登録部分を日本語から英語変換する方法をさがいしてみました。管理画面からは編集できなかったのでFilezillaから直接編集することになったので、注意点と変更部分を示しておきます。

 

変更箇所・・・・・ファイル場所:data/Smarty/templates/default/frontparts/form_personal_input.tpl

Smartyのファイルを編集したあと、PHPのファイルも編集します。
ファイル場所:/data/class/helper/SC_Helper_Customer.php

バージョンは2.13.1。

一度、.tpl部分を編集してみましたが、うまくいきませんでした。

php部分を編集していなかったのでかバージョンに関係があるのか・・・・

また調査してみます。

 

それでは

ECCUBEプラグイン WpPostのカスタマイズ ページング機能

はいどうもこんばんわANDくんです。

EC-CUBEのプラグイン、WpPostのカスタマイズシリーズでお送りしています。

今回はWpPostの記事を取得しつつ、ページング機能を付けるカスタマイズを行いたいと思います。
WpPostは記事を全件取得しつつ、ページングするような機能が付いてなかったのでそれをつけます。

カスタマイズ方法としてはあまり良くないカスタマイズしてると思うので参考程度に。もうちょっとどうにかしたかった。

まず、ページを作成します。
そして、そのページのメインコンテンツ部分を空にし、WpPostのブロックをメインコンテンツ部に表示になるように配置します。

から

の間に

を挿入します。

の中の

に変更します。

処理部は以上でOK。次にテンプレート部分でページャーを作ります。

こんな感じの物をページャーを置きたいところに配置します。
形とかもっと良い物あるかもしれませんが、最低限の機能は備えているかなと。
あとは軽くデザインを変更してください。今回はDB修正必要なかったはず・・・です。
ちょっと過去の事なので抜けてることもあるかもしれませんが・・・。

このような対応は下記のサイトのブログ箇所で行っています。参考までにご確認してみてください。
商品は・・・気が向いたら購入してみてはいかがでしょう!

コレクションシバ

ECCUBEプラグイン WpPostのカスタマイズ スマートフォンで表示

どうもこんばんわANDくんです

本日はECCUBEプラグインのWpPostのスマートフォン版でも有効にさせる方法を書いていきます。

WpPostは足りない機能の一つとしてスマートフォン版で使えないって事がありますね。

今回の修正はデータベースの変更を行いますので、よくわからないとかがある場合はECCUBEのストアで販売してあるプラグインを購入いただくのがいいと思います。
でもまあデータベースを修正できるのであればそんなに難しくは無いかなと思います。

また、WpPostはインストールされている前提で話を進めていきますね。

まず、ブロックについて

スマートフォン版にブロックを先に管理画面から作成します。そのブロックをWpPostのブロックとなるようにデータベースで指定します。

dtb_blocテーブルをいじっていくことになります。mysqlやpsqlやphpmyadminやらいろいろ環境があると思いますのでそこは各自にお任せします。

データベースをチラッと見て、今追加したブロックを確認、bloc_idを覚えておきます。

where句は device_type_id = 2 and bloc_id = (該当するid番号) みたいな感じで変更するのを指定します。
bloc_idはdevice_type_idが違った場合に被る事があるので、device_type_idとbloc_id両方で指定する必要があります。

変更するカラムは

この3つのカラムをPC版のWpPostのブロックに習い同じように変更します。

それぞれおそらく 空 1 空 の形から上記に変更します。これでブロックの設定は完了。
くれぐれも別のブロックを書き換えないでくださいね!

次はwppost/plg_WpPost_category.php wppost/plg_WpPost_post.php の二つについて。

まず先ほどと同じように今度はページを新規で2つ作ります。 対象が2つだから2つ作成します。

とりあえずはこんな形で2ページ作成しておきます。わかりやすいのでPC版と合わせる形ですね。

セレクト文をしてみます。弊社はPostgresqlです。他の環境ではわからないですが(特にPHPから触る系)まあほとんど同じでしょう。

セレクト文をすると弊社のカスタマイズ時では下記のように

そうしたら今度はDBの修正し、上記のdevice_type_idが2の物をPC版の物と同じようにします。

上記の場合なら具体的にはこう。

この後、ECCUBEからもう一度スマホ版の二つのページを編集で再登録しなおし(スマホ版のWpPostページのtplの再作成)してひとまずOKです。

PC版のテンプレートを参考にスマホ版を作成していきましょう。

また、スマホ版のuser_dataフォルダに最初にページを作成しようとした分のゴミが残ってるかと思いますが、気になる場合は削除しておくといいでしょう。

こんな感じですね。ECCUBEをわかってみるとそこまで難しくないカスタマイズとなります。

ECCUBEプラグイン WpPostのカスタマイズ 記事タイトルを表示

なんか暑くなってくるらしいですね。虫が増えるのかと思うと少し嫌な気分になってきますANDくんです。

ECCUBEプラグインの中で、WordPressと連携し、ECCUBE上でWordPressの内容を表示できるプラグインがあります。

ECCUBE上でWordPressを表示させるためにはこれを使わなければそれなりに難しいカスタマイズになってしまうのかなっていう気がしますね。
まあこのプラグインを使ってもいろいろ下準備とかが必要になり、大変なものではあるのですが・・・。

無料のWpPostですが、使ってみると案外機能が足りないなと感じます。
機能を多くしたかったりスマートフォンに対応させるためには有料のを買わないといけないですし、その機能も何が追加されるのかとか思うところがありますので、必要なところは自分でカスタマイズする必要があるのかなと思うしだいであります。

ライセンスがLGPLの物なので、カスタマイズしても、カスタマイズ方法載せても大丈夫なはず・・・ですよね。

今回はタイトルバーに記事タイトルを表示させるカスタマイズを行いたいと思います。
とは言え、バージョンが最新の物は無理やり対応させています。が、そのやり方もあまり気に入らないやり方だったので個人的には変えたい所です。
しかし、javascriptでページのタイトル変更した場合、検索エンジンってそれを拾ってくれるんですね。てっきりjavascriptは無視されるものなのかと思っていました。

今のWpPostの記事を表示させると、記事タイトルに一瞬「WordPressポスト表示」となってその後にjavascriptで書き換えられることとなります。
siteframe.tplを変更し、タイトルの形式を変更していた場合その形も変更されてしまいます。(個人的にはECCUBEデフォルトのタイトルの表示が気に食わないってのありますが。)

WordPressポスト表示はその表示するページの元々のページ名、そのページ名を普通に表示させるようにしつつ、javascriptを無効にしちゃいましょう。

/eccube/data/downloads/plugin/WpPost/templates
にあるplg_WpPost_header_add.tplをいったん空にするなり全部コメントアウトするなりします。これでjavascriptは読み込まれなくなりますね。
本当はそもそもこのファイルをインクルードしないようにすればいいのですが、どこですればいいのかちょっと見当たりませんでした。

次に/eccube/data/downloads/plugin/WpPost
にあるplg_WpPost_LC_Page.phpを開き

内の一番後ろに

これを追加します。
これでカスタマイズ完了。
javascriptに頼らずにタイトルを表示することができるようになります。

最新版ではECCUBE側のバージョンに合わせてplg_WpPost_LC_Page_XXXX.phpみたいなファイルがたくさんあるので、バージョンによっては違うファイルを変更する必要があるかもしれませんが、たぶん同じ方法で行けると思います。

WpPostさんもこれを正式に採用していただけませんかねー_(:3 」∠ )_って思う今日この頃でした。

関係ないけど、ちょっとあるけど、WpPostのページにgetを無く表示した場合、全記事表示してしまうのは脆弱性じゃないのかな・・・?って思いました。

EC-CUBEのsitemapから購入情報へのページを消しとく方法

おはこんばんちは。福田です。

お客様から連絡があって、「EC-CUBEの http://example.com/sitemap.php をGoogle webmastertoolsに登録したら、 /shopping/*** みたいなページが入ってて、そこカートの情報が無いと入れないからエラー出てる」って言われました。

ふむ。たしかに出ている。

じゃーちょっと修正しようということで、調査してみました。

まず、最初に、”どこで表示しているのか”調べます。

以下、便宜的に、EC-CUBEの格納されているディレクトリを EC-CUBE-DIR とします。

EC-CUBEは構造上、アクセスすると、まず EC-CUBE-DIR/html/ の処理が実行されます。
今回調査したいのは、sitemap.php なので、EC-CUBE-DIR/html/sitemap.php を見ましょう。


EC-CUBE-DIR/data/class_extends/page_extends/LC_Page_Sitemap_Ex.php にアクセスしてることがわかりました。

LC_Page_Sitemap_Ex.php を確認すると、中身は空っぽ。
ということで 親クラスの EC-CUBE-DIR/data/class/pages/LC_Page_Sitemap.php を見てみると、開発者さんの苦悩が垣間見えました(笑)

今回は、 /shopping/ のディレクトりを排他処理したかっただけなので、 LC_Page_Sitemap_Ex.php をこんな感じにしてみました。


うん、たぶん大丈夫(´∀`)

【EC-CUBE】セキュリティアラート(2013/11/19)

EC-CUBE にセキュリティ上の問題が見つかったそうです。

セキュリティ関連の対処をちゃんとやってくれるのは有難いのですが、このシステム、アップデートやらパッチ当てやらがどうにも厄介。

WordPress ならWeb上の操作でアップデートできるし、CakePHPもシステム領域と開発領域が綺麗に分かれてるから簡単にアップデートできて便利なのですが。

少しでも楽に EC-CUBE のアップデートやパッチ当てを行うためには、こんな風にすればいい~と思いついたことを書いてみます。

続きを読む 【EC-CUBE】セキュリティアラート(2013/11/19)

EC-CUBE 2.13がリリースされました

「消費税率変更時の対応はどうしますか?」というお客様からのメールを受けて調べたところ、2013.9.19付けでEC-CUBEから税率変更に対応したver2.13がリリースされました。

http://www.ec-cube.net/product/info_2_13.php

新しいEC-CUBE2.13では、「消費税率の変更前後で、整合性のとれた受注管理が行える」点と、「将来や海外の税率も考慮した、柔軟な税率管理が行える」点に対応しています。

説明ページを見ると、今後行われる税率変更に対応したものとなっています。
現時点では、クレジットカード決済関連のプラグインが追い付いていないため、導入は11月前後になりそうな予感です。
年末までには完全対応が必要ということで、ECサイトはにわかに忙しくなりそうだなと思います。
特に弊社では特殊な機能を盛り込んだサイトが多いため、移行は苦労しそうです…
2.13用のクレジットカード決済関連のプラグインが出てくるのが遅くなると、こちらの作業する期間も短くなってしまうので、年内くらいに方針が決まらないとやっかいそうですね(´Д`)

詳しい仕様はこちらです。→http://www.ec-cube.net/document/ec-cube/213_tax_spec.pdf