定制 fendinger/kirby-roles 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

fendinger/kirby-roles

最新稳定版本:1.0.0

Composer 安装命令:

composer require fendinger/kirby-roles

包简介

A Kirby CMS Panel plugin that adds a Roles menu item for managing user roles directly from the Panel

README 文档

README

Kirby Roles

Kirby Roles

A Kirby 5 Panel plugin that adds a Roles menu item for managing user roles directly from the Panel. Create, edit, and delete roles with a visual permissions editor — no more manually editing YAML files.

Features

  • Panel area with dedicated "Roles" menu item
  • List view of all roles with icons and context menus
  • Detail view with profile card (like the user view) and permissions editor
  • CRUD — create, edit, and delete roles via dialogs
  • Permissions editor using Kirby's native checkbox fields
  • Save/Cancel using Kirby's standard k-form-controls component
  • Settings button (cog icon) with edit/delete dropdown
  • Pencil on hover for quick title editing (like pages/users)
  • Protectionadmin and nobody roles cannot be modified or deleted
  • Safety check — roles with assigned users cannot be deleted
  • Admin only — only admin users can manage roles
  • i18n — English and German translations included
  • Dark mode compatible

Installation

Composer

composer require fendinger/kirby-roles

Manual

Download and copy this repository to /site/plugins/kirby-roles.

Menu position

By default, the Roles menu item appears after the System entry. To place it above Users, add this to your site/config/config.php:

return [
    'panel' => [
        'menu' => ['site', 'languages', 'roles', 'users', 'system']
    ]
];

How it works

Roles in Kirby are defined as YAML blueprint files in site/blueprints/users/. This plugin provides a Panel UI to manage these files:

  • Creating a role generates a new site/blueprints/users/{name}.yml file
  • Editing updates the title, description, and permissions in that file
  • Deleting removes the YAML file (only if no users are assigned to the role)

The admin role is built into Kirby and always exists, even without a blueprint file. It cannot be edited or deleted through this plugin.

API routes

The plugin also registers API routes for programmatic access:

Method Pattern Description
GET /api/roles List all roles
GET /api/roles/{id} Get a single role
POST /api/roles Create a new role
PATCH /api/roles/{id} Update a role
DELETE /api/roles/{id} Delete a role

Translations

The plugin ships with English and German translations. To add another language, create a new file in translations/ and reference it in index.php:

'translations' => [
    'en' => require __DIR__ . '/translations/en.php',
    'de' => require __DIR__ . '/translations/de.php',
    'fr' => require __DIR__ . '/translations/fr.php',
],

Support

If you find this plugin useful, you can support the development:

Buy Me A Coffee

License

MIT

Author

fendinger.de

统计信息

  • 总下载量: 3
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 7
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-04-15

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固