Una plantilla inicial para crear sitios web ultrarrápidos con Ghost (como CMS sin cabeza en este caso) y Gatsby, utilizando el excelente tema Simply Ghost. Reescrito del tema Manillares a React/Gatsby.
Demostración: https://gatsby-ghost-simply.netlify.app/
custom_template
!)custom_template
!)custom_template
!)custom_template
!) # With Gatsby CLI
gatsby new gatsby-starter-ghost https://github.com/anarion80/gatsby-ghost-simply.git
# From Source
git clone https://github.com/anarion80/gatsby-ghost-simply.git
cd gatsby-ghost-simply
Luego instale las dependencias
yarn
Inicie el servidor de desarrollo. Ahora tienes un sitio de Gatsby que extrae contenido de Ghost sin cabeza. No es necesario tener instalado el tema Simply Ghost original en su instancia de Ghost, ni tener ninguna Ruta adicional configurada allí.
gatsby develop
De forma predeterminada, el iniciador completará el contenido de una instalación predeterminada de Ghost ubicada en https://gatsby.ghost.io.
Para utilizar su propia instalación, deberá editar el archivo de configuración .ghost.json
con sus credenciales. Cambie el valor apiUrl
a la URL de su sitio Ghost. Para los clientes de Ghost (Pro), esta es la URL de Ghost que termina en .ghost.io
, y para las personas que usan la versión autohospedada de Ghost, es la misma URL utilizada para acceder a su sitio.
A continuación, actualice el valor contentApiKey
a una clave asociada con el sitio Ghost. Se puede proporcionar una clave creando una integración dentro de Ghost Admin. Navegue hasta Integraciones y haga clic en "Agregar nueva integración". Asigne un nombre apropiado a la integración y haga clic en crear.
{
"apiUrl" : " https://gatsby.ghost.io " ,
"contentApiKey" : " 9cc5c67c358edfdd81455149d0 "
}
Finalmente, configure la URL deseada en siteConfig.js
, para que los enlaces (por ejemplo, enlaces canónicos) se generen correctamente. También debe actualizar otros valores necesarios para el menú, compartir en redes sociales y buscar.
{
menuDropdown : [
{
label : `About` ,
url : `/about` ,
} ,
.
.
.
] ,
followSocialMedia : [
{
service : `youtube` ,
title : `YOUR_TITLE` ,
url : `YOUR_URL` ,
} ,
.
.
.
] ,
searchSettings : {
key : `YOUR_GHOST_API_KEY` ,
url : `YOUR_GHOST_URL` ,
/* This is optional */
options : {
keys : [ `title` , `plaintext` ] ,
limit : 10 ,
} ,
/* This is optional to perform filtering of the ghost api */
api : {
resource : `posts` ,
parameters : {
limit : `all` ,
fields : [ `title` , `slug` , `plaintext` ] ,
filter : `` ,
include : `` ,
order : `` ,
formats : `` ,
} ,
} ,
} ,
}
Para usar plantillas de publicaciones personalizadas, agregue una etiqueta interna particular a la publicación (es decir, #custom-post-wide
, #custom-kusi-doc
, etc.).
La demostración y el repositorio son la "versión máxima" con todos los tipos posibles de variantes de página de inicio, plantillas de publicaciones, cartera, documentos, etc. Ajuste o elimine según sea necesario.
El iniciador contiene tres archivos de configuración específicamente para implementar con Netlify. Un archivo netlify.toml
para la configuración de compilación, un archivo /static/_headers
con encabezados de seguridad predeterminados configurados para todas las rutas y /static/_redirects
para configurar redirecciones de dominio personalizadas de Netlify.
Para implementar en su cuenta de Netlify, presione el botón a continuación.
Las claves API de contenido generalmente no se consideran información confidencial; existen para que puedan modificarse en caso de abuso; por lo que la mayoría de la gente lo envía directamente a su archivo de configuración .ghost.json
. Si prefiere mantener esta información fuera de su repositorio, puede eliminar esta configuración y configurar las variables ENV de Netlify para compilaciones de producción.
Una vez implementado, puede configurar una integración de Ghost + Netlify para usar enlaces de implementación de Ghost para activar reconstrucciones de Netlify. De esa manera, cada vez que los datos cambien en Ghost, su sitio se reconstruirá en Netlify.
Puede deshabilitar la interfaz predeterminada del tema Ghost manillares habilitando la marca Make this site private
dentro de la configuración de Ghost. Esto permite la protección con contraseña antes de la instalación de Ghost y configura <meta name="robots" content="noindex" />
para que su interfaz de Gatsby se convierta en la fuente de verdad para SEO.
# Run a production build, locally
gatsby build
# Serve a production build, locally
gatsby serve
Gatsby develop
usa la configuración development
en .ghost.json
, mientras que Gatsby build
usa la configuración production
.
Copyright (c) 2021 anarion80: publicado bajo la licencia GPLv3.