Перейти к содержанию

Пример: чертеж плагина⚓︎

Чертеж плагина дает Grav представление о том, что такое плагин, его источник, информация о поддержке и авторе, зависимости и поля формы, используемые для администрирования плагина в Grav Admin.

В качестве примера вот чертеж для плагина:

name: Assets
slug: assets
type: plugin
version: 1.0.4
description: 'This plugin provides a convenient way to add CSS and JS assets directly from your pages.'
icon: list-alt
author:
  name: Team Grav
  email: devs@getgrav.org
  url: https://getgrav.org
homepage: https://github.com/getgrav/grav-plugin-assets
demo: https://learn.getgrav.org
keywords: assets, javascript, css, inline
bugs: https://github.com/getgrav/grav-plugin-assets/issues
license: MIT

dependencies:
  - { name: afterburner2 }
  - { name: github }
  - { name: email, version: '~2.0' }

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

Свойство Описание
name* Это название ресурса. Избегайте добавления плагинов или тем, в этом нет необходимости.
slug* Это уникальный идентификатор ресурса, он также используется для определения имени папки, в которой хранится ресурс, например user/plugins/__slug__
type* Это тип ресурса, он должен быть либо plugin, либо theme
version* Версия ресурса. Это значение всегда должно меняться постепенно с каждым выпуском. Вы также должны следовать стандарту semver.
description* Описание вашего ресурса. Пожалуйста, не превышайте 200 символов. Описание должно быть кратким и по существу. При необходимости вы можете использовать синтаксис Markdown. Также неплохо заключить описание в цитату marks.
icon* Значок - это то, что будет использоваться на getgrav.org. На этом этапе мы используем библиотеку значков Font Awesome, поэтому, если вы разрабатываете новый плагин или тему, ваша работа должна быть выбранный вами значок ещё не используется. В противном случае нам придется поменять его за вас.
screenshot (не обязательно) Снимок экрана используется только темами и полностью игнорируется плагинами. Для тем это будет имя файла снимка экрана, который поставляется с темой (по умолчанию: screenshot.jpg). Если у вас есть изображение screenshot.jpg в корне вашей темы, вы можете не использовать это свойство. Наш репозиторий автоматически подберет его.
author.name* ФИО разработчика
author.email (не обязательно) Электронная почта разработчика.
author.url (не обязательно) Домашняя страница разработчика.
homepage (не обязательно) Если у вас есть специальная домашняя страница для вашего ресурса, это место для него.
docs (не обязательно) Если у вас есть документация для вашего ресурса, можно указать её здесь.
demo (не обязательно) Если у вас есть демо-версия вашего ресурса, укажите её здесь.
guide (не обязательно) Если у вас есть учебные пособия или руководства по использованию вашего ресурса, укажите их здесь.
keywords (не обязательно) Хотя реального использования ключевых слов пока нет, можно перечислить их здесь, разделив запятыми.
bugs (не обязательно) URL-адрес, по которому можно сообщить об ошибках, обычно это ссылка на GitHub issues ссылка.
license (не обязательно) Тип лицензии вашего ресурса (MIT, GPL и т. д.). Рекомендуется всегда предоставлять файл LICENSE вместе с вашим ресурсом.
dependencies (не обязательно) Список зависимостей, которые требуются плагину/теме. По умолчанию для их установки используется GPM, однако, если указан необязательный URL-адрес репозитория GIT, возможна также установка прямо из репозитория. Также, если вы используете массив, вы можете явно определить имя и версию, используя версии пакетов в стиле Composer
gpm (не обязательно) Следует ли получать обновления через GPM. Установите значение false, чтобы отключить обновления GPM для ресурсов, не относящихся к GPM.

Вот пример идентификационной части плагина GitHub:

name: GitHub
slug: github
type: plugin
version: 1.0.1
description: 'This plugin wraps the [GitHub v3 API](https://developer.github.com/v3/) and uses the [php-github-api](https://github.com/KnpLabs/php-github-api/) library to add a nice GitHub touch to your Grav pages.'
icon: github
author:
  name: Team Grav
  email: devs@getgrav.org
  url: https://getgrav.org
homepage: https://github.com/getgrav/grav-plugin-github
keywords: github, plugin, api
bugs: https://github.com/getgrav/grav-plugin-github/issues
license: MIT

Чертежи тем работают по тому же принципу.