我的管理面板设置方式好吗?

So basically, this is what I have.

But is this a good practice? I started splitting up my admin.php file due to it growing in size.

However, I have a slight concern over how many files I could potentially end up with, and also problems to work with in case something may need to be updated over all the files.

I had similar thoughts developing my own CMS engine. Eventually I end up with basicaly same solution as you did, but with Smarty, for logic-presentation separation.

But now after some time I have different and much better solution. Make use of Command Pattern. You will need to separate your code into classes not in files like you did. You must establish Command Interface which all of your classes will implement. This way your admin page will act as Front Controler (another design pattern).

Responsibilty of Front Controler is to gather all input from your page, that is in your case $_GET["action"] , according to this actions you will have to instantiate Command objects and after this switch statement you will call $command->execute(); that will execute code contained in your Command classes.

For your examle you will have : EditPageCommand, DeletePageCommand, NewPageCommand, etc.

Avoid code separation in files. Try to use classes for everything and learn patterns. ;)

Splitting on big file into a few smaller, more modular ones is always a good idea IMO.

However, looking at your code I would use a HTML templating engine in order to not mix up logic and presentation. Have a look at smarty.

use classes in php, try to split your project into logical modules. Then you need not to make manual updates over all the files.