Источник iframe внутри шорткода hu go - PullRequest
1 голос
/ 03 августа 2020

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

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

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

Есть ли способ сделать эту работу, то есть ссылаться на файл stati c html в шаблоне шорткода?

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

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

1 Ответ

1 голос
/ 01 сентября 2020

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

---
iframeSource: "target_asset_name"
---

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

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

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

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

{{- $ifsrc := resources.Get "iframesources/myiframe.html" -}}
<iframe src="{{- $ifsrc.Permalink -}}"></iframe>
...