我正在使用Liquid 模板引擎来显示一系列汇总的帖子 - 目前我有一些类似的内容:
{% for page in site.posts %}
{{page.content | truncatewords: 100}}
{% endfor %}
页面内容包含 HTML,使用 truncatewords 可能会导致在输出中插入无效的 HTML。我不想从内容中删除所有 HTML(嵌入的视频和图像应该是可见的),理想情况下我想要的只是添加适当的结束标签。
我可以看到仅仅截断不会达到我的预期结果,所以我的问题是:如何截断我的 HTML 以便使用 Liquid 输出有效标记?
更新
一个非常具体的问题是我有一个使用颜料标记的代码示例。现在,如果截断发生在代码示例的中间,它会留下几个标签,从而弄乱页面的其余部分。我正在寻找一种在不删除所有代码示例的情况下截断这些帖子的方法 - 只是为了截断和关闭内容正文中的所有打开标签。