Путь к набору изображений Хьюго
Я новичок в Hugo, и у меня возникли проблемы с настройкой темы. Эта тема https://github.com/jpanther/congo использует пакеты страниц Hugo для сопоставления избранной строки изображения.
Я хотел бы изменить назначение этого поля «Избранное:» из заголовка, чтобы указать имя изображения, и чтобы оно отображалось как избранное изображение.
Структура каталогов выглядит следующим образом:
Hugo/
content/
journal/
post1.md
featured-image1.jpeg
post2.md
image234.jpg
...
Фронтовая тема для постов будет выглядеть так:
---
title: Post 1
feature: "featured-image1.jpeg"
...
и
---
title: Post 2
feature: "image234.jpg"
...
Итак, я попытался переопределить способ поиска изображений, как показано ниже:
<img alt="..." class="..." src="{{ .Params.feature }}" />
который отлично работает, если не задействована нумерация страниц. В противном случае имя изображения просто привязывается к URL-адресу с нумерацией страниц, а не находит изображение в том же каталоге, что и файл уценки.
Мне известны преимущества использования пакетов страниц и использованияstatic/
для хранения всех изображений, но оба они имеют огромный недостаток для моего рабочего процесса написания, и поэтому должны уступить место упрощенной структуре каталогов, описанной выше, где изображения хранятся в том же каталоге, что и файлы уценки, и они не содержатся в своих файлах. собственный подкаталог.
Любая помощь будет оценена по достоинству. Спасибо, что уделили время, Джей Би.
2 ответа
Я думаю, вам нужно вызвать метод.Resources.GetMatch
чтобы вернуть ресурс первой страницы, имя которого соответствует заданному шаблону Glob, указанному.Params.feature
, а затем визуализировать найденный ресурс страницы:
{{ with .Resources.GetMatch .Params.feature }}
<img alt="..." class="..." src="{{ .RelPermalink }}" />
{{ end }}
Дополнительную информацию см. в разделе «Рендеринг изображений» .
Я обнаружил, что проблема заключалась в относительном пути, указывающем на изображения. Кажется, Хьюго нужен полный путь к изображениям относительноcontent/
каталог. Таким образом, на изображения нужно было ссылаться не как наfeature: image-name.jpg
ноfeature: /journal/image-name.jpg
. после внесения этого изменения изображения будут найдены правильно.