Repository navigation
Releases
v2.0.0
Full Changelog: v1.0.7...v2.0.0
Changelog
2.0.0
Added
- Hot Module Replacement inside WordPress with
npm run dev. No proxy URL to configure, just open your WordPress site. - One-line REST API routes in PHP:
vue_theme_api_get(),vue_theme_api_post(),vue_theme_api_put(),vue_theme_api_delete(). apiandwpclients and theuseApi()/useWp()composables for calling the REST API from Vue.- Blog page with pagination, and a catch-all view that renders WordPress pages and posts or a "Page not found" message.
- Primary and Footer menu locations, rendered in Vue with router links.
window.wpVueThemeconfig passed from PHP (REST URL, nonce, site info, menus), extendable with thevue_theme_app_configfilter.- Site store (
useSiteStore) with the site title, tagline, logo and menus. sanitizeHtml()helper forv-htmland Vue Router navigation for internal links inside post content.- Admin notice when the theme has not been built yet.
vue-theme/v1/siteandvue-theme/v1/menus/{location}endpoints.
Fixed
- WordPress installed in a subdirectory (e.g.
http://localhost/mysite) now works. - Images and lazy-loaded routes now load correctly in production (assets are loaded as ES modules through the Vite manifest).
- WordPress no longer redirects unknown Vue routes to a similar looking post.
- PHP warning in the logo endpoint when the logo attachment is missing.
.wp-block-headingstyles were never applied because of wrong selectors.- Stores in
src/stores/wpwere not auto-imported. - Global styles from the demo component changed the layout of the whole site.
Changed
npm run startnow starts the Vite dev server (same asnpm run dev).npm run watchrebuilds on change.- The build entry is
src/main.js.index.htmland thepublicfolder are gone, put static files insrc/assets. - The sample custom post type is now available in the REST API.
- Updated dependencies,
npm auditreports 0 vulnerabilities.
Breaking changes
- BrowserSync is removed (
browsersync.config.js,npm run browsersync, the snippet infooter.php). - PHP functions are prefixed with
vue_theme_:get_site_title(),rest_get_custom_logo(),load_vite_assets(),load_custom_theme_settings(),load_custom_scripts()andinit_custom_post_types()were renamed. - Script and style handles changed from
theme-js/theme-csstovue-theme-app/vue-theme-app-{n}. settings.API_BASE_PATHis replaced by theapi/wpclients insrc/api/index.js.usePosts(),useGetLogo()anduseGetSiteTitle()are replaced bygetPosts(),useWp('posts')anduseSiteStore().- The posts store no longer has
post,counterandincrement(). HelloWorld.vueis removed.- Node.js 20 or newer is required.
The old wp/v2/site-title and wp/v2/logo endpoints still work but are deprecated.
v1.0.7
What's Changed
- chore: remove extra space on Author URI by @chrischase011 in #1
Full Changelog: v1.0.6...v1.0.7
v1.0.6
A ready-to-use boilerplate to build fast, modern, and reactive frontends using Vue 3 while keeping WordPress as your backend CMS.
β Features
-
β‘οΈ Plug and play -- Minimal setup required to get started
-
π Powered by Vue 3 + Vite -- Enjoy instant hot reloads and modern JS tooling
-
π WordPress REST API integration -- Fetch posts, pages, and custom content easily
-
π§© Modular structure -- Organized into components, pages, APIs, and stores
-
π Vue Router -- For SPA-style routing
-
π¦ Pinia store -- Lightweight state management
-
π¨ Scoped global styling -- Use
style.cssor bring your own preprocessor -
π Custom API utilities -- Located in
src/api/wp/for extendable data fetching -
π Theme ready -- Includes WordPress PHP files (header, footer, etc.)