喜欢jekyll帖子的按钮

时间:2016-09-06 08:31:27

标签: jekyll blogs

我想为我的jekyll博客主页上的每个帖子添加一个类似的按钮 我没找到任何插件。我不想要任何类似Facebook的按钮连接到公司/产品页面。

我想要一个独立于任何社交平台的按钮,只关注帖子。

像这样的东西 enter image description here

2 个答案:

答案 0 :(得分:4)

简短回答:你不能。

答案很长:你的按钮会在某处(通常是数据库)存储“喜欢”,根据定义,这是一个动态过程。 Jekyll只能生成静态数据。

您可以将按钮绑定到外部服务,例如提供此类功能的LikeBtn(免费优惠错过了统计信息等高级功能)。

无论您选择哪种服务,通常都会添加一个javascript代码段,就像谷歌分析一样。你可以看到如何使用google analytics和jekyll来帮助你(例如here)。

答案 1 :(得分:0)

是的,可以通过将自定义JavaScript代码和数据库写入Jekyll生成的静态网站来添加“喜欢”按钮并跟踪喜欢的次数。

因此进入数据库是因为它是静态页面且不涉及任何服务器,因此不可能直接与数据库进行交互,但是有一种方法。 就我而言,我正在使用Firebase。 Google的Firebase为我们提供了许多功能,例如存储,数据库,托管以及使用功能访问无服务器架构。

因此,您需要做的就是向http://firebase.google.com注册 然后创建一个应用,然后在您的JavaScript中的head标签中添加以下代码

<script src="https://www.gstatic.com/firebasejs/5.9.0/firebase.js"></script>
<script>
  // Initialize Firebase
  // TODO: Replace with your project's customized code snippet
  var config = {
    apiKey: "<API_KEY>",
    authDomain: "<PROJECT_ID>.firebaseapp.com",
    databaseURL: "https://<DATABASE_NAME>.firebaseio.com",
    projectId: "<PROJECT_ID>",
    storageBucket: "<BUCKET>.appspot.com",
    messagingSenderId: "<SENDER_ID>",
  };
  firebase.initializeApp(config);

var timestamp = new Date().valueOf();
            var obj = {};
            obj[timestamp] = "1";

            firebase.database().ref('/').update(obj)
</script>

有关更多详细信息, 您可以访问我关于此主题的博客

https://xyzcoder.github.io/firebase/2019/03/17/firebase-real-time-database.html

注意:我们还可以对谁可以读写数据到json存储区实施安全性限制

谢谢, 帕万