Because We Love Happy Coding

フリーライターからエンジニア × 講師。発信力だけあり余ってる感じ

ECCUBE3 トップページに全商品一覧を表示する方法

今日もまたコーディング。だって僕らはHappy Codingが大好きだから。

ちょっとまだ中身あまりわかっていないけど、表示されてしまったのでとりあえず。もっといい方法がありそうな気がする。

トップページに全商品一覧を表示する方法

EC CUBE3 の各ページで渡される変数一覧 · ynakajima/eccube3-bootstrap-plain-template Wiki · GitHub

これはけっこう大事な情報だという気がする。

Controller配下のファイルが、渡す変数をコントロールしているらしい。

src/Eccube/Controller/ProductController.php

トップページに変数を渡しているControllerはこちら。

src/Eccube/Controller/TopController.php

ProductControllerが行っている処理をTopControllerにもやらせてみる。

  • 安全のためにオリジナルのTopControllerを待避。
  • ProductControllerを「名前をつけて保存」し、新しいTopController.phpとして保存する。
  • Class記述を変更。TopController 35行目をclass TopController extends AbstractControllerに変更する
  • /home/brigie/www/ec/app/template/default/Product/list.twigを開いて、{% block main %}の中身をコピー
  • /home/brigie/www/ec/app/template/default/index.twigを開いて{% block main %}内にペースト

参考

index_dev.phpで出たエラー表示。

Variable "pagination" does not exist in "__string_template__1a49a38ab485dcf0fd76892be58297474dbf8c96881007e560267cfefbbef98a" at line 46.

EC-CUBE - EC-CUBEのTwig_Error_Runtimeについて(73786)|teratail

EC-CUBE 開発コミュニティ - フォーラム