バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > お気に入り一覧ページから注文できるようにしたいです。

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
tk250
投稿日時: 2024/8/22 9:40
対応状況: 確認中
新米
登録日: 2024/7/16
居住地:
投稿: 1
お気に入り一覧ページから注文できるようにしたいです。
[EC-CUBE] 3.0.16 新規インストール
[レンタルサーバ] さくらインターネット
[OS] CentOS 6
[PHP] 5.6.36
[データベース] MySQL 5.6.50
[ブラウザ] Google Chrome 127.0.6533.120
[導入プラグインの有無] 受注マスタ並び替え、顧客CSV登録、MailMagazine、メールテンプレート機能拡張プラグイン、PayPalExpress、Pointプラグイン、離島送料、商品並び替えプラグイン、DocumentPdf


マイページのお気に入り一覧に登録されている商品について、お気に入り一覧ページから注文できるようにしたいです。
商品の個数、カゴに入れるボタンは設置できたのですが、規格を選択するためのドロップダウンメニューが設置できません。
以下のように編集してみたのですが、表示されません。
何がおかしいのかお分かりの方がおられましたら、教えていただけないでしょうか。
よろしくお願いします。

■MypageController.php

public function favorite(Application $app, Request $request)
{
$BaseInfo = $app['eccube.repository.base_info']->get();

if ($BaseInfo->getOptionFavoriteProduct() == Constant::ENABLED) {
$Customer = $app->user();

// paginator
$qb = $app['eccube.repository.customer_favorite_product']->getQueryBuilderByCustomer($Customer);

$event = new EventArgs(
array(
'qb' => $qb,
'Customer' => $Customer,
),
$request
);
$app['eccube.event.dispatcher']->dispatch(EccubeEvents::FRONT_MYPAGE_MYPAGE_FAVORITE_SEARCH, $event);

$pagination = $app['paginator']()->paginate(
$qb,
$request->get('pageno', 1),
$app['config']['search_pmax'],
array('wrap-queries' => true)
);

        // ここから追加
$items = array();
foreach ($pagination as $item) {
$Product = $app['eccube.repository.product']->find($item->getId());
      $productClasses = $app['eccube.repository.product_class']->findBy(array('Product' => $Product));
  foreach ($productClasses as $productClass) {
   $items[$item->getId()] = $productClass->getClassCategory1();
  }
}
// ここまで追加

return $app->render('Mypage/favorite.twig', array(
'pagination' => $pagination,
// ここから追加
'items' => $items,
// ここまで追加
));
} else {
throw new NotFoundHttpException();
}
}



■Mypage/favorite.twig

{% for FavoriteProduct in pagination %}
{% set Product = FavoriteProduct.Product %}
{% if items[Product.id] is defined %}
<p>規格1:</p>
<select id="classcategory_id" name="classcategory_id1" class="form-control">
{% for productClass in items[Product.id] %}
{% if productClass.ClassCategory1 %}
<option value="{{ productClass.ClassCategory1.id }}">{{ productClass.ClassCategory1.Name }}</option>
{% endif %}
{% endfor %}
</select>
{% else %}
<p>規格1: 規格なし</p>
{% endif %}
{% endfor %}
tattsu
投稿日時: 2024/8/23 8:32
対応状況: −−−
仙人
登録日: 2023/12/23
居住地:
投稿: 336
Re: お気に入り一覧ページから注文できるようにしたいです。
MypageController.phpでは、$items という配列にClassCategoryを登録しているのに

Mypage/favorite.twigでは、{% for productClass in items[Product.id] %} となっていてProductClassが入っている想定になってしまっていますね。


----------------
-------------------

EC-CUBEカスタマイズ・バージョンアップ・不具合修正(状況調査は無料)
ゴールドパートナー。

スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は93,736名です
総投稿数は111,095件です

投稿数ランキング

1
seasoft
7369
2
468
3217
3
AMUAMU
2712
4
nanasess
2318
5
umebius
2085
6
yuh
1858
7
h_tanaka
1760
8
red
1574
9
mcontact
1469
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
804
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.