c8robin / cakephp-rootui
CakePHP应用程序中使用RootUI的插件
v0.0.2-alpha
2021-09-23 18:30 UTC
Requires
- php: >=7.2
- cakephp/cakephp: ~4.2.0
Requires (Dev)
- phpunit/phpunit: ^8.5 || ^9.3
This package is auto-updated.
Last update: 2024-09-12 14:50:14 UTC
README
CakePHP应用程序的Root UI主题
Root UI是一个极简的响应式主题,更多信息请参阅: https://themeforest.net/item/rootui-react-admin-dashboard/24852340
此插件将允许您将此主题与您的CakePHP应用程序一起使用。
注意:此插件 不包含 所需的Root UI文件!
需要重构,因为它包含一个Helper和一个Cell,这些不应该包含在主题中。应该拆分为单独的插件。
要求
- CakePHP
- RootUI主题:主题将提供插件依赖的必要的css、js、img和font文件
安装
您可以使用 composer 将此插件安装到您的CakePHP应用程序中。
安装composer包的推荐方式是
composer require c8robin/cakephp-rootui
使用RootUi插件
加载插件
bin\cake plugin load RootUi
将RootUi设置为您的主题。在您的AppController::beforeRender()方法中执行此操作
public function beforeRender(EventInterface $event)
{
parent::beforeRender($event);
$this->viewBuilder()->setTheme('RootUi');
}
请确保使用主题的模板来渲染表单控件和分页元素。如果需要,还可以添加自己的CSS和js。在您的AppView::initialize()方法中放入以下内容
public function initialize(): void
{
$this->loadHelper('Paginator', ['templates' => 'RootUi.paginator-templates']);
$this->loadHelper('Form', ['templates' => 'RootUi.ctform']);
$this->loadHelper('RootUi.Nav');
$this->append('css');
echo $this->Html->css('myapp.css');
$this->end();
}
您可以通过创建插件提供的Nav Helper的菜单项,在左侧菜单中插入导航链接。
例如,仍然在AppView::initialize()
$this->start('nav');
echo $this->Nav->navLabel('Get started');
echo $this->Nav->navItem('Item 1', $this->Url->build(['controller' => 'Controller1', 'action' => 'index']), 'plus', $this->getRequest()->getParam('controller') == 'Controller1');
echo $this->Nav->navItem('Item 2', $this->Url->build(['controller' => 'Controller2', 'action' => 'dashboard']), 'box', $this->getRequest()->getParam('controller') == 'Controller2');
$this->end();
请注意,您可以通过对当前控制器进行检查来使导航项变为当前项或不是当前项。