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

Структура папок⚓︎

Поскольку Grav - это CMS на основе файлов, то есть ни одна база данных не поддерживает его, структура папок вашего сайта очень важна. На верхнем уровне вашей установки Grav структура папок выглядит следующим образом:

/assets
/backup
/bin
/cache
/images
/logs
/system
/tmp
/vendor
/user

Итак, давайте углубимся в каждую из этих папок верхнего уровня и объясним, для чего они нужны:

/assets⚓︎

Папка assets используется новой системой управления активами в Grav для хранения обработанных .css и .js файлов.

Эта папка не должна использоваться для хранения каких-либо пользовательских данных, поскольку она обычно очищается от всех данных.

/backup⚓︎

Папка backup является папкой по умолчанию для резервных копий Grav.

/bin⚓︎

Папка bin содержит консольные приложения Grav, которые могут быть использованы для выполнения некоторых полезных задач из командной строки. Это относительно продвинутая функция, в первую очередь предназначенная для разработчиков, поэтому мы отложим эту тему для дальнейшего обсуждения.

/cache⚓︎

Папка cache используется для хранения временных кэшированных файлов, которые автоматически создаются Grav для повышения производительности. По умолчанию Grav автоматически выбирает наилучший доступный вариант для вашего хостинга, чтобы обеспечить максимальную скорость работы вашего сайта.

Если Grav решит, что файловая система является лучшим методом кэширования, сгенерированные файлы будут сохранены в этой папке. Механизм шаблонов Twig также использует это расположение для хранения своих предварительно скомпилированных файлов шаблонов. Опять же, это сделано для того, чтобы Grav работал с оптимальной скоростью.

Эта папка не должна использоваться для хранения каких-либо пользовательских данных, поскольку она обычно очищается от всех данных.

/images⚓︎

Grav поставляется со встроенной мощной, но очень простой в использовании библиотекой для работы с изображениями. Это означает, что вы можете легко изменять размер изображения на лету из вашего контента или даже из плагина. Эти изображения хранятся в папке images, поэтому их можно использовать повторно, если снова запрашивается то же изображение с тем же размером.

Эта папка действует как кэш изображений и предназначена для автоматически генерируемых файлов. Предоставляемые пользователем файлы должны храниться в user/pages/, user/themes/ или даже в пользовательской папке user/images/.

Эта папка не должна использоваться для хранения каких-либо пользовательских данных, поскольку она обычно очищается от всех данных.

/logs⚓︎

Когда Grav обнаруживает ошибку или если у вас включено дополнительное ведение журнала или профилирование, он сохраняет соответствующие файлы журнала в папке logs.

/system⚓︎

Папка system — это место для хранения файлов ядра Grav. Вам не следует ничего редактировать в этой папке, потому что обновление Grav может перезаписать ваши изменения. Если вам нужно изменить что-то, связанное с тем, как работает Grav, вы можете использовать плагины, как описано в последующих главах.

/tmp⚓︎

Папка tmp используется Grav и плагинами для хранения временных файлов.

Эта папка не должна использоваться для хранения пользовательских данных, так как она регулярно очищается от всех данных.

/vendor⚓︎

Папка vendor содержит важные библиотеки, на которые опирается Grav. Эта папка похожа на папку system в том, что её содержимое не следует редактировать, если вы не абсолютно уверены в том, что делаете.

При установке Grav с GitHub папка vendor не устанавливается автоматически. Чтобы создать и заполнить папку vendor, вам нужно запустить команду bin/grav install или composer install из корня вашего экземпляра Grav. Более подробную информацию можно найти в разделе Установка.

/user⚓︎

Это самая важная папка для большинства пользователей Grav. В этой папке вы будете тратить время на создание контента, использование плагинов и редактирование тем. Давайте ещё немного углубимся в эту папку:

/user/accounts
/user/blueprints
/user/config
/user/data
/user/images
/user/languages
/user/pages
/user/plugins
/user/themes

/user/accounts⚓︎

Папка account - это место, где вы будете определять учетные записи пользователей, если для определённых частей вашего сайта требуются ограничения доступа.

/user/blueprints⚓︎

Папка blueprints содержит ваши собственные чертежи для сайта.

/user/config⚓︎

Файлы в каталоге config используются для настройки веб-сайта и были рассмотрены в предыдущей главе.

/user/data⚓︎

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

По умолчанию эта папка недоступна через браузер.

/user/images⚓︎

Папка images может использоваться для хранения ваших изображений. Доступ к нему можно получить с помощью потока image://.

/user/languages⚓︎

Папка languages содержит переопределения перевода.

/user/pages⚓︎

Это сердце Grav. Папка pages - это место, где вы создаете и редактируете свой контент. Более подробно мы поговорим об этом в следующей главе.

/user/plugins⚓︎

Плагины расширяют ядро Grav с помощью определённых функций, которые могут понадобиться для вашего сайта. Плагины можно скачать с GetGrav.org/downloads/plugins, или вы можете разработать свой собственный.

/user/themes⚓︎

Темы превращают ваш контент в настоящий веб-сайт. Они преобразуют созданный вами контент в HTML-код, который браузер понимает и отображает вашей аудитории. Существует базовая тема, которая поставляется с Grav, но вы также можете скачать другие с GetGrav.org/downloads/themes или даже создать свою собственную.