Источник iframe внутри шорткода hugo

Я создал собственный шорткод, который включает iframe в другой статический файл моего блога. Что-то вроде этого:

<iframe class="map" type="text/html" width="100%" src="/somefile.html?param={{ index .Params 0 }}" allowfullscreen frameborder="0">

Фактическое содержимое находится в iframe src. Я пытаюсь понять, как лучше всего разместить этот файл (somefile.htmlв примере выше). Прямо сейчас это под моимstatic папку, но я считаю, что было бы разумнее держать ее "ближе" к самому определению шорткода, особенно если я хочу поделиться шорткодом с другими.

Есть ли способ заставить эту работу работать, например, ссылаться на статический файл HTML в шаблоне шорткода?

Я подумывал об использовании srcdoc но я не мог понять, как правильно избежать кавычек внутри html.

Кстати, есть ли способ ссылаться на ресурсы (например, на таблицу стилей) из источника iframe?

1 ответ

В моем случае я определяю исходный URL-адрес в начале страницы, внутри которой содержится iframe

---
iframeSource: "target_asset_name"
---

Затем используйте это как таковое:

{{- $srcurl := (print .Site.BaseURL "iframe_assests_root/" .Params.iframeSource "/") -}}
<iframe src="{{- $srcurl -}}"></iframe>

таким образом вы можете положить его, где хотите (я вставил assets/iframe_assets_root)

Другой вариант - поместить в папку в assets/ т.е.assets/iframesources/, и используйте инструменты ресурсов страницы а ля

{{- $ifsrc := resources.Get "iframesources/myiframe.html" -}}
<iframe src="{{- $ifsrc.Permalink -}}"></iframe>
Другие вопросы по тегам