ハマログ

株式会社イーツー・インフォの社員ブログ

EC-CUBE4始めました

最近Nintendo-Switchを買い、毎晩3D酔いして老いを感じている、fujiです。


EC-CUBE3向けのソースを、EC-CUBE4で動くように修正しているのですが、なかなか苦戦しています。

構造、コンテナ作成、マイグレーション、ルーティングの仕組みや、EC-CUBE関数の処理がいくつか変わっており、一進一退しながら進めています。

 

4.0はリリースしたばかりということもあり、公式ドキュメントが整備中で、ネット上にも資料が少ないです。

公式ドキュメントの正式リリースもお待ちしています!w


最近時間をかけた個所
マイグレーション

EC-CUBE3:PluginManagerに対象ファイル名を書いて、インストール時に実行。

EC-CUBE4:Entityにアノテーションで指定して、インストール時に実行。

 

ファイルの差分を見ていたら、コメントが増えていることを発見。

ドキュメントにも記載があり、盲点でした。。

http://doc4.ec-cube.net/customize_entity

今後はコメントもよく読みたいと思います。

ちなみに、Controllerのルーティングもアノテーションで指定してました。

 

完全なURLの取得

EC-CUBE3:Applicationクラスのurlメソッド

EC-CUBE4:UrlGeneratorInterfaceクラスのgenerateメソッド

 

https://www.e2info.co.jp/

画像を表示させる為に、上記の形でURLを取得する必要がありました。

しかし、Applicationクラスが使えなくなっており、使えそうなメソッドはAbstractControllerにはあるものの、Eventクラスでは上手く呼び出せませんでした。

 

__constructにContainerInterfaceを追加して、get(‘サービスのID’)でサービスが取得でき、メソッドが使えるようになるようです。

下記でフロントのURLが取得できました。

$this->router->generate("homepage",array(),UrlGeneratorInterface::ABSOLUTE_URL);

この仕組みもドキュメントに記載がありました。

https://symfony.com/doc/3.4/service_container.html

 

ドキュメントを見ることの大切さを再認識。。

EC-CUBE

fuji   fuji   2018年11月21日


関連記事

PHP5.6でカード決済できない

こんにちはいけしまです。もう少しで冬休みですね。早い方はもうお休みでしょうか。 …

「EC-CUBE ユーザーカンファレンス 2016 新春」にいってきました。

  どうもこんにちは! イーツー・インフォの護身術好きこと、宇都宮です…

AWS環境で、EC-CUBEのtimezoneがおかしくなった話

~経緯~ 現在、案件でAWS環境でEC-CUEBの構築をしています。 テストで受…


← 前の投稿

次の投稿 →