WPGraphQL extension that exposes the data a headless Next.js frontend needs to render Gutenberg content 1:1 with the WordPress backend: per-URI enqueued scripts and stylesheets, theme.json globalStyles, font faces, the import map, and the resolved content body.
This is the WordPress half of NextPress. The matching Next.js consumer ships as the @axistaylor/nextpress npm package.
- WordPress 6.0+
- PHP 7.4+
- WPGraphQL 1.27.0+
The plugin is published on Packagist as axistaylor/nextpress and registered as a wordpress-plugin type, so Composer-managed WordPress installs (Bedrock, johnpbloch/wordpress, or any setup that has composer/installers configured) will land it in wp-content/plugins/nextpress/ automatically:
composer require axistaylor/nextpressTo pin to a specific version:
composer require axistaylor/nextpress:^1.2If your site doesn't already have composer/installers set up, add it alongside the plugin and tell composer where wordpress-plugin packages belong:
{
"require": {
"axistaylor/nextpress": "^1.2",
"composer/installers": "^2.0"
},
"extra": {
"installer-paths": {
"wp-content/plugins/{$name}/": ["type:wordpress-plugin"]
}
}
}Then activate the plugin:
wp plugin activate nextpressDownload the latest nextpress.zip from the Releases page and upload it via Plugins → Add New → Upload Plugin in your WordPress admin, or extract it into wp-content/plugins/nextpress/ directly.
After activating the plugin, the WPGraphQL schema gains:
assetsByUri(uri: String!)— enqueued scripts, stylesheets, and import map for a specific URI, simulated as if WordPress had rendered that page.globalStyles— theme.json compiled stylesheet, custom CSS, rendered@font-facedeclarations, and structured font-face data.templateByUri(uri: String!)— body classes, resolved content, and node-by-URI info for a single URI.
See the WordPress plugin docs for the full schema reference and example queries.
- Source repository — the monorepo this plugin lives in
- Distribution repository — the tagged snapshots Packagist serves from
- Documentation
- Issue tracker