微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby – Jekyll:如何在GitHub页面中使用自定义插件

事实证明,由于 security concerns,自定义ruby插件在GitHub页面上不起作用.

我正在尝试将插件(this one)添加到我的Jekyll项目的_plugins文件夹中,但是当我将其部署到GitHub时,它会被忽略.

问题:有没有办法解决这个问题?有没有人找到解决方案?

注意:显然我可以在本地生成html文件并将它们提交到我的存储库.但这不是我想要的.

解决方法

没有插件

阅读时间脚本不需要插件.我创建了一个脚本集合,可以在不使用插件的情况下添加.你可以找到它们here. A reading time script就是其中之一.

在这里您可以找到代码

{% capture words %}
{{ content | number_of_words | minus: 180 }}
{% endcapture %}
{% unless words contains '-' %}
{{ words | plus: 180 | divided_by: 180 | append: ' minutes to read' }}
{% endunless %}

请注意,此代码仅包含Liquid而不包含Ruby.因此,它可以在您的布局或包含(没有插件)中使用.

优化脚本

假设你有这样的东西:

<p>lorem ipsum</p>
<p>lorem ipsum</p>
<code>lorem ipsum</code>
<p>lorem ipsum</p>
<code>lorem ipsum</code>
<p>lorem ipsum</p>

然后你可以删除上面的代码块,如下所示:

{% assign preprocessed_content=post.content | replace: '<p>','__p__' %}
{% assign preprocessed_content=preprocessed_content | replace: '</p>','__/p__' %}
{% assign truncated_content=preprocessed_content | strip_html %}
{% assign cleaned_content=truncated_content | replace: '__p__','<p>' %}
{% assign cleaned_content=cleaned_content | replace: '__/p__','</p>' %}

当然,这可以扩展到支持更多标签.

无论如何使用插件

如果您真的想要使用插件,可以让本地计算机或CloudCannon构建您的站点并将结果推送到Github Pages.另见:https://learn.cloudcannon.com/jekyll/using-jekyll-plugins/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