Grav-blueprints
Grav-設計図
- ブループリント*は、リソース(情報のソース)に関するメタデータ情報です。 それは2つの目的を果たします-
- 最初は、リソースID自体です。 *2番目はフォームに関するものです。
この完全な情報は、各プラグインまたはテーマにある_blueprints.yaml_ファイルに保存されます。
リソースアイデンティティ
_blueprints.yaml_ファイルでは、テーマとプラグインごとにファイルIDが定義されています。 ブループリントが完全にフォーマットおよびコンパイルされない限り、リソースはGravリポジトリに追加されません。
ブループリントの例
name: plugin name
version: 0.6.0
description: Adds an advanced plugin to manage your site
icon: empire
author:
name: Team Grav
email: [email protected]
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
次のいくつかのプロパティはオプションであり、一部はIDとリソースを提供するために使用されます。
Sr.No. | Properties & Description |
---|---|
1 |
リソースの名前に言及してください。 |
2 |
version* リソースのバージョンを指定します。 |
3 |
description* リソースに関する簡単な説明を提供します。 200文字を超えることはできません。 |
4 |
icon* 新しいテーマまたはプラグインを開発するためのアイコンライブラリを指定します。 |
5 |
author.name* 開発者の名前を指定します。 |
6 |
author.email (optional) 開発者のメールアドレスを指定します。 |
7 |
author.url (optional) 開発者のURLホームページを指定します。 |
8 |
homepage (optional) リソースのホームページに割り当てられたURLを指定します。 |
9 |
docs (optional) リソース用に作成したドキュメントリンクを指定します。 |
10 |
demo (optional) デモリソースのリンクを指定します。 |
11 |
guide (optional) リソースのガイドまたはチュートリアルの方法のリンクを指定します。 |
12 |
keywords (optional) リソースに関連するキーワードのリストを指定します。 |
13 |
bugs (optional) 問題またはバグを報告できるURLを指定します。 |
14 |
license (optional) リソースライセンス、つまり MIT、GPLなど |
15 |
dependencies (optional) プラグインまたはテーマに必要な依存関係の名前を指定します。 |
以下は、ログインプラグインブループリントの例です-
name: Login
version: 0.3.3
description: Enables user authentication and login screen.
icon: sign-in
author:
name: Team Grav
email: [email protected]
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_ファイルにフォームを入力できます。 このリソースの一部は、 Forms メタデータによって定義される Admin Plugin を介して構成できます。
以下は、アーカイブプラグイン_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_ファイルを正しく提供できます。ユーザーから管理インターフェースの設定を変更することを選択できます。
変更を保存すると、自動的に* _ <your_folder_name>/user/config/plugins/archives.yaml_*に書き込まれます。
アーカイブプラグインの_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: [email protected]
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
ルート要素_Enabled、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に設定されています。 検証が厳格に設定されている場合、すべてのオプションに対してブループリントフォームを追加する必要があります。追加しないと、保存中にエラーが表示されます。 2つのフィールドのみを管理インターフェイスにカスタマイズする場合は、_form.validation_を緩やかに設定できます。
次の表に、上記のフォーム要素に関連するフィールドの簡単な説明を示します。
Sr.No. | Field & Description |
---|---|
1 |
フィールドタイプを示します。 |
2 |
Size フィールドのサイズを指定します。 |
3 |
Label フィールドのラベルを指定します。 |
4 |
Validate フィールドのタイプとフィールドに入力された最小長を検証します。 |
5 |
Default デフォルトのフィールドを設定します。 |
6 |
Options オプションのリストを指定します。 |
7 |
Classes フィールドのクラスを指定します。 |
管理者で利用可能なフォームフィールド
プラグインやテーマで使用される、または独自のフォームフィールドを作成できる、組み込みのフォームフィールドが多数あります。 次の表は、利用可能なフォームフィールドのリストです-
共通のフォームフィールド
Sr.No. | Field & Description |
---|---|
1 |
Checkbox 単一のチェックボックスを表示します。 |
2 |
Checkboxes チェックボックスのリストを表示します。 |
3 |
Date 日付フィールドが含まれます。 |
4 |
Datetime 日付と時刻のフィールドが含まれます。 |
5 |
検証付きの電子メールアドレスフィールドが含まれています。 |
6 |
Password ドット形式で表示されるパスワードフィールドが含まれています。 |
7 |
Hidden 非表示の入力フィールドが含まれます。 |
8 |
Radio リストから1つのオプションのみを選択できます。 |
9 |
Select このフィールドにはいくつかのオプションが含まれます。 |
10 |
Spacer タイトル、テキスト、または水平線をフォームに追加します。 |
11 |
Text 通常のテキストフィールドが含まれます。 |
12 |
Textarea 複数行のテキスト入力が含まれます。 |
特別なフォームフィールド
Sr.No. | Field & Description |
---|---|
1 |
Array 複数のキー値行を追加します。 |
2 |
Ignore 未使用のフィールドは削除されます。 |
3 |
Columns フォームを複数の列に分割します。 |
4 |
Column 単一の列を表示します。 |
5 |
Dateformat 日付と時刻の形式を設定します。 |
6 |
Display 入力値なしでテキスト値を表示します。 |
7 |
Frontmatter ページは生の形式で表示されます。 |
8 |
List キーなしでアイテムのリストを表示します。 |
9 |
Markdown マークダウンエディターを表示します。 |
10 |
Pages ページのリストを表示します。 |
11 |
Section 設定ページはセクションに分割され、各セクションにはタイトルがあります。 |
12 |
Selectize ボックスを選択するために使用されます。 |
13 |
Tabs 設定はタブのリストに分かれています。 |
14 |
Tab タブフィールドは、タブを提供するために使用します。 |
15 |
Taxonomy 分類法を選択するために事前構成された選択です。 |
16 |
Toggle 入力のオンまたはオフのタイプを指定するトグル効果を表します。 |