質問 > その他 > マイページでの指定商品の表示 |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
h_tanaka |
投稿日時: 2024/11/19 17:30
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1885 |
Re: マイページでの指定商品の表示 テーブルがない場合はおすすめ商品管理での登録でもエラーになりそうですが、、
テーブルがない場合はプラグインのインストールに失敗していると思いますので、プラグインを一度削除してからインストールし直してください。
|
saitom |
投稿日時: 2024/11/20 11:39
対応状況: −−−
|
常連 登録日: 2024/11/1 居住地: 投稿: 33 |
Re: マイページでの指定商品の表示 ご回答ありがとうございます。
入れ直し無事データベースにデータがあることが確認できました。 Mypageのindex.twigに div class="ec-mypageRole"> {{ include('Block/recommend_product_block.twig') }} </div> このコードを入れましたが、表示されず、 src>Eccube>Controller>Mypage>MypageController.phpを コピーして app>Customize>Controller>Mypage>MypageController.phpを作成し RecommendController.phpに記載のあった use Plugin\Recommend4\Entity\RecommendProduct; use Plugin\Recommend4\Form\Type\RecommendProductType; use Plugin\Recommend4\Repository\RecommendProductRepository; use Plugin\Recommend4\Service\RecommendService; こちらを追記したところエラーになりました。 Compile Error: Cannot declare class Eccube\Controller\Mypage\MypageController, because the name is already in use recommend_product_block.twigwp読み込むにはどうすればよいでしょうか・・・ |
h_tanaka |
投稿日時: 2024/11/20 11:45
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1885 |
Re: マイページでの指定商品の表示 こちらの方法は試されましたか?
> ブロックを配置するだけのプラグインがあれば、テンプレート管理でマイページ専用のレイアウトを作成して、ページ管理でマイページのテンプレートを切り替えて、レイアウト管理でマイページのテンプレートにブロックを配置すれば、管理画面の操作だけで完結するかと思います。
|
saitom |
投稿日時: 2024/11/20 14:47
対応状況: −−−
|
常連 登録日: 2024/11/1 居住地: 投稿: 33 |
Re: マイページでの指定商品の表示 ご回答ありがとうございます。
質問の仕方が悪くすみません… {{ include('Block/recommend_product_block.twig') }}このtwigの中にある {% for RecommendProduct in recommend_products %} この変数が読み込めていないため表示されていないようで recommend_product_block.twig自体は読み込めており、適当な場所に文字列を入れると反映されております。 知識が足りず、申し訳ないのですがテンプレート管理からご教示いただいたやり方はhttps://www.thank-u.net/blog/eccube/plugin/recommend4/ このようなやり取りでしょうか? お時間ある際にご教示いただけますと幸いです。 |
h_tanaka |
投稿日時: 2024/11/20 15:38
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1885 |
Re: マイページでの指定商品の表示 変数が読み込めないとエラーになりますので、変数は読み込めていると思います。
エラーが表示されないのであれば、デバッグして原因を調査する必要があります。 おおよそは記載されているやり方ですが、マイページのみに追加されたいということかと思います。 この場合、テンプレートを追加する必要があります。
|
saitom |
投稿日時: 2024/11/20 17:10
対応状況: −−−
|
常連 登録日: 2024/11/1 居住地: 投稿: 33 |
Re: マイページでの指定商品の表示 ご連絡ありがとうございます。
デバックの必要がある点 承知しました。 管理画面から動かす場合行う必要はないでしょうか? その場合、一度管理画面からの操作を試してみたいのですが 手順を教えていただけますでしょうか。 おっしゃる通りマイページのみに表示させたいと考えております。 レイアウト管理→【トップページ用レイアウト】【下層ページ用レイアウト】 という項目があり、それぞれマイページを含む複数のページが作成されております。 この場合、【新規作成】で作成をすすめ、おすすめ商品のブロックを置いて登録すると 【トップページ用レイアウト】【下層ページ用レイアウト】【新規で作成したレイアウト名】 となりますがこの手順でしょうか? その後のテンプレートの追加を行う手順は https://cyberspace-jp.com/2022/1462/こちらでしょうか? 何度も申し訳ございません。 よろしくお願いします。 |
h_tanaka |
投稿日時: 2024/11/20 17:26
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1885 |
Re: マイページでの指定商品の表示 はい、手順合っています。
レイアウトは次のようにすれば良いです。 ・トップページ用レイアウト ・下層ページ用レイアウト ・マイページ用レイアウト ←新規作成 追加するのはレイアウトです。 テンプレートは追加する必要がないです。 不安があるようでしたら、検証環境で試してみてください。 もしなんらかの理由で検証環境が用意できないのでしたら、操作手順をメモしながら行い、問題が発生したら元に戻していけば良いと思います。
|
saitom |
投稿日時: 2024/11/20 19:11
対応状況: −−−
|
常連 登録日: 2024/11/1 居住地: 投稿: 33 |
Re: マイページでの指定商品の表示 確認いただき、有り難うございます。
管理画面からの変更ではやはり表示できず、 RecommendProductRepository.phpの内容を コメントアウトしたら表示されました。 public function getRecommendProduct() { $query = $this->createQueryBuilder('rp') ->innerJoin('Eccube\Entity\Product', 'p', 'WITH', 'p.id = rp.Product') // ->where('p.Status = :Disp') ->where('rp.visible = true') ->orderBy('rp.sort_no', 'DESC') // ->setParameter('Disp', ProductStatus::DISPLAY_SHOW) ->getQuery(); return $query->getResult(); } DBにコメントアウトしたカラムはないのですがこのままで 問題ないでしょうか? |
mcontact |
投稿日時: 2024/11/20 19:20
対応状況: −−−
|
神 登録日: 2022/1/22 居住地: 投稿: 1562 |
Re: マイページでの指定商品の表示
商品の公開ステータスに関係なく商品表示をしても良いのであれば、コメントアウトした箇所のままで問題ないと思いますが・・・ 公開ステータスが公開の場合のみ表示する場合は、問題あります。
|
h_tanaka |
投稿日時: 2024/11/21 8:41
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1885 |
Re: マイページでの指定商品の表示 コメントアウトしたカラムというと、
dtb_product.product_status_id ですね。 標準のカラムなので、ないということはないと思います。
|
« 1 (2) 3 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |