En este tutorial te enseño paso a paso cómo conectar Node.js con la API de Gemini, utilizando la librería oficial.
npx create-next-app@latest tutorial-headless
Luego:
cd tutorial-headless
npm run dev
.env.local:
NEXT_PUBLIC_WORDPRESS_API=https://tusitio.com/wp-json/wp/v2
El prefijo NEXT_PUBLIC_ permite usar la variable tanto en el servidor como en el cliente.
lib/ y dentro un archivo wordpress.js:
const API_URL = process.env.NEXT_PUBLIC_WORDPRESS_API || "";
// fetch genérico
export async function fetchFromWP(endpoint) {
const response = await fetch(API_URL + endpoint);
if (!response.ok) {
console.error("Error:", response.statusText);
throw new Error("Error al consultar WordPress");
}
return response.json();
}
// obtener posts
export async function getPosts() {
return fetchFromWP("/posts");
}
// obtener post por slug
export async function getPostBySlug(slug) {
const posts = await fetchFromWP(`/posts?slug=${slug}`);
return posts.length ? posts[0] : null;
}
app/page.js:
import Link from "next/link";
import { getPosts } from "@/lib/wordpress";
export default async function Home() {
const posts = await getPosts();
return (
);
}
app/posts/[slug]/page.js
Y agrega lo siguiente:
import { getPostBySlug } from "@/lib/wordpress";
export default async function PostPage({ params }) {
const post = await getPostBySlug(params.slug);
if (!post) {
return
; } return (
); }
Este sitio usa Google Analytics para entender cómo se utiliza y mejorar su contenido. No usamos publicidad ni compartimos tus datos con terceros.
Política de privacidad