EC-CUBE3のページは一般的にコントローラとテンプレートが対となっています。
管理画面で新規画面を作成するには、コントローラとテンプレートを作成し、URLとコントローラの紐付け(ルーティング)を指定する必要があります。
コントローラの最後では$app->render()メソッドにより、どのテンプレートファイルを使用するかを決定してブラウザへ表示します。

(例)商品登録ページ
URL: /admin/product/product/new
既存コントローラ: src/Eccube/Controller/Admin/Product/ProductController.php
既存テンプレート: src/Eccube/Controller/Admin/Product/ProductController.php または app/template/Admin/Product/product.twig

今回は/admin/new_menu/new_page.phpというURLで管理画面に新規画面を追加してみます。
URL: /admin/new_menu/new_page.php
新規コントローラ: src/Eccube/Controller/Admin/NewMenu/NewPageController.php
新規テンプレート: app/template/Admin/NewMenu/new_page.twig

1. ルーティングの指定

src/Eccube/ControllerProvider/AdminControllerProvider.php

既存のAdminControllerProviderへ次のコードを追加し、URLへアクセスがあった場合にどのコントローラを使用するか指定します。

2. コントローラの作成

src/Eccube/Controller/Admin/NewMenu/NewPageController.php
他のコントローラを参考に、コントローラを新規作成します。
テンプレートは3で作成する新規テンプレートをrenderするようにします。

3. テンプレートの作成

app/template/Admin/NewMenu/new_page.twig
他のテンプレートを参考に、コントローラを新規作成します。2で作成したコントローラから渡された変数が使用可能です。

4. メニューへ表示

src/Eccube/Resource/config/nav.yml.dist
nav.yml.distを編集して管理画面のサイドバーへ新規メニューを追加します。

以上の手順を踏めば管理画面で新規ページを追加しメニューへ表示することが可能です。
その後、ページ特有のロジックを組むのがまた大変ではありますが、挙動が似た既存のページを参考にプログラム作成してみてください。

関連するカスタマイズ

Method not allowed / No route found for …エラー... EC-CUBE3でたまに確認されるエラー、Method not allowed エラーについて説明します。Whoops, looks like something went wrong.と怒られてしまった場合は、このエラーのことを思い出して見てください。 EC-CUBEにアクセスする場合、...
Twig内で文字列の一部分を切り出す方法 Slice使用... twigテンプレート内で文字列の一部を切り出したい時があります。 そんな時はsliceフィルタを使用してtwig内だけで切り出しを実行することが可能です。 2文字目以降を切り出す(1文字目を削除) sliceフィルタの第1引数は開始位置です。 sliceフィルタにはシンタックスシ...
基本税率を切り捨て、切り上げ、四捨五入に変更... 開発メンバー全員のルールを揃えておくことが重要です。 dtb_tax_ruleテーブルのcalc_ruleの設定値は次の表の通りです。 calc_rule 方式 1 四捨五入 2 切り捨て 3 切り上げ これをマイグレーションで...
新しくテーブルを作ってエンティティと関連づける方法... 今回は非常に要望が多かった新しいテーブルを作ってエンティティとしてデータ取得をできるようにする方法をご紹介します。 この方法は3系のもので、まもなくリリースされるEC-CUBE4系では利用できませんのでご注意ください。 データベースの作成 ドクトリン定義ファイルの作成(dcm....