ox-hugo直接导出html代码

在使用ox-ox-hugo时,有时会需要直接导出html代码。 https://ox-hugo.scripter.co/doc/org-special-blocks/

方法二,使用short code方式

参考:

https://anaulin.org/blog/hugo-raw-html-shortcode/ https://orgmode.org/manual/Quoting-HTML-tags.html https://ox-hugo.scripter.co/doc/shortcodes/

先定义一个shortcode

n layouts/shortcodes/rawhtml.html 内容如下:

<!-- raw html -->
{{.Inner}}

这就是说把内部的内容直接作为html输出

在md文件中使用

{{< rawhtml >}}
  <p class="speshal-fancy-custom">
    This is <strong>raw HTML</strong>, inside Markdown.
  </p>
{{< /rawhtml >}}

在org中使用

如果在org中使用,还需要通过ox-hugo导出转一层,所以相对复杂一些。因此如果像在md文件中一样的使用的话,shortcode中因为有 < hugo会报错,特别是 < 在ox-hugo导出的话会转变成 &lt;=,所以要通过 org mode 的方式,在前后加上 =@@html:@@ 。或者段的使用 #+BEGIN_EXPORT html#+END_EXPORT 的代码块形式。

或通过ox-hugo的 #+hugo: 方式

#+hugo:{{< rawhtml >}}

@@html:<a href="https://project-gc.com/ProfileStats/LC1111" target="_top"><img src="https://cdn2.project-gc.com/ProfileStatsImage/LC1111" width="750"></a>@@
#+hugo:{{< /rawhtml >}}

#+hugo:{{< rawhtml >}}

#+hugo: <a href="https://project-gc.com/ProfileStats/LC1111" target="_top"><img src="https://cdn2.project-gc.com/ProfileStatsImage/LC1111" width="750"></a>

#+hugo:{{< /rawhtml >}}

#+hugo:{{< rawhtml >}}

#+BEGIN_EXPORT html
  <a href="https://project-gc.com/ProfileStats/LC1111" target="_top"><img src="https://cdn2.project-gc.com/ProfileStatsImage/LC1111" width="750"></a>
#+END_EXPORT
#+hugo:{{< /rawhtml >}}

海上一民工

Related