HUGO:在markdown内容之间插入JS
HUGO: Insert JS in between markdown Content
我正在使用 HUGO 博客 post 模板网站,我想修改我的一个页面以在内容中嵌入 JS 计算器。因此,我需要以某种方式拆分 .Content 变量。理想情况下,我希望它看起来像这样:
HEADER
文本块 #1
JS 计算器
文本块 #2
文本块 #3
页脚
到目前为止,我设法对其进行了修改,使内容首先出现在一个大块中,然后是计算器。如何为此拆分计算器变量?
我以前发现过类似的东西:
我目前的尝试:
{{ define "main" }}
<section class="section">
<div class="container">
<div class="row">
<div class="col-lg-12">
<h2 class="mb-4">{{.Title }}</h2>
{{ .Content }}
<br/><br/>
<br/><br/>
<br/><br/>
<!-- Begin Scheidungskosten-Rechner von www.cool-funky-calculator.de -->
<div id="s_r_de_calculator">
<script type="text/javascript">
</script>
<script
type="text/javascript"
charset="utf-8"
src="https://www.cool-funky-calculator.de/widget/calculator.js">
</script>
</div>
<br/><br/>
<br/><br/>
<br/><br/>
<!-- </div> -->
<!-- </form> -->
</div>
</div>
</div>
</section>
您可以为此编写自定义 shortcode。例如,在 /layouts/shortcodes/
中写一个名为 js_calculator.html
的简码:
文件夹结构
Hugo Project
├── content
├── layouts
│ └── shortcodes
│ ├── js_calculator.html
├── static
├── themes
└──config.toml
自定义简码:
<div id="s_r_de_calculator">
<script type="text/javascript">
</script>
<script
type="text/javascript"
charset="utf-8"
src="https://www.cool-funky-calculator.de/widget/calculator.js">
</script>
</div>
然后在降价文件中,像
一样使用它
## Your content
Some lines
{{< js_calculator >}}
More lines
我实际上设法解决了这个基于我之前阅读的类似问题并将 Hugo .Content 变量拆分为不同的 headers in markdown:
例如。这是拆分文本并在文本之间插入两个 js 计算器:
{{ $paragraphs := split .Content "<h4 " }}
{{ range $index, $p := $paragraphs }}
{{ $pp := trim $p " \n" }}
{{ if (eq $index 0) }}
{{ printf "%s\n" $pp | safeHTML }}
{{ end }}
{{ if and (ne $pp "") (eq $index 1) }}
<div class="boxtext">
{{ printf "<h4 %s\n" $pp | safeHTML }}
<br/><br/>
<center>
<div id="calculator_no1">
<script type="text/javascript">
</script>
<script
type="text/javascript"
charset="utf-8"
src="https://www.funky_calculator.com/widget/calc2.js">
</script>
</div>
<br/><br/>
<div id="js bit">
<script>
</script>
<script
type="text/javascript"
charset="utf-8"
src="https://www.cool-calculator/calc.js">
</script>
</div>
</center>
</div>{{ end }}
<br/><br/>
{{ if and (ne $pp "") (gt $index 1) }}
<div>
{{ printf "<h4 %s\n" $pp | safeHTML }}
</div>
{{end}}
{{end}}
</div>
我正在使用 HUGO 博客 post 模板网站,我想修改我的一个页面以在内容中嵌入 JS 计算器。因此,我需要以某种方式拆分 .Content 变量。理想情况下,我希望它看起来像这样:
HEADER
文本块 #1
JS 计算器
文本块 #2
文本块 #3
页脚
到目前为止,我设法对其进行了修改,使内容首先出现在一个大块中,然后是计算器。如何为此拆分计算器变量?
我以前发现过类似的东西:
我目前的尝试:
{{ define "main" }}
<section class="section">
<div class="container">
<div class="row">
<div class="col-lg-12">
<h2 class="mb-4">{{.Title }}</h2>
{{ .Content }}
<br/><br/>
<br/><br/>
<br/><br/>
<!-- Begin Scheidungskosten-Rechner von www.cool-funky-calculator.de -->
<div id="s_r_de_calculator">
<script type="text/javascript">
</script>
<script
type="text/javascript"
charset="utf-8"
src="https://www.cool-funky-calculator.de/widget/calculator.js">
</script>
</div>
<br/><br/>
<br/><br/>
<br/><br/>
<!-- </div> -->
<!-- </form> -->
</div>
</div>
</div>
</section>
您可以为此编写自定义 shortcode。例如,在 /layouts/shortcodes/
中写一个名为 js_calculator.html
的简码:
文件夹结构
Hugo Project
├── content
├── layouts
│ └── shortcodes
│ ├── js_calculator.html
├── static
├── themes
└──config.toml
自定义简码:
<div id="s_r_de_calculator">
<script type="text/javascript">
</script>
<script
type="text/javascript"
charset="utf-8"
src="https://www.cool-funky-calculator.de/widget/calculator.js">
</script>
</div>
然后在降价文件中,像
一样使用它## Your content
Some lines
{{< js_calculator >}}
More lines
我实际上设法解决了这个基于我之前阅读的类似问题并将 Hugo .Content 变量拆分为不同的 headers in markdown:
例如。这是拆分文本并在文本之间插入两个 js 计算器:
{{ $paragraphs := split .Content "<h4 " }}
{{ range $index, $p := $paragraphs }}
{{ $pp := trim $p " \n" }}
{{ if (eq $index 0) }}
{{ printf "%s\n" $pp | safeHTML }}
{{ end }}
{{ if and (ne $pp "") (eq $index 1) }}
<div class="boxtext">
{{ printf "<h4 %s\n" $pp | safeHTML }}
<br/><br/>
<center>
<div id="calculator_no1">
<script type="text/javascript">
</script>
<script
type="text/javascript"
charset="utf-8"
src="https://www.funky_calculator.com/widget/calc2.js">
</script>
</div>
<br/><br/>
<div id="js bit">
<script>
</script>
<script
type="text/javascript"
charset="utf-8"
src="https://www.cool-calculator/calc.js">
</script>
</div>
</center>
</div>{{ end }}
<br/><br/>
{{ if and (ne $pp "") (gt $index 1) }}
<div>
{{ printf "<h4 %s\n" $pp | safeHTML }}
</div>
{{end}}
{{end}}
</div>