バージョン選択

フォーラム

メニュー

オンライン状況

76 人のユーザが現在オンラインです。 (63 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 76
もっと...

サイト内検索

質問 > フロント機能 > 商品タグの一覧を取得したい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
katsuo77
投稿日時: 2017/10/29 18:53
対応状況: 解決済
半人前
登録日: 2017/10/14
居住地:
投稿: 12
商品タグの一覧を取得したい
▼テンプレート
[EC-CUBE] 3.0.15 新規インストール
[レンタルサーバ] さくら vps
[OS] CentOS 6.9
[PHP] 7.0.21
[データベース] MySQL 5.6.36


お世話になります。
題名にもありますが、SearchProductType.php内においてタグの一覧を取得したいです。

やろうとしていることは、商品一覧ページでタグのプルダウンによる検索機能を実装することで、一応動くようにはなっています。
しかし現状は以下のように手書きで選択肢を追加している状況で、今後の拡張性がまったくありません。。

$builder->add('tag', 'choice', array(
'required' => false,
'empty_value' => '指定なし',
'empty_data' => null,
'choices' => array('1' => '新商品', '2' => 'おすすめ商品'),
));

できればタグのリストを取得して'choices' => $Tagsのような形で実装できるといいのですが、何か方法はあるのでしょうか?

$Categories = $this->app['eccube.repository.category']
->getList(null, true);

でカテゴリーを取得するのと同じような形でできると嬉しいです。
よろしくお願いいたします。
468
投稿日時: 2017/10/30 11:53
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: 商品タグの一覧を取得したい
カテゴリの記述を参考にすれば、同じような処理を実装出来ます。

$Categories = $this->app['eccube.repository.category']->getList(null, true);は、
/src/Eccube/Repository/CategoryRepository.php 76行目の
function getList()を呼び出して返り値を受け取っていますので、
/src/Eccube/Repository/Master/TagRepository.phpに
同じようにfunction getList()を追記すれば、
$Tags= $this->app['eccube.repository.master.tag']
->getList();
で一覧を取得できるようになると思います。
※カテゴリは親子階層を組み立てるロジックがありますので、その部分は取り除く必要があります


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

nyorai
投稿日時: 2017/10/31 9:37
対応状況: −−−
仙人
登録日: 2015/8/21
居住地:
投稿: 302
Re: 商品タグの一覧を取得したい
choice typeではなくentity typeを使えばよいかと思います

 
       $builder->add('tag', 'entity', array(
            'class' => 'Eccube\Entity\Master\Tag',
            'required' => false,
            'empty_value' => '指定なし',
            'empty_data' => null,
        ));


https://symfony.com/doc/2.7/reference/forms/types/entity.html
katsuo77
投稿日時: 2017/10/31 17:22
対応状況: −−−
半人前
登録日: 2017/10/14
居住地:
投稿: 12
Re: 商品タグの一覧を取得したい
468様

こちら返信が遅れて申し訳ありません。

ご回答ありがとうございます。
関数はそこで管理されているのですね。symphonyが初めてで構造がわかっていない部分も多いので勉強になりました。
今回はnyorai様のご回答の方法で実装したのですが、折をみてこちらの方法でも練習したいと思います。

ありがとうございます。
katsuo77
投稿日時: 2017/10/31 17:23
対応状況: −−−
半人前
登録日: 2017/10/14
居住地:
投稿: 12
Re: 商品タグの一覧を取得したい
nyorai様

ご回答ありがとうございます。
このように便利なコードがあるのですね。。簡単に実装することができました。

ありがとうございます。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,853名です
総投稿数は109,989件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1291
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.