Curso Intensivo sobre Sitios Web Multilingües con next.JS y Contenido Headless

Rate this content
Bookmark

En este curso intensivo, crearemos un nuevo proyecto en el CMS headless, lo llenaremos con datos y utilizaremos el contenido para construir una aplicación Next.js multilingüe. Pasaremos mucho tiempo en el código para:

- Generar modelos y estructuras de tipo fuertemente tipados para el contenido

- Configurar el sitio para varios idiomas

- Utilizar los códigos de idioma respectivos en la obtención de contenido e incorporar fallbacks de idioma

- Resolver contenido multilingüe de campos de texto enriquecido


Aprenderás:

- Cómo trabajar con contenido de un CMS headless (Kontent.ai)

- Cómo se puede aprovechar el modelo de contenido para generar tipos de TS y qué beneficios aporta a tu proyecto

- Cómo agregar capacidades multilingües a un sitio web Next.js

- Cómo utilizar fallbacks de idioma

- Cuáles son los problemas típicos al trabajar con contenido multilingüe

FAQ

Next.js es un framework de React que permite desarrollar aplicaciones web y sitios web. En el masterclass se mostró cómo manejar la parte multilingüe del sitio web utilizando Next.js, permitiendo que el contenido se maneje en diferentes idiomas de manera eficiente.

Un CMS headless, como Content.ai, es una plataforma de gestión de contenido que proporciona datos a través de una API sin una interfaz de presentación predeterminada. Se integra con Next.js mediante APIs que facilitan la importación de contenido en proyectos multilingües, permitiendo una gestión de contenido más flexible y una mejor experiencia de desarrollo.

Puedes importar contenido en tu proyecto registrándote en Content.ai y utilizando herramientas proporcionadas para importar un paquete ZIP de contenido. Durante el masterclass, se explicaron los pasos para configurar y utilizar el gestor de plantillas de contenido para realizar la importación.

La localización se maneja agregando diferentes idiomas en el CMS y configurando Next.js para reconocer y manejar estas localizaciones. Durante el masterclass, se mostró cómo configurar Next.js para que responda a diferentes configuraciones regionales y cómo propagar el idioma actual en las consultas de contenido.

Se discutieron estrategias como la utilización de modelos de tipo fuertemente tipados, la implementación de una solución heurística en la página de inicio, y la generación dinámica de rutas y propiedades estáticas basadas en el contenido del CMS. También se cubrió la adición de nuevos idiomas tanto en el código como en el CMS.

El código y los recursos del masterclass están disponibles en un repositorio público de GitHub. Se proporcionaron enlaces durante la sesión y se incluyeron en un archivo llamado links.txt junto con un PDF de la presentación y un paquete de contenido necesario para el CMS.

Ondrej Polesny
Ondrej Polesny
126 min
14 Oct, 2022

Comments

Sign in or register to post your comment.

Video Summary and Transcription

La masterclass de hoy se centró en la construcción de sitios web multilingües con Next.js y contenido headless. La masterclass cubrió temas como la importación de contenido en proyectos de CMS, la generación de modelos de script de tipo fuertemente tipados, la implementación de resolución de texto enriquecido, la adición de soporte para varios idiomas y la implementación de un interruptor de idioma. El orador proporcionó instrucciones paso a paso y ejemplos de código durante toda la masterclass. Se animó a los participantes a hacer preguntas y se les dio acceso a los materiales de la masterclass y al repositorio de código.

1. Introducción a los sitios web multilingües con Next.js

Short description:

Hoy quiero hablarles sobre los sitios web multilingües con Next.js y contenido headless. Nuestro sitio web en Content.ai está construido con Next.js y quiero compartir el conocimiento que adquirí al construir ese sitio. El masterclass está grabado y pueden hacer preguntas si necesitan aclaraciones. Les proporcionaré el código y la solución final para que puedan explorar.

