Связывание страниц в Hugo/markdown

Я новичок в генераторе статических сайтов HUGO (http://gohugo.io/). Я использую сервер Hugo, локально доступный как localhost: 1313. Я пытаюсь связать страницы в двух разных разделах. Моему файлу "feature.md" нужна ссылка на "grid_modules.md" и наоборот. Ниже приведена структура каталогов для обоих файлов на сгенерированном Hugo сайте.

~/mysite/content/about/feature.md

~/mysite/content/modules/grid_modules.md

Каков наилучший способ связать обе страницы вместе? Я пытаюсь сделать следующее:

В feature.md:

"[grid_modules] (../modules/grid_modules)"

Если я пытаюсь получить доступ к этой ссылке, я получаю сообщение об ошибке в "localhost:1313/about/modules/grid_modules", которое, как я знаю, является неправильным.

Чего мне не хватает в ссылках? Почему я не получаю "localhost:1313/modules/grid_modules" вместо этого.

Ответ 1

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

Как указано ранее:

URL-адрес страницы зависит от конфигурации вашего URL-адреса (либо через https://gohugo.io/extras/permalinks/, либо прямо в качестве URL-адреса на отдельной странице).

Вы можете использовать теги ref и relref в вашей уценке, чтобы ссылка соответствовала правильному URL.

Для вашего примера это будет выглядеть следующим образом (в зависимости от того, хотите ли вы абсолютный или относительный URL):

[grid_modules] ( {{< relref "modules/grid_modules" >}})
[grid_modules] ( {{< ref "modules/grid_modules" >}})

Ответ 2

Какой URL-адрес страницы зависит от вашей конфигурации URL-адреса (либо в https://gohugo.io/extras/permalinks/, либо непосредственно задан как URL на индивидуальная страница).

И это часто не совпадает с путём в файловой системе.

У Hugo есть вспомогательные функции, которые помогут вам, см. ref и relref в этом документе:

https://gohugo.io/extras/crossreferences/

Ответ 3

Я столкнулся с этой же проблемой и нашел следующее более простое решение для работы. Когда URL-адрес указывается в форме [text](/url/path) со страницы под контентом /, корень/url/пути фактически является контентом/(или общедоступным/на отображаемом сайте). Таким образом, чтобы ссылаться на "~/mysite/content/modules/grid_modules.md" из "~/mysite/content/about/feature.md", вы можете просто написать в "feature.md"

[grid_modules] (/modules/grid_modules)