WPNuxt

Nuxt 3 + headless WordPress

Easily fetch content from WordPress using composables and render it with Nuxt 3 components.
Supports Gutenberg blocks, allowing you to provide custom components for each block type.
WPNuxt is still in beta

combine the ease of use of WordPress as a CMS
with a cutting edge Nuxt frontend

Headless CMS

Fetch content from WordPress in your Vue components with powerful composables.

Render Gutenberg blocks as Vue components

Create custom components to render specific types of WordPress Gutenberg Blocks

Server-side api calls

WordPress content is fetched on the server using GraphQL api calls and cached on the server

Easy to use
Composables

Fetch posts, pages, menus or settings from WordPress with simple composables:
useWPPosts()
useWPPages()
useWPMenu({ name: "main" })
useWPGeneralSettings()
posts.vue
<script setup lang="ts">
const { data: posts } = await useWPPosts()
</script>

<template>
  <div v-for="post, index in posts" :key="index" >
    <NuxtLink :to="post.uri">
      {{ post.title }}
    </NuxtLink>
    <hr>
    {{ post.excerpt }}
  </div>
</template>
Copyright © 2024 WPNuxt