Así que echemos un vistazo a la presentación. Espero que puedan verla. Entonces, hoy quiero hablarles sobre los sitios web multilingües con Next.js y contenido headless. ¿Qué significa eso? En primer lugar, permítanme presentarme. Soy Ondrej. Soy un evangelista de desarrollo en Content.ai. Somos un headless CMS o plataforma de contenido modular, como lo llamamos en estos días. Y por qué elegí un tema así es porque nuestro sitio web en Content.ai está construido con Next.js. Hemos estado trabajando en él durante el último año. Antes de eso, solía ser un sitio de Gatsby durante años. Hemos adquirido mucho conocimiento durante ese tiempo. Quería aprovechar la oportunidad y compartir parte del conocimiento que adquirí al construir ese sitio, para que pueda ahorrar algo de tiempo. Porque siempre estamos cortos de tiempo. Eso es lo que hago. Hoy, además de mostrarles cómo funciona Next.js, quiero contarles cómo maneja la parte multilingüe del sitio web. Ahora, también un poco de organización. El masterclass está grabado. Así que siempre pueden volver y ver lo que hice. El masterclass está diseñado de tal manera que pueden hacer cosas conmigo. Porque cuando les muestro algo, les digo que no hagan nada cuando soy un asistente siempre hago algo. Pueden hacer lo que quieran. Pueden hacerlo conmigo. Si tienen alguna pregunta, el masterclass no es difícil. Es más bien nivel introductorio. Así que si tienen alguna pregunta, no duden en escribirme en el chat o en Discord. Siempre puedo volver y explicar nuevamente algunos temas. Es bastante básico, pero si aún no han visto Next.js, tal vez estén trabajando en otra plataforma o en otro framework, probablemente no les resulte tan fácil. Así que no tengan vergüenza de preguntar, todos somos principiantes en algún momento. Está perfectamente bien, estaré encantado de volver y explicar nuevamente algunas cosas.

El código. Les daré el código en forma de un repositorio de GitHub, y también compartiré el código final con ustedes. Así que pueden tomar la solución final y volver atrás y ver cómo se implementaron las cosas. Así que no se preocupen. Estamos aquí para divertirnos

2. Agenda y Enlaces Importantes

Short description:

La agenda de hoy incluye importar contenido en proyectos de CMS, generar modelos de script de tipo fuertemente tipados, implementar una solución heurística en la página de inicio, crear páginas de índice y detalle de listados, agregar nuevos idiomas, ajustar las consultas de obtención de datos y agregar contexto al cambio de idioma. Los enlaces importantes incluyen el repositorio de GitHub, que contiene todos los datos del masterclass, y el enlace de registro de Content.ai. Registrarse permite acceder a la aplicación e importar contenido en el CMS.

