Une requête par build
L’export renvoie tous les éléments publiés d’un coup, au lieu d’une requête par page.
API de contenu
Leiho sert votre contenu au front, déjà mis en forme pour lui. WordPress reste la source unique de vérité, et votre dépôt contient du code, pas du contenu.
import { loadLeihoContent, indexLeihoContent } from 'leiho/content';
const { data } = await loadLeihoContent({ url: 'https://cms.example.com' });
const content = indexLeihoContent(data);
const home = content.byPath('/');
home.fields.hero_title;L’export renvoie tous les éléments publiés d’un coup, au lieu d’une requête par page.
Les réponses portent un ETag. Un build sans changement reçoit un 304 et ne télécharge rien.
npx leiho types écrit les déclarations TypeScript correspondant exactement au JSON que vous recevez.
Si WordPress ne répond pas, le build continue avec le dernier contenu connu et le signale.
Les images arrivent avec url, alt, sizes ; les relations avec leur chemin ; le texte riche déjà rendu.
Cache objet, caches de page et CDN sont utilisés et purgés quand le contenu change.
Un seul appel dans votre build, puis retrouvez les pages par chemin, type ou slug.
import { loadLeihoContent, indexLeihoContent } from 'leiho/content';
const { data } = await loadLeihoContent({ url: 'https://cms.example.com' });
const content = indexLeihoContent(data);
const home = content.byPath('/');
home.fields.hero_title;GET /wp-json/leiho/v1/export renvoie tout. /content filtre et pagine, /content/{id} renvoie un élément (brouillons compris pour les éditeurs connectés), /types renvoie les déclarations TypeScript.
Le contenu publié est public par défaut. Passez l’API en mode restreint et définissez LEIHO_TOKEN dans l’environnement de build.
Gratuit et open source. Essayez-le sur un vrai WordPress, dans votre navigateur.