Использование размещенной в Netlify службы идентификации с собственной размещаемой Netlify CMS - PullRequest
0 голосов
/ 05 сентября 2018

Я размещаю свой сайт на своем собственном сервере и использую Netlify CMS. Однако я все же хотел бы использовать размещенные в Netlify сервисы Identity и Git Gateway, а не запускать свои собственные.

1 Ответ

0 голосов
/ 05 сентября 2018

Да, это возможно. Во-первых, вам нужно настроить свой сайт в Netlify и убедиться, что у вас включены и настроены службы Identity и Git Gateway. Следуйте обычной настройке «Добавить на свой сайт» для Netlify CMS, но внесите следующие изменения:

CMS config.yml изменения

Раздел backend вашей конфигурации должен содержать следующие три ключа. Замените my-site.netlify.com на URL вашего сайта Netlify.

backend:
  name: git-gateway
  identity_url: "https://my-site.netlify.com/.netlify/identity"
  gateway_url: "https://my-site.netlify.com/.netlify/git"

CMS index.html изменения

Предполагая, что у вас уже добавлен скрипт Netlify Identity (netlify-identity-widget.js), удалите его и используйте вместо него скрипт netlify-identity.js из того же пакета. Этот скрипт не будет инициализироваться автоматически, что позволяет нам устанавливать наши собственные параметры. Сделайте это как на своей странице администратора, так и на домашней странице сайта.

<script src="https://identity.netlify.com/v1/netlify-identity.js"></script>

Затем добавьте этот скрипт прямо под ним, как на странице администратора, так и на домашней странице. Снова замените my-netlify-site.com на URL вашего сайта Netlify.

<script>
  if (document.readyState === "loading") {
    document.addEventListener("DOMContentLoaded", function () {
      netlifyIdentity.init({
        APIUrl: "https://my-site.netlify.com/.netlify/identity"
      });
    });
  } else {
    netlifyIdentity.init({
      APIUrl: "https://my-site.netlify.com/.netlify/identity"
    });
  }
</script>
...