Fancy Product Page
Create ad-hoc bespoke WooCommerce product pages using the block editor, instead of the WooCommerce template.
by Paul Faulkner · github.com/headwalluk/fancy-product-page · website
Install
The author publishes release zips, so WP-CLI can install straight from GitHub:
wp plugin install https://github.com/headwalluk/fancy-product-page/releases/download/v1.4.0/fancy-product-page.zipReadme
Fancy Product Page
A WordPress / WooCommerce plugin that lets you display a WooCommerce product using an ordinary WordPress Page (or Post) in place of the default single-product template.
Build a rich, bespoke landing page for a product in the page editor (or a page builder such as GenerateBlocks / Elementor), associate it with a WooCommerce product, and the whole site — menus, related-product links, the shop loop — points at that page while the underlying product is still sold through WooCommerce. The plugin keeps WooCommerce's SEO structured data, permalinks, and add-to-cart behaviour working on the substituted page.
What it does
- Page-as-product — associate any published Page/Post with a product via a "Fancy Product Page" selector on the product editor.
- Permalink override — every link WordPress/WooCommerce generates for that product resolves to the chosen page instead of
/product/.... - SEO structured data — injects WooCommerce product schema.org JSON-LD into the substituted page so search engines still see a product.
- Add to cart by SKU —
?add-to-cart=<SKU>works alongside the usual numeric product ID. [add_to_cart_btn]shortcode — drop a themed add-to-cart button (by id or SKU, with quantity and price) anywhere in the page.
Requirements
- WordPress 6.0+
- WooCommerce (active)
- PHP 8.0+
Installation
- Copy the
fancy-product-pagedirectory intowp-content/plugins/. - Activate Fancy Product Page in Plugins.
- Edit a WooCommerce product, find the Fancy Product Page meta box, and choose the Page/Post to use as its front-end.
Updates
The plugin self-updates from its GitHub releases. Once installed, new tagged releases appear in Dashboard → Updates like any other plugin update. Releases are built automatically by .github/workflows/release.yml when a v*.*.* tag is pushed. Update checks can be disabled with the fancy_product_page_updater_enabled filter.
Usage
See docs/usage.md for a step-by-step walkthrough, and docs/shortcode.md for the [add_to_cart_btn] reference.
Developer documentation
The docs/ directory is the entry point for any developer picking this project up later:
- docs/architecture.md — plugin structure, classes, bootstrap, conventions
- docs/hooks.md — WordPress/WooCommerce hooks consumed, and filters this plugin provides
- docs/shortcode.md —
[add_to_cart_btn]attributes and examples - docs/usage.md — administrator walkthrough
See also CLAUDE.md for an architectural overview oriented at AI-assisted development.
Project history and active milestones: dev-notes/00-project-tracker.md. Per-version release notes: CHANGELOG.md.
License
Licensed under GPLv2 or later. Maintained by Headwall Hosting.
Read the full README on GitHub →
Releases
| Tag | Published | Asset | Downloads |
|---|---|---|---|
| v1.4.0 | Jul 24, 2026 | fancy-product-page.zip | 3 |
| v1.4.0 | Jul 24, 2026 | fancy-product-page-1.4.0.zip | 0 |
| v1.3.0 | Jul 20, 2026 | fancy-product-page.zip | 3 |
| v1.3.0 | Jul 20, 2026 | fancy-product-page-1.3.0.zip | 0 |
| v1.2.0 | Jun 10, 2026 | fancy-product-page.zip | 1 |
| v1.2.0 | Jun 10, 2026 | fancy-product-page-1.2.0.zip | 0 |