バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > 商品詳細ページに規格に関する情報を表示させたい

フロント機能

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
hata
投稿日時: 2017/9/13 16:37
対応状況: −−−
長老
登録日: 2015/8/3
居住地: 宮城県(2017/09末引退)
投稿: 156
Re: 商品詳細ページに規格に関する情報を表示させたい
こんな感じ(行頭+が追加行)でsrc/Eccube/Controller/ProductController.phpに処理をいれてやると、
twigの方でproduct_class_string1とproduct_class_string2が使えるようになります。
             $is_favorite = $app['eccube.repository.customer_favorite_product']->isFavorite($Customer, $Product);
         }

+        $arrCc1 = array();
+        $arrCc2 = array();
+        $product_class_string1 = $Product->getClassName1();
+        $product_class_string2 = $Product->getClassName2();
+        foreach ($Product->getProductClasses() as $ProductClass) {
+            $ClassCategory1 = $ProductClass->getClassCategory1();
+            if ($ClassCategory1) {
+                $cc1name = $ClassCategory1->getName();
+                $cc1id = $ClassCategory1->getId();
+                if (!array_key_exists('key'.$cc1id, $arrCc1)) {
+                    if (empty($arrCc1)) {
+                        $product_class_string1 .= ':'. $cc1name;
+                    } else {
+                        $product_class_string1 .= '/'. $cc1name;
+                    }
+                    $arrCc1 = array_merge($arrCc1, array('key'.$cc1id => $cc1name));
+                }
+                $ClassCategory2 = $ProductClass->getClassCategory2();
+                if ($ClassCategory2) {
+                    $cc2name = $ClassCategory2->getName();
+                    $cc2id = $ClassCategory2->getId();
+                    if (!array_key_exists('key'.$cc2id, $arrCc2)) {
+                        if (empty($arrCc2)) {
+                            $product_class_string2 .= ':'. $cc2name;
+                        } else {
+                            $product_class_string2 .= '/'. $cc2name;
+                        }
+                        $arrCc2 = array_merge($arrCc2, array('key'.$cc2id => $cc2name));
+                    }
+                }
+            }
+        }
         return $app->render('Product/detail.twig', array(
             'title' => $this->title,
             'subtitle' => $Product->getName(),
             'form' => $form->createView(),
             'Product' => $Product,
             'is_favorite' => $is_favorite,
+            'product_class_string1' => $product_class_string1,
+            'product_class_string2' => $product_class_string2,
         ));
     }

twig側
{% if product_class_string1 %}
{{ product_class_string1 }}
{% endif %}
{% if product_class_string2 %}
<br>
{{ product_class_string2 }}
{% endif %}
ざざざっと書いちゃったのでプログラムには改善の余地はあるかも知れませんが、こんな感じっていうイメージが伝わると嬉しいです。
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
   商品詳細ページに規格に関する情報を表示させたい sksn 2017/9/12 15:29
     Re: 商品詳細ページに規格に関する情報を表示させたい hata 2017/9/12 18:35
       Re: 商品詳細ページに規格に関する情報を表示させたい sksn 2017/9/13 15:00
       » Re: 商品詳細ページに規格に関する情報を表示させたい hata 2017/9/13 16:37

 



ログイン


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

統計情報

総メンバー数は88,944名です
総投稿数は110,018件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1646
8
red
1570
9
mcontact
1296
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.