質問 > 管理機能 > mypage配下へのページ追加について |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
kj8ftr |
投稿日時: 2021/4/6 12:55
対応状況: −−−
|
新米 ![]() ![]() 登録日: 2021/4/6 居住地: 投稿: 2 |
mypage配下へのページ追加について ▼テンプレート
[EC-CUBE] EC-CUBE3.0.18 [レンタルサーバ] Kagoya [PHP] 7.2.12 [データベース] MySQL 5.6.36 [WEBサーバ] Apache [現象] ECCUBE3系を使用しております。 この度、「mypage」配下にページを増やしたいと考えております。 管理画面のページ管理から追加を行うと、「user_data」配下となってしまうため、これの回避法を探しております。 方法をご存知の方がいらっしゃいましたら、教えていただけないでしょうか? 何卒よろしくお願いいたします。 当方、こちらのコミュニティの利用が初めてですので、何か足りない情報等ございましたら都度追加いたします。 お手数をおかけいたしますが、よろしくお願いいたします。 |
468 |
投稿日時: 2021/4/9 10:41
対応状況: −−−
|
神 ![]() ![]() 登録日: 2008/10/26 居住地: 投稿: 2922 |
Re: mypage配下へのページ追加について どのようなページの追加をご要望か分かりませんが
ページ管理機能と異なるページを追加したい場合、 PHPファイルとテンプレートファイル、データベースへのデータの追加が必要になってきます。 (symfony2に則った形でページを追加する必要があるかと思います) プログラムを編集したり、データベースを直接操作したりといった操作が必要になってきますので その辺りの経験があれば特に問題ないかと思いますが 誤った操作を行うとECサイトがエラーで動かなくなってしまう部分の為、注意です。 umebius様が管理画面へ新しいページを追加する方法をまとめられたページがあり、 とても参考になりますので一度、確認されてみては如何でしょうか? https://umebius.com/eccube/insert_new_page_and_menu_in_admin_panel/
|
kj8ftr |
投稿日時: 2021/4/9 10:57
対応状況: −−−
|
新米 ![]() ![]() 登録日: 2021/4/6 居住地: 投稿: 2 |
Re: mypage配下へのページ追加について ご回答誠にありがとうございます。
>どのようなページの追加をご要望か ログインした会員しか見れないページで、具体的に言うとメルマガ解除ページとなります。 やはりデータベースを弄る必要があるのですね。。 >ページ管理機能と異なるページを追加したい場合、 PHPファイルとテンプレートファイル、データベースへのデータの追加が必要になってきます。 ここの部分を詳しく解説していただいているサイトなどご存知ではないでしょうか...?リンク先を確認しましたが、今回のやりたいこととは少し違うような気がしまして。 ご紹介いただいたのに申し訳ございません。 |
468 |
投稿日時: 2021/4/9 15:16
対応状況: −−−
|
神 ![]() ![]() 登録日: 2008/10/26 居住地: 投稿: 2922 |
Re: mypage配下へのページ追加について >ログインした会員しか見れないページで、具体的に言うとメルマガ解除ページとなります。
まず既存のマイページがどのような流れで表示されているか確認されてみては如何でしょうか? 例えば、マイページのお気に入り一覧ページですが https://ドメイン/mypage/favorite でページが表示されるかと思います。 こちらは /src/Eccube/ControllerProvider/FrontControllerProvider.php の中で(98行目付近) $c->match('/mypage/favorite', '\Eccube\Controller\Mypage\MypageController::favorite')->bind('mypage_favorite'); の一文でURLから実行するPHPファイルが指定されています。 第一引数の'/mypage/favorite'の部分がURLのドメイン以下の箇所、 第二引数の'\Eccube\Controller\Mypage\MypageController::favorite'の部分が /src/Eccube/Controller/Mypage/MypageController.php public function favorite() を指しており、該当のURLに一致した時に指定したPHPファイルのfuctionを実行するという流れになっています。 MypageController.php public function favorite()の中身を確認すると 268行目付近の return $app->render('Mypage/favorite.twig', array( 'pagination' => $pagination, )); の一文で Mypage/favorite.twig が指定され、お気に入り一覧ページが表示される(テンプレートファイルのfavorite.twigを元にしたHTMLが出力) 仕組みとなっています。 新しいページを追加するという事は、この一連の流れを新しく追記する必要があります。 (紹介させていただいたリンク先では「1. ルーティングの指定」になります) この流れはsymfony2というPHPフレームワークで定められたルールに準拠しており PHPやHTMLの知識とは別にsymfony2の知識が必要となります。 この辺りを一から解説となると、ボリュームが大きくなる為、 完全に解説するというのは難しいかと思います。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |