I think it has been discussed before but I think there is a great need for a Panel API.
Possible features
- Add stuff to the top menu, where the panel search is.
- Add stuff to the sidebar.
- Add stuff to the whole main part of the page.
Callback
Let’s say you want to add a button in the sidebar that add a content page (just an example). Then you might need a link or a form submit, or ajax.
Where should it go? It need to have som callback. Send data to an url where you can have access to $site, $pages and $page.
The return of a callback probably need to be some kind of message, if it failed or was successful.
CSS and JS
Add support to add own CSS and JS.
If you have ideas or more information about this, write.
FYI: As regards custom css, you can already do that, in you config.php add
c::set('panel.stylesheet', 'assets/css/your_custom_panel.css'); //or your path to the css file
I already had the same though when I added a field for meta data in my blueprint. In WordPress, I always work with the Advanced Custom Fields plugin, which does basically the same as a blueprint by defining custom fields. In ACF, you create field groups and setup rules to attach them to specific post types/pages/templates etc. For every field group, you can chose whether it displays in the main column or in the sidebar on the edit screen. I always use the main column below the post editor for content and the sidebar for meta-data fields. I think, it would be a very handy feature, if the separation would be possible with kirby, too.