Комментарии в блоге

Добавлены комментарии в блоге.

В качестве движка используется gitalk.

Как его добавить в light-тему Hexo:

  1. Создайте репозиторий для хранения Issues. Я создал с названием gitalk.

  2. Создайте приложение в github: тынц.

    New GitHub Application

    Это приложение потом можно будет увидеть в списке Settings / Developer settings.

  3. Сгенерируйте “секрет” (Generate a new client secret); запомните (запишите) его.

  4. В light-теме Hexo в layout\_partial создайте файл gitalk_comment.ejs со следующим содержанием:

    <div id="gitalk-container" style="margin: 30px;"></div>
    <link rel="stylesheet" href="https://unpkg.com/gitalk/dist/gitalk.css">
    <script src="https://unpkg.com/gitalk/dist/gitalk.min.js"></script>
    <script type="text/javascript" src="https://cdn.jsdelivr.net/gh/gangdong/gangdong.github.io@dev/assets/js/md5.min.js"></script>
    <script>
    var gitalk = new Gitalk({
    clientID: '<%= gtConfig.clientID %>',
    clientSecret: '<%= gtConfig.clientSecret %>',
    repo: '<%= gtConfig.repo %>',
    owner: '<%= gtConfig.owner %>',
    admin: ['<%= gtConfig.admin %>'],
    id: md5(location.pathname), // Ensure uniqueness and length less than 50
    pagerDirection: '<%= gtConfig.pagerDirection %>',
    distractionFreeMode: false // Facebook-like distraction free mode
    })
    gitalk.render('gitalk-container')
    </script>
  5. В layout\_partial\comment.ejs подключите gitalk_comment.ejs:

    <% if (theme.comment_provider == "gitalk") {
    if (config.gitalk) { %>
    <%- partial('_partial/gitalk_comment', {gtConfig: config.gitalk}) %>
    <% } %>
    <% } %>
  6. В _config.yml light-темы включите использование gitalk-комментариев:

    comment_provider: gitalk
  7. В корневом _config.yml вашего блога выполните настройку gitalk:

    # gitalk comment
    gitalk:
    clientID: your_client_id
    clientSecret: your_secrat
    repo: your_repo_name
    owner: your_github_user
    admin: your_github_user
    pagerDirection: first
    • clientID - значение Client ID из настроек приложения, созданного на шаге 2.
    • clientSecret - “секрет” (Client secret), созданный на шаге 3.
    • repo - название репозитория (шаг 1).
    • owner и admin - имя Вашего пользователя в Github.