Grav - plany

Blueprintsto metadane dotyczące zasobu (źródła informacji). Służy dwóm celom -

  • Pierwsza to sama tożsamość zasobu.
  • Drugi dotyczy formularzy.

Te pełne informacje są zapisywane w pliku blueprints.yaml obecnym w każdej wtyczce lub motywie.

Tożsamość zasobu

W blueprints.yaml tożsamość pliku jest zdefiniowana dla każdego motywu i wtyczki. Zasoby nie zostaną dodane do repozytorium Gravesa, dopóki plany nie zostaną sformatowane i skompilowane idealnie.

Przykład schematów

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

Poniższych kilka właściwości jest opcjonalnych, a niektóre służą do nadania tożsamości i zasobu.

Sr.No. Właściwości i opis
1

name*

Podaj nazwę zasobu.

2

version*

Określa wersję zasobu.

3

description*

Zawiera krótki opis zasobu. Nie powinien przekraczać 200 znaków.

4

icon*

Określa bibliotekę ikon do tworzenia nowego motywu lub wtyczki.

5

author.name*

Określa nazwę dewelopera.

6

author.email (optional)

Określa adres e-mail programisty.

7

author.url (optional)

Określa adres URL strony głównej programisty.

8

homepage (optional)

Określa przydzielony adres URL strony głównej zasobu.

9

docs (optional)

Określa łącze do dokumentacji, które napisałeś dla swojego zasobu.

10

demo (optional)

Określa łącze do zasobu demonstracyjnego.

11

guide (optional)

Określa łącze do przewodnika lub samouczków dotyczących zasobu.

12

keywords (optional)

Określa listę słów kluczowych powiązanych z zasobem.

13

bugs (optional)

Określa adres URL, pod którym można zgłaszać problemy lub błędy.

14

license (optional)

Określa licencję na zasoby, np. MIT, GPL itp.

15

dependencies (optional)

Określa nazwę zależności, które są wymagane dla wtyczek lub kompozycji.

Poniżej znajduje się przykład planu wtyczki logowania -

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

Formularze

Możesz wypełnić plik blueprints.yaml formularzami, jeśli chcesz, aby motywy lub wtyczki miały opcje konfigurowalne bezpośrednio z poziomu interfejsu administratora. Część tego zasobu można skonfigurować za pomocąAdmin Plugin, który jest zdefiniowany przez Forms metadane.

Poniżej znajduje się przykład pliku 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

To są domyślne ustawienia wtyczki. Aby skonfigurować je bez użycia wtyczki Admin, użytkownik musi skopiować ten plik w formacie/user/config/plugins/archives.yamlfolder i wprowadź zmiany. Możesz poprawnie dostarczyć plik archives.yaml ; możesz zmienić ustawienia w interfejsie administratora od użytkowników.

Po zapisaniu zmian zostanie automatycznie zapisana <your_folder_name>/user/config/plugins/archives.yaml.

Plik blueprint.yaml wtyczki Archives zawiera strukturę pokazaną poniżej -

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

Poniżej znajdują się elementy formularza obecne w pliku 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

Element główny Enabled, date_display_format i limit to opcje. Pole obecne w tym elemencie głównym określa typ, rozmiar, etykietę, wartość domyślną i opcje. W zależności od typu pola, inne pola mogą się zmieniać; na przykład pole wyboru wymaga listy opcji.

Order direction

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

To pole zawiera zagnieżdżone opcje. Istnieje wiele typów pól, których można używać w wtyczkach / admin / themes / Grav / templates / formularzy / fields . Jak widać w pliku archive.yaml , walidacja formularza jest ustawiona na ścisłą. Gdy walidacja jest ustawiona jako ścisła, to dla wszystkich opcji musisz dodać formularz schematów, w przeciwnym razie podczas zapisywania pojawi się błąd. Form.validation można ustawić jako luźne kiedy chcesz dostosować tylko dwa pola do administratora interfejs.

Poniższa tabela zawiera krótkie wyjaśnienie pól odnoszących się do powyższych elementów formularza.

Sr.No. Pole i opis
1

Type

Wskazuje typ pola.

2

Size

Określa rozmiar pola.

3

Label

Określa etykietę pola.

4

Validate

Sprawdza typ pola i minimalną długość wprowadzoną w polu.

5

Default

Ustawia pola domyślne.

6

Options

Określa listę opcji.

7

Classes

Określa klasę pola.

Pola formularza dostępne w panelu administracyjnym

Dostępnych jest wiele wbudowanych pól formularzy, które są używane przez wtyczki i motywy lub mogą tworzyć własne pola formularzy. Poniższa tabela zawiera listę dostępnych pól formularza -

Typowe pola formularzy

Sr.No. Pole i opis
1

Checkbox

Wyświetla pojedyncze pole wyboru.

2

Checkboxes

Wyświetla listę pól wyboru.

3

Date

Zawiera pole daty.

4

Datetime

Zawiera pole daty i godziny.

5

Email

Zawiera pole adresu e-mail z walidacją.

6

Password

Zawiera pole hasła wyświetlane w postaci kropek.

7

Hidden

Zawiera ukryte pole wprowadzania.

8

Radio

Pozwala wybrać tylko jedną opcję z listy.

9

Select

To pole zawiera kilka opcji.

10

Spacer

Dodaje tytuł, tekst lub poziomą linię do formularza.

11

Text

Zawiera zwykłe pole tekstowe.

12

Textarea

Zawiera wielowierszowe dane wejściowe.

Specjalne pola formularzy

Sr.No. Pole i opis
1

Array

Dodaje wiele wierszy wartości klucza.

2

Ignore

Nieużywane pola są usuwane.

3

Columns

Dzieli formularz na wiele kolumn.

4

Column

Wyświetla pojedynczą kolumnę.

5

Dateformat

Ustawia format daty i godziny.

6

Display

Wyświetla wartość tekstową bez żadnej wartości wejściowej.

7

Frontmatter

Strona jest wyświetlana w formacie surowym.

8

List

Wyświetla listę elementów bez klucza.

9

Markdown

Wyświetla edytor przecen.

10

Pages

Wyświetla listę stron.

11

Section

Strona ustawień jest podzielona na sekcje, a każda sekcja ma tytuł.

12

Selectize

Służy do zaznaczania pól.

13

Tabs

Ustawienia są podzielone na listę zakładek.

14

Tab

Pole kart służy do udostępniania karty.

15

Taxonomy

Jest to wstępnie skonfigurowana opcja wyboru taksonomii.

16

Toggle

Reprezentuje efekt przełączania, który określa typ wejścia lub jego wyłączenia.