プラグイン > 開発について > 管理画面のナビゲーションを表示したい |
開発について
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
h_tanaka |
投稿日時: 2016/10/20 17:06
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1649 |
管理画面のナビゲーションを表示したい EC-CUBE3にて、プラグインの開発を行おうと考えています。
Controllerで新規ページの追加、ServiceProvider でナビゲーションメニューへのリンクの追加はできました。 しかし管理画面のページとして作成したいため、まっさらなページではなく管理画面のヘッダーやナビゲーションを表示したいです。 どうすればよいでしょうか?
|
red |
投稿日時: 2016/10/20 22:43
対応状況: −−−
|
神 登録日: 2010/2/15 居住地: 東京都 投稿: 1570 |
Re: 管理画面のナビゲーションを表示したい twigでこんな書き方をすれば出るかと
{% extends 'default_frame.twig' %} {% set menus = ['store', 'plugin', 'plugin_list'] %}
|
h_tanaka |
投稿日時: 2016/10/21 8:15
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1649 |
Re: 管理画面のナビゲーションを表示したい redさん、
ありがとうございます。 Controllerからtwigを読み込む処理を追加しましたが、エラーになってしまいます。 ■エラーメッセージ Twig_Error_Loader in Chain.php line 63: Template "Admin/sample.twig" is not defined. ■構成 app/Plugin/CategoryContent/Controller/SampleController.php app/Plugin/CategoryContent/Resource/template/Admin/sample.twig
|
red |
投稿日時: 2016/10/21 9:26
対応状況: −−−
|
神 登録日: 2010/2/15 居住地: 東京都 投稿: 1570 |
Re: 管理画面のナビゲーションを表示したい return $app->render('CategoryContent/Resource/template/Admin/sample.twig');
これが正解かなと思います。
|
h_tanaka |
投稿日時: 2016/10/21 12:32
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1649 |
Re: 管理画面のナビゲーションを表示したい redさん、
ありがとうございます。それが正解でした! twigも実装したのですが、白紙のページが表示されるだけで管理画面のヘッダーやメニューは表示されないです・・・。
|
red |
投稿日時: 2016/10/21 14:43
対応状況: −−−
|
神 登録日: 2010/2/15 居住地: 東京都 投稿: 1570 |
Re: 管理画面のナビゲーションを表示したい んーなぜでしょう?
全体がわからないのでなんとも言えません https://github.com/EC-CUBE/Recommend-plugin これを参考になにか足りないものがないか見比べてみるといいんじゃないでしょうか
|
h_tanaka |
投稿日時: 2016/10/24 8:23
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1649 |
Re: 管理画面のナビゲーションを表示したい ありがとうございます。参考になります。
まだ原因はわかりませんが、sample.twigでextendsしているdefault_frame.twigがadminではなくdefaultのものが読み込まれているようです。 ■構成 app/Plugin/CategoryContent/Controller/SampleController.php app/Plugin/CategoryContent/Resource/template/Admin/sample.twig src/Eccube/Resource/template/admin/default_frame.twig ★こちらを読み込みたい src/Eccube/Resource/template/default/default_frame.twig ★こちらが読み込まれる |
red |
投稿日時: 2016/10/24 9:14
対応状況: −−−
|
神 登録日: 2010/2/15 居住地: 東京都 投稿: 1570 |
Re: 管理画面のナビゲーションを表示したい ServiceProviderがこんな感じになってますか?
// Routingを追加 $admin = $app['config']['admin_route']; $app->match($admin . '/log_report', '\\Plugin\\LogReport\\Controller\\LogReportController::index') ->bind('admin_log_report');
|
h_tanaka |
投稿日時: 2016/10/24 17:56
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 愛媛県 投稿: 1649 |
Re: 管理画面のナビゲーションを表示したい redさん
ありがとうございます! そうなっていなかったです! ServiceProviderを次のように修正することで管理画面のメニューが表示されるようになりました! まだよく理解できていないので、これから調べていきます。 ■修正前
■修正後
他プラグインのコードを参考にしました。次でもうまくいくようです。
|
468 |
投稿日時: 2016/11/23 3:24
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 管理画面のナビゲーションを表示したい /src/Eccube/Application.phpの191行目に以下のような記述がありますので、
アクセスされるURLの先頭が '/' . $this['config']['admin_route'] . '/' に一致する事で管理画面側のコントローラーに処理が振り分けられて管理画面のメニューが表示されるようになるのだと思います。 $this->mount('', new ControllerProvider\FrontControllerProvider()); $this->mount('/'.trim($this['config']['admin_route'], '/').'/', new ControllerProvider\AdminControllerProvider()); |
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |