📅  最后修改于: 2020-10-25 05:29:58             🧑  作者: Mango
蓝图是有关资源(信息源)的元数据信息。它有两个目的-
此完整信息将保存在每个插件或主题中存在的blueprints.yaml文件中。
在blueprints.yaml中,为每个主题和插件定义了文件标识。除非蓝图没有正确格式化和编译,否则不会在Grav存储库中添加资源。
name: plugin name
version: 0.6.0
description: Adds an advanced plugin to manage your site
icon: empire
author:
name: Team Grav
email: devs@getGrav.org
url: http://getGrav.org
homepage: https://github.com/getGrav/Grav-plugin-assets
keywords: assets, plugin, manager, panel
bugs: https://github.com/getGrav/Grav-plugin-assets/issues
readme: https://github.com/getGrav/Grav-plugin-assets/blob/develop/README.md
license: MIT
dependencies:
- form
- email
- login
form:
validation: loose
fields:
Basics:
type: section
title: Basics
underline: false
enabled:
type: hidden
label: Plugin status
highlight: 1
default: 0
options:
1: Enabled
0: Disabled
validate:
type: bool
以下几个属性是可选的,一些用于提供您的身份和资源。
Sr.No. | Properties & Description |
---|---|
1 |
name* Mention the name of the resource. |
2 |
version* Specifies the version of the resource. |
3 |
description* Gives brief description about the resource. It should not exceed more than 200 characters. |
4 |
icon* Specifies an icons library for developing a new theme or plugin. |
5 |
author.name* Specifies the name of the developer. |
6 |
author.email (optional) Specifies the email address of the developer. |
7 |
author.url (optional) Specifies the URL homepage of developer. |
8 |
homepage (optional) Specifies the allocated Url for homepage for your resource. |
9 |
docs (optional) Specifies the documentation link which you have written for your resource. |
10 |
demo (optional) Specifies the link of demo resource. |
11 |
guide (optional) Specifies the link of how to guide or tutorials for your resource. |
12 |
keywords (optional) Specifies the list of keywords that are related to your resource. |
13 |
bugs (optional) Specifies the Url where issues or bugs can be reported. |
14 |
license (optional) Specifies your resource license i.e. MIT, GPL etc. |
15 |
dependencies (optional) Specifies the name of the dependencies that are required for plugins or themes. |
以下是登录插件蓝图的示例-
name: Login
version: 0.3.3
description: Enables user authentication and login screen.
icon: sign-in
author:
name: Team Grav
email: devs@getGrav.org
url: http://getGrav.org
keywords: admin, plugin, login
homepage: https://github.com/getGrav/Grav-plugin-login
keywords: login, authentication, admin, security
bugs: https://github.com/Getgrav/Grav-plugin-login/issues
license: MIT
如果希望主题或插件具有可直接从管理界面配置的选项,则可以用表格填充blueprints.yaml文件。可以通过Admin插件(由Forms元数据定义)来配置此资源的一部分。
以下是“存档插件” archives.yaml文件的示例。
enabled: true
built_in_css: true
date_display_format: 'F Y'
show_count: true
limit: 12
order:
by: date
dir: desc
filter_combinator: and
filters:
category: blog
这些是插件的默认设置。要在不使用Admin插件的情况下配置它们,用户必须将该文件复制到/user/config/plugins/archives.yaml文件夹中并进行更改。您可以正确提供archives.yaml文件。您可以选择从用户更改管理界面中的设置。
保存更改后,它将自动写入
Archives插件的blueprint.yaml文件包含如下所示的结构-
name: Archives
version: 1.3.0
description: The **Archives** plugin creates links for pages grouped by month/year
icon: university
author:
name: Team Grav
email: devs@getGrav.org
url: http://getGrav.org
homepage: https://github.com/getGrav/Grav-plugin-archives
demo: http://demo.getGrav.org/blog-skeleton
keywords: archives, plugin, blog, month, year, date, navigation, history
bugs: https://github.com/getGrav/Grav-plugin-archives/issues
license: MIT
form:
validation: strict
fields:
enabled:
type: toggle
label: Plugin status
highlight: 1
default: 1
options:
1: Enabled
0: Disabled
validate:
type: bool
date_display_format:
type: select
size: medium
classes: fancy
label: Date Format
default: 'jS M Y'
options:
'F jS Y': "January 1st 2014"
'l jS of F': "Monday 1st of January"
'D, m M Y': "Mon, 01 Jan 2014"
'd-m-y': "01-01-14"
'jS M Y': "10th Feb 2014"
limit:
type: text
size: x-small
label: Count Limit
validate:
type: number
min: 1
order.dir:
type: toggle
label: Order Direction
highlight: asc
default: desc
options:
asc: Ascending
desc: Descending
以下是archive.yaml中存在的表单元素。
切换
enabled:
type: toggle
label: Plugin status
highlight: 1
default: 1
options:
1: Enabled
0: Disabled
validate:
type: bool
选择
date_display_format:
type: select
size: medium
classes: fancy
label: Date Format
default: 'jS M Y'
options:
'F jS Y': "January 1st 2014"
'l jS of F': "Monday 1st of January"
'D, m M Y': "Mon, 01 Jan 2014"
'd-m-y': "01-01-14"
'jS M Y': "10th Feb 2014"
文本
limit:
type: text
size: x-small
label: Count Limit
validate:
type: number
min: 1
选项为根元素“已启用”,“ date_display_format”和“ limit ”。此根元素中存在的字段确定类型,大小,标签,默认值和选项。根据字段类型,其他字段可以更改;例如,选择字段需要选项列表。
订购方向
order.dir:
type: toggle
label: Order Direction
highlight: asc
default: desc
options:
asc: Ascending
desc: Descending
该字段由嵌套选项组成。在plugins / admin / themes / Grav / templates / forms / fields中可以使用许多字段类型。正如我们在archive.yaml文件中看到的那样,表单验证已设置为strict。如果将验证设置为严格,则必须为所有选项添加蓝图表单,否则在保存时会弹出错误。当您只想将两个字段自定义为管理界面时,可以将form.validation设置为松散。
下表简要说明了与上述表单元素有关的字段。
Sr.No. | Field & Description |
---|---|
1 |
Type Indicates the field type. |
2 |
Size Specifies the size of the field. |
3 |
Label Specifies label to the field. |
4 |
Validate It validates the type of the field and the minimum length entered in the field. |
5 |
Default Sets default fields. |
6 |
Options Specifies the list of options. |
7 |
Classes Specifies the class for the field. |
有许多内置的表单字段可供插件和主题使用,也可以创建自己的表单字段。下表列出了可用的表单字段-
Sr.No. | Field & Description |
---|---|
1 |
Checkbox Displays single checkbox. |
2 |
Checkboxes Displays a list of checkboxes. |
3 |
Date Contains date field. |
4 |
Datetime Contains date and time field. |
5 |
Contains an email address field with validation. |
6 |
Password Contains a password field which displays in dot format. |
7 |
Hidden Contains hidden input field. |
8 |
Radio Allows selecting only one option from the list. |
9 |
Select This field contains few options. |
10 |
Spacer Adds title, text or horizontal line to the form. |
11 |
Text Contains normal text field. |
12 |
Textarea Contains multiline text inputs. |
Sr.No. | Field & Description |
---|---|
1 |
Array Adds multiple key value rows. |
2 |
Ignore Unused fields are removed. |
3 |
Columns Divides the form into multiple columns. |
4 |
Column Displays a single column. |
5 |
Dateformat Sets the date and time format. |
6 |
Display Displays text value without any input value. |
7 |
Frontmatter The page is displayed in raw format. |
8 |
List Displays a list of items without a key. |
9 |
Markdown Displays the markdown editor. |
10 |
Pages Displays the list of pages. |
11 |
Section The setting page is divided into sections and each section has a title. |
12 |
Selectize It is used to select boxes. |
13 |
Tabs Settings are divided into list of tabs. |
14 |
Tab The tabs field uses to provide a tab. |
15 |
Taxonomy It is a select preconfigured to select the taxonomy. |
16 |
Toggle It represents the toggle effect that specifies on or off type of input. |