Jekyll: GitHub ページでカスタムプラグインを使用するにはどうすればいいですか? 質問する

Jekyll: GitHub ページでカスタムプラグインを使用するにはどうすればいいですか? 質問する

GitHubページでカスタムRubyプラグインが動作しないのは、セキュリティ上の懸念

プラグインを追加しようとしています(これです) を_pluginsJekyll プロジェクトのフォルダーに追加しましたが、GitHub にデプロイすると無視されます。

質問:これを回避する方法はありますか? 誰か解決策を見つけましたか?

注記:もちろん、ローカルで HTML ファイルを生成し、リポジトリにコミットすることもできます。しかし、それは私が望んでいることではありません。

ベストアンサー1

プラグインなし

読書時間スクリプトにはプラグインは必要ありません。プラグインを使わずに追加できるスクリプトのコレクションを作成しました。ここ読書タイムのスクリプトもその一つです。

ここにコードがあります:

{% 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 にプッシュすることができます。以下も参照してください。参考:

おすすめ記事