Grav - Чертежи

Blueprintsявляются метаданными информации о ресурсе (источнике информации). Он служит двум целям -

  • Во-первых, это само удостоверение ресурса.
  • Во-вторых, это касается форм.

Эта полная информация сохраняется в файле 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: [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

Следующие несколько свойств являются необязательными, а некоторые используются для указания вашей личности и ресурса.

Sr. No. Свойства и описание
1

name*

Назовите название ресурса.

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 формами, если вы хотите, чтобы темы или плагины имели параметры, настраиваемые непосредственно из интерфейса администратора. Часть этого ресурса можно настроить черезAdmin Plugin, который определяется Forms метаданные.

Ниже приведен пример файла Archives 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

Это настройки плагина по умолчанию. Чтобы настроить их без использования плагина администратора, пользователь должен скопировать этот файл в/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 .

Toggle

enabled:
   type: toggle
   label: Plugin status
   highlight: 1
   default: 1
   options:
      1: Enabled
      0: Disabled
   validate:
      type: bool

Select

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"

Text

limit:
   type: text
   size: x-small
   label: Count Limit
   validate:
      type: number
      min: 1

Корневой элемент Enabled, date_display_format и limit являются параметрами. Поле, присутствующее в этом корневом элементе, определяет тип, размер, метку, значение по умолчанию и параметры. В зависимости от типа поля другие поля могут изменяться; например, для поля выбора требуется список опций.

Order direction

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 , проверка формы установлена ​​на строгую. Если проверка установлена ​​как строгая, то для всех параметров вам нужно добавить форму чертежей, иначе при сохранении появится сообщение об ошибке. Form.validation может быть установлен как свободно , когда вы хотите , чтобы настроить только два поля в интерфейсе администратора.

В следующей таблице дается краткое описание полей, относящихся к вышеуказанным элементам формы.

Sr. No. Поле и описание
1

Type

Указывает тип поля.

2

Size

Задает размер поля.

3

Label

Задает подпись к полю.

4

Validate

Он проверяет тип поля и минимальную длину, введенную в поле.

5

Default

Устанавливает поля по умолчанию.

6

Options

Задает список опций.

7

Classes

Задает класс поля.

Поля формы доступны в админке

Доступно множество встроенных полей формы, которые используются плагинами и темами или могут создавать свои собственные поля формы. В следующей таблице перечислены доступные поля формы -

Общие поля формы

Sr. No. Поле и описание
1

Checkbox

Отображает один флажок.

2

Checkboxes

Отображает список флажков.

3

Date

Содержит поле даты.

4

Datetime

Содержит поле даты и времени.

5

Email

Содержит поле адреса электронной почты с проверкой.

6

Password

Содержит поле пароля, которое отображается в формате точки.

7

Hidden

Содержит скрытое поле ввода.

8

Radio

Позволяет выбрать только один вариант из списка.

9

Select

Это поле содержит несколько параметров.

10

Spacer

Добавляет в форму заголовок, текст или горизонтальную линию.

11

Text

Содержит обычное текстовое поле.

12

Textarea

Содержит многострочный текстовый ввод.

Специальные поля формы

Sr. No. Поле и описание
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

Он представляет собой эффект переключения, определяющий включение или отключение типа ввода.