y aprender algo. Entonces, la agenda de hoy, este es el sitio web en el que trabajaremos hoy. Como pueden ver, es una plantilla muy simple, siempre trato de seguir la ruta más fácil aquí, y muestra una lista de conferencias. Estas son las conferencias en las que Content.ai participa este otoño. Comenzaremos con React Advanced. Hay algunas otras conferencias que verán en el sitio web. Esto es solo para tener algún tipo de contenido y algo que mostrar en el sitio web. Así es como se verá y creo que podemos comenzar con la agenda y lo que sucederá hoy. Primero que nada, importaremos contenido en sus proyectos de CMS. Ahora hay dos formas de hacer este masterclass. La primera es registrarse en un plan de desarrollador gratuito en content.ai y pueden importar el contenido en su propio proyecto, o compartiré mi ID de proyecto con ustedes y pueden usar el mío. No importa cuál elijan, ambas opciones son posibles. Los guiaré a través de ambas opciones, sin importar cuál elijan. Luego, cuando tengamos el contenido en el proyecto, generaremos modelos de script de tipo fuertemente tipados. Tomaremos el contenido que está, o los tipos de contenido que están en el CMS, generaremos modelos en nuestro código para no tener que escribirlos manualmente y seguir trabajando con modelos de tipo fuertemente tipados en TypeScript. Luego, implementaremos una solución heurística en la página de inicio. Primero, necesitamos tener un sitio para poder hacerlo multilingüe. Este será un paso hacia hacer que el sitio web sea un poco más dinámico al tener la solución heurística. Implementaremos páginas de índice y detalle de listados. Esto será para la lista de conferencias y para el detalle de una conferencia. Veremos los métodos get static props, get static paths para que se sientan cómodos usándolos. Luego, agregaremos dos nuevos idiomas tanto en el código como en el CMS. Ahora, los sitios web multilingües, muchos desarrolladores les tienen miedo, pero no solo se trata de la implementación. Una gran parte de los sitios web multilingües se han centrado en el servidor donde se administra el contenido. Así que haremos ambas cosas. Luego, ajustaremos las consultas de obtención de data que obtienen los data en nuestro proyecto para respetar el uso local y agregaremos contexto a nuestro cambio de idioma para que cuando cambien entre idiomas, el contexto de la página web en la que se encuentren se mantenga igual. Y eso es todo, creo. Ese es el plan para las próximas dos horas. Ahora, parece un poco más complicado de lo que es. Estoy seguro de que todo saldrá bien. Ahora, comencemos con algunos enlaces importantes. El enlace más importante es el repositorio de GitHub. Permítanme tomar el enlace y lo pondré en el chat para que no tengan que escribirlo desde mi pantalla, pero primero tengo que averiguar cómo deshacerme del panel de zoom. Esto funcionó, ¿verdad? Así que déjenme ponerlo allí. React advanced masterclass 2022. Así que lo puse tanto en el chat como en Discord. Ahí es donde están todos los data del masterclass. No se trata solo del código del sitio web, sino que también hay un archivo llamado links.txt donde encontrarán todos los demás enlaces que aparecen en la presentación. Todo está ahí. También hay un archivo llamado workshop.pdf donde está la presentación que les estoy mostrando convertida a PDF. Así que si quieren retroceder o avanzar una página, está perfectamente bien hacerlo en ese PDF y hay un paquete content.zip que deberán importar el contenido en el CMS. ¿Alguien puede confirmar que pueden acceder al repositorio? Lo hice público, pero espero que GitHub no. Sí, pueden. Perfecto. Bien, eso es el primer enlace importante. Otro enlace importante es el registro de Content.ai. Pondré este enlace también en el chat. Creo que solo este es suficiente. Si no han iniciado sesión, los llevará al registro. De todos modos, déjenme ponerlo allí. Obviamente, cuando vaya allí, ingresaré directamente a la aplicación porque ya he iniciado sesión. Oh, este no es el proyecto correcto. Lo cambiaremos en un segundo. Pero déjenme abrir una ventana privada. Creo que esto nos llevará al registro. ¿Verdad? Solo tienen que hacer clic en unirse aquí. Y proporcionar su correo electrónico, contraseña y crear su cuenta. No se necesita tarjeta de crédito, solo su dirección de correo electrónico y tal vez alguna información adicional. Y deberían poder hacer eso rápidamente y entrar directamente a la aplicación. Creo que el proyecto se llamaba blog de conferencias. Perfecto. Entonces, lo que verán cuando se registren, nuevamente, si no quieren registrarse, está bien. Compartiré mi ID de proyecto con ustedes. Pueden trabajar en VS code. Podemos trabajar con ese ID de proyecto. Si desean registrarse, les daré unos minutos para hacerlo. Cuando se registren y vean, ya saben, entren a la aplicación, probablemente verán una pantalla vacía. Ya tengo algo de contenido aquí, pero si ven una pantalla vacía, está bien. Les mostraré cómo importar contenido en ese proyecto en un momento. Y por supuesto, mientras se registran, también pueden clonar el repositorio.

Watch more workshops on topic

