Глобальная папка с материалами
Материалы, не связанные с постами, такие как изображения, CSS или JavaScript файлы хранятся в папке source
. Например, если нужно добавить несколько изображений в проект Hexo, то самый простой способ - положить их в исходный каталог изображений source/images
. Затем можно получить к ним доступ, используя что-то вроде ![](/images/image.jpg)
.
Папка с постами
Для пользователей, которые планируют регулярно использовать изображения и/или другие материалы, и для тех, кто предпочитает разделять свои материалы на основе поста в посте, Hexo обеспечивает возможность организовать управление материалами. Это немного сложнее, но очень удобный подход к управлению материалами, может быть включён в настройках, установите переменную post_asset_folder
в _config.yml
в значение true
.
post_asset_folder: true |
Если управление материалами включено, то каждый раз при создании поста создастся папка с аналогичным именем. Например: hexo new [layout] <title>
создаст папку с именем title
. Можно использовать файлы, связанные с постом используя относительный путь, это облегчает и упрощает работу с материалами.
Тэг плагинов для создания относительных ссылок
Привязка изображений или других материалов, используя обычный синтаксис markdown и относительные пути может привести к их неправильному отображению в архиве, или на главное странице. Плагины, созданы сообществом для решения этой проблемы в Hexo 2. С выходом Hexo 3 были добавлены в ядро новые плагины тегов. Они позволяют с лёгкостью создавать ссылки на ваши материалы в markdown:
{% asset_path slug %} |
Для примера, этот пост, использует управление материалами. Если поместить в папку с материалами поста изображение example.jpg
, то ссылка не заработает на главной странице. Но если использовать ![](/example.jpg)
, то это добавит изображение в пост (но только для самого поста).
Правильный путём для ссылки на изображение будет использование синтаксиса плагина, а не markdown:
{% asset_img example.jpg This is an example image %} |
При использовании этого способа, изображение появится в самом посте и на главной странице и в архивах.