c8robin/cakephp-rootui

CakePHP应用程序中使用RootUI的插件

安装: 5

依赖: 0

建议者: 0

安全: 0

星星: 0

观察者: 1

分支: 0

开放问题: 0

类型:cakephp-plugin

v0.0.2-alpha 2021-09-23 18:30 UTC

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();

请注意,您可以通过对当前控制器进行检查来使导航项变为当前项或不是当前项。