Construye una aplicación WordPress sin cabeza con Next.js y WPGraphQL
React Summit 2022React Summit 2022
173 min
Construye una aplicación WordPress sin cabeza con Next.js y WPGraphQL
Top Content
WorkshopFree
Kellen Mace
Kellen Mace
En esta masterclass, aprenderás cómo construir una aplicación Next.js que utiliza Apollo Client para obtener datos de un backend de WordPress sin cabeza y usarlo para renderizar las páginas de tu aplicación. Aprenderás cuándo debes considerar una arquitectura de WordPress sin cabeza, cómo convertir un backend de WordPress en un servidor GraphQL, cómo componer consultas usando el IDE GraphiQL, cómo colocar fragmentos GraphQL con tus componentes, y más.
Next.js 13: Estrategias de Obtención de Datos
React Day Berlin 2022React Day Berlin 2022
53 min
Next.js 13: Estrategias de Obtención de Datos
Top Content
WorkshopFree
Alice De Mauro
Alice De Mauro
- Introducción- Prerrequisitos para la masterclass- Estrategias de obtención: fundamentos- Estrategias de obtención – práctica: API de obtención, caché (estática VS dinámica), revalidar, suspense (obtención de datos en paralelo)- Prueba tu construcción y sírvela en Vercel- Futuro: Componentes de servidor VS Componentes de cliente- Huevo de pascua de la masterclass (no relacionado con el tema, destacando la accesibilidad)- Conclusión
Crear un Sitio Web Editable Visualmente con Next.js Utilizando React Bricks, con Blog y Comercio Electrónico
React Summit 2023React Summit 2023
139 min
Crear un Sitio Web Editable Visualmente con Next.js Utilizando React Bricks, con Blog y Comercio Electrónico
WorkshopFree
Matteo Frana
Matteo Frana
- React Bricks: por qué lo construimos, qué es y cómo funciona- Crear una cuenta gratuita- Crear un nuevo proyecto con Next.js y Tailwind- Explorar la estructura de directorios- Anatomía de un Brick- Crear un nuevo Brick (Texto-Imagen)- Agregar un título y descripción con edición visual RichText- Agregar una imagen con edición visual- Agregar controles de barra lateral para editar props (padding y lado de la imagen)- Anidar Bricks usando el componente Repeater- Crear un brick de galería de imágenes- Publicar en Netlify o Vercel- Tipos de página y campos personalizados- Acceder a los valores meta de la página- Internacionalización- Cómo reutilizar contenido en varias páginas: Historias e Incrustaciones- Cómo crear un comercio electrónico con datos de productos de una base de datos externa y páginas de destino creadas visualmente en React Bricks- Funciones empresariales avanzadas: permisos flexibles, estructura bloqueada, componentes visuales personalizados
Construyendo Sitios Web Ultrarrápidos con Next.js y Sanity.io
React Summit 2023React Summit 2023
71 min
Construyendo Sitios Web Ultrarrápidos con Next.js y Sanity.io
WorkshopFree
Nancy Du
Nataliya Ioffe
2 authors
Únete a nosotros en un masterclass práctico donde te mostraremos cómo mejorar tus habilidades de React para construir un sitio web sin cabeza de alto rendimiento utilizando Next.js, Sanity y la arquitectura JAMstack. No se requiere conocimiento previo de Next.js o Sanity, lo que hace que este masterclass sea ideal para cualquier persona familiarizada con React que quiera aprender más sobre la construcción de sitios web dinámicos y receptivos.
En este masterclass, exploraremos cómo Next.js, un framework basado en React, se puede utilizar para construir un sitio web estático con renderizado del lado del servidor y enrutamiento dinámico. Aprenderás cómo utilizar Sanity como un CMS sin cabeza para gestionar el contenido de tu sitio web, crear plantillas de página personalizadas con Next.js, utilizar APIs para integrarte con el CMS y desplegar tu sitio web en producción con Vercel.
Al final de este masterclass, tendrás una comprensión sólida de cómo Next.js y Sanity.io pueden utilizarse juntos para crear un sitio web de alto rendimiento, escalable y flexible.
Masterclass de GraphQL en la Nube con Neo4j Aura, Next.js y Vercel
GraphQL Galaxy 2021GraphQL Galaxy 2021
161 min
Masterclass de GraphQL en la Nube con Neo4j Aura, Next.js y Vercel
WorkshopFree
William Lyon
William Lyon
En este masterclass construiremos y desplegaremos una aplicación de GraphQL de pila completa utilizando Next.js, Neo4j y Vercel. Utilizando un grafo de conocimiento de artículos de noticias, primero construiremos una API de GraphQL utilizando las rutas de API de Next.js y la Biblioteca de GraphQL de Neo4j. A continuación, nos enfocaremos en el front-end, explorando cómo utilizar GraphQL para la obtención de datos con una aplicación de Next.js. Por último, exploraremos cómo agregar personalización y recomendación de contenido en nuestra API de GraphQL para servir artículos relevantes a nuestros usuarios, luego desplegaremos nuestra aplicación en la nube utilizando Vercel y Neo4j Aura.

