前提条件いろいろ割愛しますが、DBに当該データが入っていて、Doctrineファイルにパラメタと名前が定義してあり、Formビルダー各パラメタが構築されてるのが前提です。
以下ファイルを修正。
/src/Eccube/Controller/ProductController.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
: /** * ページタイトルの設定 * * @param null|array $searchData * @return str */ private function getPageTitle($searchData) { if (isset($searchData['name']) && !empty($searchData['name'])) { return '検索結果'; } elseif (isset($searchData['category_id']) && $searchData['category_id']) { return $searchData['category_id']->getName(); // *********************************************** // // 検索キー(パラメタ名->getName())をサブタイトルに反映: // 地方(東北地方とかの) } elseif (isset($searchData['district']) && $searchData['district']) { // この情報はymlに登録してない(DBと連携してない)ので、定義してあるクラスから引っ張ってきた return Constant::DISTRICTS[$searchData['district']]['name'] ? Constant::DISTRICTS[$searchData['district']]['name']: null; // 都道府県 } elseif (isset($searchData['pref']) && $searchData['pref']) { return $searchData['pref']->getName(); // 市区町村 } elseif (isset($searchData['city']) && $searchData['city']) { return $searchData['city']->getName(); } elseif (isset($searchData['brewery']) && $searchData['brewery']) { return $searchData['brewery']->getName(); } elseif (isset($searchData['brand']) && $searchData['brand']) { return $searchData['brand']->getName(); // *********************************************** // } else { return '全商品'; } } : |
基本、$searchDataに値が入っていれば、getName->()でとれます。