All options at a glance
Side-by-Side
All three solutions compared on what matters: blog, shop, costs, speed, and postwachstum values.
For Your Editorials: The Content Story
| Current (WP + DIVI) | Sol. 1 (WP headless) | Sol. 2 (Ghost) | Sol. 3 (Nuxt Content) | |
|---|---|---|---|---|
| Content editor | WordPress wp-admin | WordPress wp-admin | Ghost editor | Nuxt Studio / Markdown |
| Writing experience | Gutenberg + DIVI builder | Gutenberg (cleaner) | Ghost (excellent, focused) | Nuxt Studio or any text editor |
| Migration effort | — | None (stays in WP) | One-time export to Ghost | One-time export to markdown |
| Image handling | Manual upload + DIVI | WP media library | Ghost image cards | Nuxt Image (auto-optimized) |
| Categories & tags | 16 categories (DIVI styled) | 16 categories (WP) | Ghost tags (flexible) | Frontmatter tags (flexible) |
| Gallery support | WP gallery + DIVI | WP gallery via API | Ghost gallery card | Vue gallery component |
| RSS feed | WordPress built-in | WordPress built-in | Ghost built-in | Nuxt Content built-in |
| Newsletter tie-in | Plugin (Mailchimp etc.) | Plugin (Mailchimp etc.) | Ghost built-in newsletters | Buttondown / Mailchimp / any |
| SEO per post | Yoast plugin | Yoast API data | Ghost built-in SEO | useSeoMeta() per page |
| Content versioning | WP revisions | WP revisions | Ghost revisions | Git history (every change tracked) |
| Blog hosting cost | Included in WP hosting | Included in WP hosting | Ghost ~$9/mo or self-host | Free (files in repo) |
| DIVI markup | ~2MB per page | Gone (clean API data) | Gone (migrated to Ghost) | Gone (clean markdown) |
For the Shop: The Revenue Story
| Current (WooCommerce) | Sol. 1 (WooCommerce) | Sol. 2 (Stripe) | Sol. 3 (Stripe) | |
|---|---|---|---|---|
| Shop platform | WooCommerce | WooCommerce (headless) | Stripe Checkout | Stripe Checkout |
| Product management | wp-admin | wp-admin | Stripe Dashboard | Stripe Dashboard |
| Subscriptions | WooCommerce Subs (CHF 23/mo) | WooCommerce Subs (CHF 23/mo) | Stripe Billing (free) | Stripe Billing (free) |
| Shipping rates | WooCommerce zones | WooCommerce zones | Stripe Checkout rates | Stripe Checkout rates |
| TWINT | Plugin | Plugin | Stripe native | Stripe native |
| Customer portal | My Account page | My Account via API | Stripe Customer Portal | Stripe Customer Portal |
| Cart needed? | Yes (WooCommerce) | Yes (WooCommerce) | No (direct checkout) | No (direct checkout) |
| Transaction fees | Payment gateway fees | Payment gateway fees | 2.9% + CHF 0.30 | 2.9% + CHF 0.30 |
| Shop server cost | Included in WP hosting | Included in WP hosting | CHF 0 (Stripe hosted) | CHF 0 (Stripe hosted) |
For Business People: The Numbers
| Current | Sol. 1 | Sol. 2 | Sol. 3 | |
|---|---|---|---|---|
| Monthly cost (total) | CHF 45–80 | CHF 30–40 | CHF 9–15 | CHF 0–5 |
| Setup effort | Already done | 4–6 weeks | 4–6 weeks | 4–6 weeks |
| Maintenance | High | Medium | Low | Very low |
| Speed (blog + shop) | 3–6 sec | < 2 sec | < 1 sec | < 1 sec |
| Security risk | Higher | Medium | Low | Very low |
| Server needed? | Yes (24/7) | Yes (WP backend) | Ghost only | No |
| Systems to manage | 1 (does everything) | 2 (WP + Nuxt) | 2 (Ghost + Stripe) | 1 project + Stripe |
For Postwachstum Values
| Current | Sol. 1 | Sol. 2 | Sol. 3 | |
|---|---|---|---|---|
| Energy consumption | 🔴 High (24/7 server) | 🟡 Medium (smaller server) | 🟢 Low (Ghost only) | 🟢 Lowest (no server) |
| Data minimalism | � WP stores more than needed | 🟡 WP stores some | 🟢 Ghost + Stripe only | 🟢 Only Stripe (payments) |
| Open source | 🟢 WordPress is OS | 🟢 Both are OS | 🟡 Ghost OS, Stripe not | 🟢 Nuxt is OS, Stripe not |
| Simplicity | � All-in-one (complex under the hood) | 🟡 Two coupled systems | 🟢 Clean separation | 🟢 Simplest possible |
| Vendor independence | 🟡 Themes/plugins lock-in | 🟡 Two ecosystems | 🟢 Content portable | 🟢 Markdown = ultimate portability |
| Carbon footprint | 🔴 Always-on server | 🟡 Smaller server | 🟢 Mostly static CDN | 🟢 Static CDN only |
| Build only what you need | � Plugin-based (flexible but heavy) | 🟡 Still WP overhead | 🟢 Purpose-built tools | 🟢 Nothing unneeded |
For Design People: What Changes
| Feature | Current | Solution 3 |
|---|---|---|
| Design freedom | DIVI builder templates | Complete CSS freedom |
| Page load | ~2MB per page (DIVI overhead) | Light (50–200KB) |
| Mobile experience | DIVI responsive settings | Built mobile-first |
| Typography | DIVI font options | Any font, full control |
| Animation | DIVI scroll effects | CSS/JS/Vue transitions |
| Image optimization | Manual or plugin | Automatic (Nuxt Image) |
| Editorial layouts | DIVI templates | Custom Vue components |
Cost Comparison Over 3 Years
| Current | Sol. 1 | Sol. 2 | Sol. 3 | |
|---|---|---|---|---|
| Year 1 (incl. build) | CHF 600–960 | CHF 5,360–8,480 | CHF 4,100–7,180 | CHF 3,500–5,560 |
| Year 2 | CHF 600–960 | CHF 360–480 | CHF 108–180 | CHF 0–60 |
| Year 3 | CHF 600–960 | CHF 360–480 | CHF 108–180 | CHF 0–60 |
| 3-Year Total | CHF 1,800–2,880 | CHF 6,080–9,440 | CHF 4,316–7,540 | CHF 3,500–5,680 |
Content Companion Ideas
Nuxt Content Editorial Archive
Convert all ~490 editorials to markdown with frontmatter. Full-text search, category filtering, and beautiful image galleries. Each editorial becomes a lightning-fast page with perfect SEO.
Nuxt Studio Visual Editor
A browser-based visual editor for your Nuxt Content files. Drag-and-drop components, live preview, and direct git commits. Write and publish without touching code.
Issue Archive & Flipbook
A beautiful browsable archive of all issues. Click an issue to see its editorials, covers, and table of contents. Optional: embed a PDF flipbook preview of selected pages.
Editorial Newsletter
Use Buttondown (free up to 100 subs) or Mailchimp to send a newsletter when new editorials are published. Ties into Stripe for subscriber-only content down the road.
Behind-the-Scenes Blog
A separate blog section for shoot diaries, stylist interviews, location scouting. More personal, more frequent, more shareable on social media.
Social Media Auto-Cards
Auto-generate Open Graph images for every editorial using @nuxt/og-image. Beautiful social cards with cover photo, title, and Schön! branding when shared.
Our Recommendation: Solution 3
1. Your blog is the soul — and it's ready to shine
490 editorials across 16 categories. That's 98% of your site. With Nuxt Content, each editorial becomes a fast, beautiful, SEO-friendly page. Clean markup. No database. No monthly fee to host your own words.
2. Your shop is simple — and it should stay that way
6 products, 1 subscription, 3 shipping zones. Stripe handles this elegantly with zero infrastructure on your side. Simpler than WooCommerce, fewer moving parts, lower maintenance.
3. Two jobs, one project, no overhead
Blog and shop live in one Nuxt project. One deployment. One repository. One mental model. But each uses the right tool: markdown for content, Stripe for payments.
4. Running costs drop to nearly zero
From CHF 45–80/month for the combined blog + shop to CHF 0–5/month. Over 3 years, that's CHF 1,500–2,700 saved — just in hosting.
5. Security becomes simpler
No WordPress updates for the blog. No WooCommerce patches for the shop. Static files have virtually no attack surface. Stripe handles payment security.
6. Performance becomes world-class
Both editorials and shop pages load in under 1 second. For a magazine about beauty and aesthetics, speed is part of the brand.
7. Most postwachstum choice
Minimal infrastructure for the blog. Minimal infrastructure for the shop. Minimal energy, minimal data collection, minimal maintenance. Build only what you need — for both jobs.
When we would NOT recommend Solution 3
- • If you plan to add dozens of products (merch, accessories, prints)
- • If you need complex discount codes, gift cards, or inventory management
- • If your team loves the WordPress admin dashboard and won't consider any alternative editing tool
For your current needs — 490 editorials and 6 products? Solution 3 handles both jobs beautifully.