Tabla de contenidos:
- Visión general de Next.js y cómo empezar con Next.js
- Rutas de API con Next.js y construcción de una API de GraphQL
- Utilizando la Biblioteca de GraphQL de Neo4j
- Trabajando con Apollo Client y obtención de datos de GraphQL en Next.js
- Despliegue con Vercel y Neo4j Aura
Masterclass de alto rendimiento Next.js
React Summit 2022React Summit 2022
50 min
Masterclass de alto rendimiento Next.js
Workshop
Michele Riva
Michele Riva
Next.js es un marco convincente que facilita muchas tareas al proporcionar muchas soluciones listas para usar. Pero tan pronto como nuestra aplicación necesita escalar, es esencial mantener un alto rendimiento sin comprometer el mantenimiento y los costos del servidor. En este masterclass, veremos cómo analizar el rendimiento de Next.js, el uso de recursos, cómo escalarlo y cómo tomar las decisiones correctas al escribir la arquitectura de la aplicación.

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Enrutamiento en React 18 y más allá
React Summit 2022React Summit 2022
20 min
Enrutamiento en React 18 y más allá
Top Content
Concurrent React y Server Components están cambiando la forma en que pensamos sobre el enrutamiento, la renderización y la obtención de datos en las aplicaciones web. Next.js recientemente compartió parte de su visión para ayudar a los desarrolladores a adoptar estas nuevas características de React y aprovechar los beneficios que desbloquean.En esta charla, exploraremos el pasado, presente y futuro del enrutamiento en las aplicaciones de front-end y discutiremos cómo las nuevas características en React y Next.js pueden ayudarnos a arquitectar aplicaciones más eficientes y con más funciones.
El Nuevo Enrutador de Aplicaciones de Next.js
React Summit 2023React Summit 2023
27 min
El Nuevo Enrutador de Aplicaciones de Next.js
Next.js 13.4 lanzó recientemente la versión estable del "Enrutador de Aplicaciones" - un cambio transformador para el núcleo del framework. En esta charla, compartiré por qué hicimos este cambio, los conceptos clave que debes conocer y por qué estoy emocionado por el futuro de React.
Una Guía Práctica para Migrar a Componentes de Servidor
React Advanced Conference 2023React Advanced Conference 2023
28 min
Una Guía Práctica para Migrar a Componentes de Servidor
Los Componentes de Servidor son la nueva gran cosa, pero hasta ahora gran parte del discurso a su alrededor ha sido abstracto. Cambiemos eso. Esta charla se centrará en el lado práctico de las cosas, proporcionando un mapa de ruta para navegar el viaje de migración. Comenzando desde una aplicación que utiliza el antiguo enrutador de páginas de Next.js y React Query, desglosaremos este viaje en un conjunto de pasos accionables e incrementales, deteniéndonos solo cuando tengamos algo que se pueda enviar y que sea claramente superior a lo que comenzamos. También discutiremos los próximos pasos y estrategias para adoptar gradualmente más aspectos de este paradigma transformador.
No sabes cómo hacer SSR
DevOps.js Conf 2024DevOps.js Conf 2024
23 min
No sabes cómo hacer SSR
Un recorrido por la evolución del SSR en los últimos doce años. Cubriremos cómo han cambiado las técnicas, los problemas típicos, las herramientas que puedes utilizar y diversas soluciones, todo desde el punto de vista de mi experiencia personal como consumidor y mantenedor.
Cómo manejar correctamente los cambios de URL slug en Next.js
TypeScript Congress 2022TypeScript Congress 2022
10 min
Cómo manejar correctamente los cambios de URL slug en Next.js
Top Content
Si estás utilizando un CMS sin cabeza para almacenar contenido, también trabajas con URL slugs, las últimas partes de cualquier URL. El problema es que los editores de contenido pueden cambiar libremente los slugs, lo que puede causar errores 404, pérdida de rangos de página, enlaces rotos y, al final, visitantes confundidos en tu sitio. En esta charla, presentaré una solución para mantener un historial de URL slugs en el CMS y explicaré cómo implementar un mecanismo de redirección adecuado (¡usando TypeScript!) para páginas generadas dinámicamente en un sitio web de Next.js.

Añadir a las notas de la charla: https://github.com/ondrabus/kontent-boilerplate-next-js-ts-congress-2022 
Eliminando BFFs con GraphQL y Next.js
React Advanced Conference 2021React Advanced Conference 2021
21 min
Eliminando BFFs con GraphQL y Next.js
Top Content
Las aplicaciones de Frontend se están volviendo cada vez más complicadas, a menudo entregando mucho más que solo una interfaz de usuario. Con esta creciente complejidad surge una creciente necesidad de conocimiento por parte de los desarrolladores que la crean, ya que tienen que lidiar con asuntos como la gestión de estados, autorización, enrutamiento y más. En esta charla, te mostraré cómo usar GraphQL en tu aplicación Next.js para crear una capa de datos para tu aplicación, que existe entre tu frontend y tu backend. En esta capa de datos, puedes manejar asuntos complejos para ayudarte a mantener tu aplicación de frontend limpia y "estúpida".