Grav - Plans

Blueprintssont des informations de métadonnées sur la ressource (source d'information). Il sert deux objectifs -

  • Le premier est l'identité de la ressource elle-même.
  • La deuxième concerne les formes.

Ces informations complètes sont enregistrées dans le fichier blueprints.yaml présent dans chaque plugin ou thème.

Identité de la ressource

Dans blueprints.yaml , l'identité du fichier est définie pour chaque thème et plug-in. La ressource ne sera pas ajoutée dans le référentiel Grav tant que les plans ne seront pas formatés et compilés parfaitement.

Exemple de plans

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

Les quelques propriétés suivantes sont facultatives et certaines sont utilisées pour donner votre identité et vos ressources.

N ° Sr. Propriétés et description
1

name*

Mentionnez le nom de la ressource.

2

version*

Spécifie la version de la ressource.

3

description*

Donne une brève description de la ressource. Il ne doit pas dépasser plus de 200 caractères.

4

icon*

Spécifie une bibliothèque d'icônes pour développer un nouveau thème ou plugin.

5

author.name*

Spécifie le nom du développeur.

6

author.email (optional)

Spécifie l'adresse e-mail du développeur.

sept

author.url (optional)

Spécifie la page d'accueil URL du développeur.

8

homepage (optional)

Spécifie l'URL allouée pour la page d'accueil de votre ressource.

9

docs (optional)

Spécifie le lien de documentation que vous avez écrit pour votre ressource.

dix

demo (optional)

Spécifie le lien de la ressource de démonstration.

11

guide (optional)

Spécifie le lien du guide ou des didacticiels pour votre ressource.

12

keywords (optional)

Spécifie la liste des mots-clés liés à votre ressource.

13

bugs (optional)

Spécifie l'URL où les problèmes ou les bogues peuvent être signalés.

14

license (optional)

Spécifie votre licence de ressource, c'est-à-dire MIT, GPL, etc.

15

dependencies (optional)

Spécifie le nom des dépendances requises pour les plugins ou les thèmes.

Ce qui suit est un exemple du plan du plugin de connexion -

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

Formes

Vous pouvez remplir le fichier blueprints.yaml avec des formulaires si vous souhaitez que les thèmes ou les plugins aient des options directement configurables depuis l'interface d'administration. La partie de cette ressource peut être configurée via leAdmin Plugin, qui est défini par le Forms métadonnées.

Voici un exemple du fichier archives.yaml du plugin Archives .

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

Ce sont les paramètres par défaut du plugin. Pour les configurer sans utiliser le plugin Admin, l'utilisateur doit copier ce fichier dans le/user/config/plugins/archives.yamldossier et apportez les modifications. Vous pouvez fournir correctement le fichier archives.yaml ; vous pouvez choisir de modifier les paramètres dans l'interface d'administration des utilisateurs.

Après avoir enregistré les modifications, il sera automatiquement écrit dans <your_folder_name>/user/config/plugins/archives.yaml.

Le fichier blueprint.yaml du plugin Archives contient la structure comme indiqué ci-dessous -

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

Voici les éléments de formulaire présents dans 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

L'élément racine Enabled, date_display_format et limit sont les options. Le champ présent dans cet élément racine détermine le type, la taille, le libellé, la valeur par défaut et les options. Selon le type de champ, les autres champs peuvent changer; par exemple, le champ de sélection requiert une liste d'options.

Order direction

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

Ce champ comprend les options imbriquées. Il existe de nombreux types de champs qui peuvent être utilisés dans les plugins / admin / themes / Grav / templates / forms / fields . Comme nous pouvons le voir dans le fichier archive.yaml , la validation du formulaire est définie sur strict. Lorsque la validation est définie comme stricte, pour toutes les options, vous devez ajouter le formulaire des plans, sinon une erreur apparaîtra lors de l'enregistrement. Le form.validation peut être défini comme lâche lorsque vous souhaitez personnaliser uniquement les deux champs de l'interface d'administration.

Le tableau suivant donne une brève explication des champs relatifs aux éléments de formulaire ci-dessus.

N ° Sr. Champ et description
1

Type

Indique le type de champ.

2

Size

Spécifie la taille du champ.

3

Label

Spécifie l'étiquette du champ.

4

Validate

Il valide le type du champ et la longueur minimale saisie dans le champ.

5

Default

Définit les champs par défaut.

6

Options

Spécifie la liste des options.

sept

Classes

Spécifie la classe du champ.

Champs de formulaire disponibles dans l'admin

Il existe de nombreux champs de formulaire intégrés disponibles qui sont utilisés par les plugins et les thèmes ou peuvent créer leurs propres champs de formulaire. Le tableau suivant répertorie les champs de formulaire disponibles -

Champs de formulaire communs

N ° Sr. Champ et description
1

Checkbox

Affiche une seule case à cocher.

2

Checkboxes

Affiche une liste de cases à cocher.

3

Date

Contient un champ de date.

4

Datetime

Contient le champ de date et d'heure.

5

Email

Contient un champ d'adresse e-mail avec validation.

6

Password

Contient un champ de mot de passe qui s'affiche au format point.

sept

Hidden

Contient un champ de saisie masqué.

8

Radio

Permet de sélectionner une seule option dans la liste.

9

Select

Ce champ contient quelques options.

dix

Spacer

Ajoute un titre, du texte ou une ligne horizontale au formulaire.

11

Text

Contient un champ de texte normal.

12

Textarea

Contient des entrées de texte multilignes.

Champs de formulaire spéciaux

N ° Sr. Champ et description
1

Array

Ajoute plusieurs lignes de valeurs de clé.

2

Ignore

Les champs inutilisés sont supprimés.

3

Columns

Divise le formulaire en plusieurs colonnes.

4

Column

Affiche une seule colonne.

5

Dateformat

Définit le format de la date et de l'heure.

6

Display

Affiche la valeur du texte sans aucune valeur d'entrée.

sept

Frontmatter

La page est affichée au format brut.

8

List

Affiche une liste d'éléments sans clé.

9

Markdown

Affiche l'éditeur de démarques.

dix

Pages

Affiche la liste des pages.

11

Section

La page de configuration est divisée en sections et chaque section a un titre.

12

Selectize

Il est utilisé pour sélectionner des cases.

13

Tabs

Les paramètres sont divisés en liste d'onglets.

14

Tab

Le champ onglets sert à fournir un onglet.

15

Taxonomy

C'est une sélection préconfigurée pour sélectionner la taxonomie.

16

Toggle

Il représente l'effet de bascule qui spécifie le type d'entrée activé ou désactivé.