1

我创建了一个自定义简码,其中包含一个 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 源中引用资源(如样式表)?

4

1 回答 1

1

在我的情况下,我在 iframe 包含的页面的前面定义了源 url

---
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/,并使用页面资源工具 à la

{{- $ifsrc := resources.Get "iframesources/myiframe.html" -}}
<iframe src="{{- $ifsrc.Permalink -}}"></iframe>
于 2020-09-01T16:08:50.087 回答