Grav - Plantas

Blueprintssão informações de metadados sobre o recurso (fonte de informação). Ele serve a dois propósitos -

  • O primeiro é a própria identidade do recurso.
  • O segundo é em relação aos formulários.

Essas informações completas são salvas no arquivo blueprints.yaml presente em cada plugin ou tema.

Identidade do Recurso

No arquivo blueprints.yaml, a identidade é definida para cada tema e plug-in. O recurso não será adicionado ao repositório Grav até que os blueprints não sejam formatados e compilados perfeitamente.

Exemplo de projetos

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

As propriedades a seguir são opcionais e algumas são usadas para fornecer sua identidade e recursos.

Sr. Não. Propriedades e descrição
1

name*

Mencione o nome do recurso.

2

version*

Especifica a versão do recurso.

3

description*

Fornece uma breve descrição sobre o recurso. Não deve exceder mais de 200 caracteres.

4

icon*

Especifica uma biblioteca de ícones para desenvolver um novo tema ou plugin.

5

author.name*

Especifica o nome do desenvolvedor.

6

author.email (optional)

Especifica o endereço de e-mail do desenvolvedor.

7

author.url (optional)

Especifica a página inicial do URL do desenvolvedor.

8

homepage (optional)

Especifica o Url alocado para a página inicial do seu recurso.

9

docs (optional)

Especifica o link de documentação que você escreveu para seu recurso.

10

demo (optional)

Especifica o link do recurso de demonstração.

11

guide (optional)

Especifica o link de guia ou tutoriais para seu recurso.

12

keywords (optional)

Especifica a lista de palavras-chave relacionadas ao seu recurso.

13

bugs (optional)

Especifica o Url onde os problemas ou bugs podem ser relatados.

14

license (optional)

Especifica sua licença de recurso, ou seja, MIT, GPL etc.

15

dependencies (optional)

Especifica o nome das dependências necessárias para plug-ins ou temas.

A seguir está um exemplo do plano de plug-in de login -

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

Formulários

Você pode preencher o arquivo blueprints.yaml com formulários se quiser que os temas ou plug-ins tenham opções diretamente configuráveis ​​na interface de administração. A parte deste recurso pode ser configurada através doAdmin Plugin, que é definido pelo Forms metadados.

A seguir está um exemplo do arquivo 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

Estas são as configurações padrão do plugin. Para configurá-los sem o uso do plugin Admin, o usuário deve copiar este arquivo no/user/config/plugins/archives.yamlpasta e faça as alterações. Você pode fornecer o arquivo archives.yaml corretamente; você pode escolher alterar as configurações na interface de administração dos usuários.

Depois de salvar as alterações, ele será gravado automaticamente no <your_folder_name>/user/config/plugins/archives.yaml.

O arquivo blueprint.yaml do Plugin de Arquivos contém a estrutura mostrada abaixo -

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

A seguir estão os elementos do formulário presentes no 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

O elemento raiz Enabled, date_display_format e limit são as opções. O campo presente neste elemento raiz determina o tipo, tamanho, rótulo, padrão e opções. Dependendo do tipo de campo, os outros campos podem mudar; por exemplo, o campo de seleção requer uma lista de opções.

Order direction

order.dir:
   type: toggle
   label: Order Direction
   highlight: asc
   default: desc
   options:
      asc: Ascending
      desc: Descending

Este campo consiste nas opções aninhadas. Existem muitos tipos de campos que podem ser usados ​​em plugins / admin / themes / Grav / templates / forms / fields . Como podemos ver no arquivo archive.yaml , a validação do formulário é definida como estrita. Quando a validação é definida como estrita, para todas as opções você tem que adicionar o formulário de blueprints, caso contrário, aparecerá um erro ao salvar. O form.validation pode ser definido como flexível quando você deseja personalizar apenas os dois campos para a interface administrativa.

A tabela a seguir fornece uma breve explicação dos campos relacionados aos elementos de formulário acima.

Sr. Não. Campo e Descrição
1

Type

Indica o tipo de campo.

2

Size

Especifica o tamanho do campo.

3

Label

Especifica o rótulo do campo.

4

Validate

Ele valida o tipo do campo e o comprimento mínimo inserido no campo.

5

Default

Define os campos padrão.

6

Options

Especifica a lista de opções.

7

Classes

Especifica a classe do campo.

Campos do formulário disponíveis no admin

Existem muitos campos de formulário embutidos disponíveis que são usados ​​por plug-ins e temas ou podem criar seus próprios campos de formulário. A tabela a seguir lista os campos de formulário disponíveis -

Campos de formulário comuns

Sr. Não. Campo e Descrição
1

Checkbox

Exibe uma única caixa de seleção.

2

Checkboxes

Exibe uma lista de caixas de seleção.

3

Date

Contém campo de data.

4

Datetime

Contém campo de data e hora.

5

Email

Contém um campo de endereço de e-mail com validação.

6

Password

Contém um campo de senha que é exibido em formato de ponto.

7

Hidden

Contém campo de entrada oculto.

8

Radio

Permite selecionar apenas uma opção da lista.

9

Select

Este campo contém poucas opções.

10

Spacer

Adiciona título, texto ou linha horizontal ao formulário.

11

Text

Contém campo de texto normal.

12

Textarea

Contém entradas de texto de várias linhas.

Campos especiais do formulário

Sr. Não. Campo e Descrição
1

Array

Adiciona várias linhas de valores-chave.

2

Ignore

Os campos não utilizados são removidos.

3

Columns

Divide o formulário em várias colunas.

4

Column

Exibe uma única coluna.

5

Dateformat

Define o formato de data e hora.

6

Display

Exibe o valor do texto sem nenhum valor de entrada.

7

Frontmatter

A página é exibida em formato bruto.

8

List

Exibe uma lista de itens sem chave.

9

Markdown

Exibe o editor de redução.

10

Pages

Exibe a lista de páginas.

11

Section

A página de configuração é dividida em seções e cada seção tem um título.

12

Selectize

É usado para selecionar caixas.

13

Tabs

As configurações são divididas em uma lista de guias.

14

Tab

O campo de guias é usado para fornecer uma guia.

15

Taxonomy

É um select pré-configurado para selecionar a taxonomia.

16

Toggle

Ele representa o efeito de alternância que especifica o tipo de entrada ativado ou desativado.