Vibe Code a News Magazine Website
Free vibe coding prompt to build a WordPress news magazine. Multi-author workflow, breaking news bar, sections, ad zones, newsletter, and Article schema. Complete editorial setup.
Plan and produce a complete WordPress site architecture for a multi-author
news / magazine site, including editorial workflow, monetization, and
sitemap. Output should be production-ready.
═══════════════════════════════════════════════════════════════
BUSINESS DETAILS
═══════════════════════════════════════════════════════════════
- Publication name: [PUBLICATION NAME]
- Coverage: [TOPIC + GEOGRAPHY, e.g., independent tech reporting / local
news for CITY / culture and politics in REGION]
- Editorial cadence: daily news + 2 weekly features + 1 newsletter
- Team: editor-in-chief + 3-5 staff writers + freelancers + photographers
- Monetization: subscriptions + display ads + sponsorships + donations
- Audience: [READER PROFILE]
- Existing assets: logo, brand colors (optional)
═══════════════════════════════════════════════════════════════
BRAND
═══════════════════════════════════════════════════════════════
- Brand colors: deep ink (#0a0a0a) + warm cream (#f8f4ee) + single editorial
accent (red #d6262a, newsroom convention) + muted slate (#5a606e) for
meta. Override if user provides.
- Type stack: high-contrast serif for display + body in print-quality serif
(e.g., Source Serif Pro, Newsreader, or Tiempos alternative, Lora) +
Inter Tight for small UI + condensed sans (Roboto Condensed) for
uppercase eyebrows.
═══════════════════════════════════════════════════════════════
WORDPRESS STACK
═══════════════════════════════════════════════════════════════
- Theme: Newspack (free open-source news theme by Automattic) OR custom
block theme. Recommend Newspack and justify.
- Plugins (WP-CLI):
wp plugin install --activate
newspack-blocks
newspack-newsletters
co-authors-plus
publishpress
wordpress-seo-news
wp-rocket
shortpixel-image-optimiser
Optional:
- PublishPress Authors (already by PP)
- Stripe Tax (for subscriptions)
- Newspack Memberships OR Memberful integration
═══════════════════════════════════════════════════════════════
EDITORIAL DATA MODEL
═══════════════════════════════════════════════════════════════
- Posts (the main content type), with custom post statuses:
Draft → In Review → Edit → Schedule → Published → Archived
- CPTs beyond posts:
- `event`, community events
- `obituary`, local news special category
- `review`, restaurant/book/film reviews
- Taxonomies:
- Categories (5-6 max, News, Features, Opinion, Reviews, Events,
Newsletter)
- Tags (granular topics)
- Locations (custom hierarchical taxonomy if local news)
- Story types (Breaking / Investigative / Analysis / Profile / Q&A)
═══════════════════════════════════════════════════════════════
EDITORIAL WORKFLOW
═══════════════════════════════════════════════════════════════
- Use PublishPress for: editorial calendar, custom statuses, notifications
when status changes, editorial comments
- Co-Authors Plus for multi-byline articles
- Required fields before publish: featured image (1200x800 min), excerpt,
category, primary tag, SEO title, meta description
- Editorial style guide accessible in dashboard (custom admin page)
- Story slugs: kebab-case, max 70 chars
- Image credits required (custom field on every image attachment)
═══════════════════════════════════════════════════════════════
SITE MAP
═══════════════════════════════════════════════════════════════
1. Home (newsroom-style)
2. Section indices: News / Features / Opinion / Reviews / Events
3. Article (single)
4. Author archive
5. Tag archive
6. Date archive (year + month)
7. Search results
8. Newsletter signup
9. Subscribe (paywall + benefits)
10. About / Masthead (the team)
11. Contact / Tips
12. Corrections policy
13. Ethics policy
14. Privacy policy
15. Login / Subscriber dashboard
═══════════════════════════════════════════════════════════════
THEME.JSON
═══════════════════════════════════════════════════════════════
Output complete theme.json with:
- color palette (ink, cream, editorial accent, muted slate)
- 5-step type scale: display 64, h1 48, h2 32, h3 22, body 18
- spacing scale: 8-step rhythm
- block defaults: heading (serif, line-height 1.15), paragraph (serif,
line-height 1.7), button (small pill, ink → accent on hover), quote
(display italic, large)
- registered patterns: breaking news bar, lead-story hero, 2-column
section block, article card (small), article card (large), pull-quote,
inline newsletter signup, ad slot, related articles
═══════════════════════════════════════════════════════════════
HOME PAGE, BLOCK MARKUP
═══════════════════════════════════════════════════════════════
1. Breaking news bar (sticky, configurable from admin via custom block) -
shows when "BREAKING" tag exists on a post less than 4 hours old
2. Header: masthead with publication name (display serif), nav with
sections, search icon, "Subscribe" small button, "Sign in" text link
3. Lead story: full-width hero with main image, category eyebrow, large
serif headline, dek (2-line subhead), byline + date + read time
4. 2-column section: "Latest" (5 stories) | "Most read" (5 stories)
5. Per-section blocks (each section has its own 3-up grid with
"See all [section] →" link)
6. Sponsored content row (always clearly labeled, different background
color, slate tint, to separate editorial)
7. Newsletter signup band (large, with photo of editor + tagline)
8. Footer: 4 columns (sections, about, ethics, social) + masthead small,
ICANN privacy notice, copyright
═══════════════════════════════════════════════════════════════
ARTICLE PAGE
═══════════════════════════════════════════════════════════════
- Sticky thin progress bar at top (CSS-only: scroll position)
- Category eyebrow + headline (display serif, large) + dek + byline (with
Co-Authors Plus links) + date + read time + share icons
- Featured image (full-bleed, max 1400px) with caption + photo credit
in muted slate
- Article body: serif 18px, line-height 1.7, generous margins
- Pull-quote block style: large italic serif, accent-color vertical rule
- Inline image rules: full-bleed for landscape, centered + max 800 for
portraits, always with caption + credit
- Newsletter signup inline at ~50% scroll depth
- Author bio at end (photo + name + bio + "Read more by [NAME]" link)
- "Related articles" grid (4 cards)
- Sticky footer share bar on mobile
- Comments: native or Disqus; moderation required
═══════════════════════════════════════════════════════════════
MONETIZATION
═══════════════════════════════════════════════════════════════
- Subscription tiers (Memberful or Newspack Memberships): Free (limited),
Reader ($/month), Patron ($$/month, includes ad-free + monthly
events), Founding ($$$ one-time)
- Paywall: metered (5 free articles/month) OR hard paywall on Opinion +
Long Reads (mark paywalled articles in editor)
- Ad zones: leaderboard (above article), in-article (between paragraphs
5-6), sidebar (sticky on desktop), footer
- Donations via Give plugin (one-time + recurring)
- Sponsorship slots in newsletter (Newspack Newsletters integrates)
═══════════════════════════════════════════════════════════════
NEWSLETTER
═══════════════════════════════════════════════════════════════
- Use Newspack Newsletters (built on Mailchimp/Active Campaign/Constant
Contact), writes directly inside WordPress
- Newsletters: Daily Brief, Weekly Editor's Letter, Sponsored "From Our
Partners"
- Signup forms in 3 placements: inline article (50% scroll), homepage
band, footer
- Welcome series (3 emails): "Why we exist" / "How to support us" /
"Editor's top picks this week"
═══════════════════════════════════════════════════════════════
SEO & SCHEMA
═══════════════════════════════════════════════════════════════
- Yoast SEO News add-on for Google News optimization
- Schema: NewsArticle (every article), Person (author), Organization,
BreadcrumbList, NewsMediaOrganization on home
- Google News sitemap
- News-specific XML sitemap (last 2 days of content)
- Open Graph image auto-generated if no featured image
- Article date AND modified date marked explicitly
ADDITIONAL SEO REQUIREMENTS (implement all of these):
On-Page SEO for Every Page:
- Yoast/RankMath meta title template: "[Page Title] | [Site Name]" (under 60 chars)
- Meta description per page: 150-160 chars, include primary keyword + CTA
- Exactly ONE H1 per page — use the real, human headline; keep keywords in the title and meta, not the visible H1
- Logical H2 > H3 heading hierarchy, never skip a level
- Headings should include secondary keywords naturally,
keep the section's real, human label (keywords in title and meta, not stuffed headings)
- Every image must have a descriptive alt attribute with keywords
- Internal links between related content using descriptive anchor text
Structured Data (JSON-LD via Yoast/RankMath + manual where needed):
- Primary schema types: NewsMediaOrganization, Article, Person
- BreadcrumbList on all pages
- FAQPage schema on any page with an FAQ/accordion section
- Article schema on all blog posts (auto via Yoast)
- Validate schema with Google Rich Results Test before launch
Open Graph & Social Sharing:
- og:title, og:description, og:image, og:url on every page
- twitter:card=summary_large_image on every page
- Default OG image set in Yoast; per-page overrides for key landing pages
- OG images should be 1200x630px, branded, with clear text
Content SEO:
- Write real, useful body copy for every page (not just headings and CTAs).
Every major section needs at least 2-3 sentences of descriptive text
that search engines can index.
- Blog content strategy: 10 seed articles targeting long-tail keywords
related to "news / magazine". List the titles and target keywords.
- Use the primary keyword once or twice where it reads naturally; keep the rest in titles and meta, never stuffed.
- Every CTA should use descriptive anchor text with the service keyword.
Technical SEO:
- XML sitemap split by post type (auto via Yoast)
- Canonical tags on all pages (auto via Yoast)
- robots.txt: allow all, point to sitemap
- 301 redirects plan for any renamed/moved content
- Breadcrumbs enabled via Yoast + schema
- Clean permalinks: pick one post-permalink base that fits the site (do not force /blog/ on a post-centric site); /%postname%/ is fine for pages
- Lazy load all images below the fold, eager load hero/LCP image
- Core Web Vitals targets: LCP < 2.5s, CLS < 0.1, INP < 200ms
SECURITY, ACCESSIBILITY & HONESTY (required):
- Escape all output (esc_html/esc_url/esc_attr), sanitize all input (sanitize_text_field + wp_unslash), and use a nonce + current_user_can() on every form handler and custom action. Emit JSON-LD with wp_json_encode().
- Target WCAG 2.2 AA: visible :focus-visible states, <label for> on every field, full keyboard operability, and @media (prefers-reduced-motion: reduce) around all motion.
- Never fabricate business data, testimonials, ratings, credentials, or stats; leave labeled {{TODO}} placeholders for anything the user has not supplied.
- PLUGIN INSTALL: some listed plugins are premium or not in the wordpress.org directory, so a single `wp plugin install` will error out. Split the list into free (wp.org) vs premium (upload/license), verify each slug, and note that gallery/group ACF fields and ACF Blocks need ACF Pro.
- Commit to ONE paradigm: a block theme (theme.json + block templates) OR a classic theme/builder — never mix them. If a plugin already owns a post type or feed (inventory, sermons, courses, job listings, podcast feeds), extend it — do not re-declare that CPT or emit a second, conflicting schema block.
═══════════════════════════════════════════════════════════════
PERFORMANCE
═══════════════════════════════════════════════════════════════
- Heavy content site, cache everything not personalized
- WP Rocket + object cache (Redis), required
- Cloudflare in front (cache everything except /wp-admin and logged-in)
- Image CDN with adaptive resizing (Cloudflare Images or Imgix)
- AMP optional (official AMP plugin), required if heavy Google News
traffic
- Defer Disqus / ads until interaction or after first paint
═══════════════════════════════════════════════════════════════
ANTI-PATTERNS TO AVOID
═══════════════════════════════════════════════════════════════
- No emojis in headlines (even in social cards)
- No clickbait headlines ("You won't believe...")
- No script fonts or comic decorative type
- No autoplay videos in articles
- No "Read more about this topic" with 30 vague links, be selective
- No real partner logos in sponsored slots without clear "Sponsored" label
- No fake bylines (every author must be a real, attributed person)
- No comment sections without moderation policy
- No popups that block reading
- No infinite-scroll homepage that prevents footer access
═══════════════════════════════════════════════════════════════
DELIVERABLE
═══════════════════════════════════════════════════════════════
Produce, in order:
1. Sitemap tree
2. WP-CLI commands
3. Newspack setup walkthrough
4. theme.json (complete)
5. Editorial workflow with PublishPress configuration
6. Block markup for homepage
7. Block markup for article template
8. Newsletter setup (forms + welcome series)
9. Paywall configuration
10. Ad zones layout
11. Launch checklist (20 items)
This prompt gives ChatGPT or Claude a full WordPress build plan for a news or magazine site — the kind with a busy front page, multiple sections, a stable of writers, and ad slots that have to load without wrecking the reading experience. It specifies a section-based homepage, article templates with bylines and reading time, author archives, and defined ad placement zones as Gutenberg block markup. You get a plan for a publication that can post ten times a day without turning into a mess.
What does the news and magazine website prompt build?
The plan lays out a newsroom homepage with a breaking-news bar and section blocks, section index pages, article templates with byline, publish and updated dates, and reading time, and author archive pages for each writer. It specifies a newsletter signup, related-article blocks, and dedicated ad zones in the header, sidebar, and mid-article so ad code does not get pasted at random. Article and NewsMediaOrganization structured data is built in so Google News and Top Stories can read your headlines, authors, and publish dates. Handing this to our WordPress build service gets you the same structure without the assembly.
Who is this news and magazine prompt for?
It is written for independent news startups, niche trade publications, local newsrooms, and online magazines that publish daily and run more than one writer. It assumes an editorial calendar and multiple authors, not a single-author personal blog.
What’s inside the prompt?
- A business details block for your publication name, sections, editorial voice, and coverage area
- A plugin stack for publishers: multi-author bylines, a news-aware SEO plugin, a newsletter integration, and caching built for traffic spikes
- A data model with section and topic taxonomies and an optional custom post type for live blogs
- Gutenberg block markup for the section homepage, article template, and author archive
- Defined ad placement zones and a newsletter capture spec
- Article and NewsMediaOrganization structured data, a Google News-ready sitemap, and a section-level keyword plan
- Core Web Vitals targets for ad-heavy pages and a launch checklist
Frequently asked questions
Does the site support multiple writers with proper bylines?
Yes. The data model includes multi-author bylines and an author archive page for every writer, with a bio, photo, and their full article history. Each article carries a visible byline and links to the author’s page, which is both an editorial norm and a signal Google News looks for.
Where do ads go without slowing the page down?
The plan defines fixed ad zones — a leaderboard, a sticky sidebar unit, and an in-content slot — with size reservations so ads do not push text around as they load. Reserving that space is what keeps ad revenue from tanking your layout-shift score.
Will my stories be eligible for Google News and Top Stories?
The SEO section adds Article and NewsMediaOrganization structured data with headline, author, and publish and updated dates, plus a news sitemap. That is the markup Google reads to consider a site for Top Stories, though acceptance into Google News itself is a separate application on Google’s side.
Can I show a breaking-news bar and updated timestamps?
Yes. The homepage spec includes a dismissible breaking-news bar at the top, and the article template shows both a publish date and a last-updated date. For running stories, the optional live-blog post type stacks timestamped updates in reverse order.
Which AI tools work with this prompt?
ChatGPT and Claude both return the full build spec. Before you commit to WordPress for a publication, it is worth reading do you even need WordPress and a rundown of the tools we use, since a high-volume newsroom has real hosting and workflow demands.
How to actually run this.
Copy the whole thing
All of it. Do not trim it down, every line is in there for a reason.
Swap in your details
Find the BUSINESS DETAILS part and drop in the real business. Name, what they do, all of it.
Paste and wait
Drop it into Claude for the first pass, or v0 if it is a landing page. Give it a minute.
Clean it up
Tweak the boring 10 percent. Spacing, mobile, that one cringe line. Ship it.
What’s next: from generated code to a website that works
The prompt did the hard 90 percent. What’s left is the boring 10 percent that turns a folder of code into a site people can actually find and trust. Here’s the whole checklist, in order.
1. Buy a domain
Grab your name at a registrar like Namecheap, Cloudflare, or Porkbun — about $10 to $15 a year for a .com. Skip the ten-year prepay and the upsells; you just need the domain and, ideally, the free WHOIS privacy most registrars now include.
2. Put it online
If the AI built you a static site (HTML, CSS, and JavaScript), you can host it for free: drag the folder into Netlify or Vercel, or connect a GitHub repo, then point your domain at it. If it built a WordPress theme, you need WordPress hosting — pick a managed host, install WordPress, upload the theme, and connect the domain. Either way, turn on HTTPS; it’s free and automatic on every modern host.
3. Wire up the parts AI skips
Generated sites almost always ship with a contact form that goes nowhere and a fake “success” message. Connect it to a real endpoint (Formspree, Web3Forms, or a plain mailto link) so leads actually reach you. While you’re in there: add a favicon, swap the placeholder images for your own compressed photos, and open the site on your phone to catch whatever breaks on a small screen.
4. Do the basic SEO and AI-search setup
This is what gets you found on Google and cited by ChatGPT, Perplexity, and AI Overviews. The essentials: a unique title tag and meta description on every page, one clear topic per page, an XML sitemap submitted to Google Search Console, basic structured data (Organization and FAQ schema), and an llms.txt file so AI crawlers can read you. If that reads like a foreign language, our SEO optimization service does it as a flat-fee pass, and our free SEO checklist walks the DIY route step by step.
5. Make it fast
AI builders love shipping four-megabyte images and render-blocking scripts. Compress your images, lazy-load anything below the fold, and run the page through PageSpeed Insights until Core Web Vitals turn green — speed lifts both rankings and conversions, so it’s the rare fix that pays twice. Our speed optimization service handles it if you’d rather not.
6. Get found locally, and measure it
Add analytics (GA4, or a lighter option like Plausible) so you can see what’s working instead of guessing. If you serve a local area, set up a Google Business Profile and use the exact same business name, address, and phone number everywhere — that consistency is what lands you in the map pack and in local AI answers.
7. Keep it alive
A website isn’t set-and-forget, especially on WordPress. Budget for backups, security, and updates so a routine plugin update doesn’t take the site down six months from now. Our care plans cover all of it from $290 a month, or you can do it yourself — you own all the code either way.
When it’s worth handing off
If any of these steps stall you — and hosting, DNS, and SEO stall a lot of people — that’s exactly what we’re for. We build the whole thing at a flat fee, ship it live, and hand you the code on GitHub, having read every line the AI wrote. Or take the free prompts and run with it yourself. Both outcomes are genuinely fine with us.
More from the stash.
Vibe Code an Auto Repair Website
Free vibe coding prompt to build an auto repair shop website. Services, certifications, quick quote form, testimonials, and AutoRepair schema. One HTML file for…
Vibe Code a Personal Injury Law Firm Website
Free vibe coding prompt to build a personal injury law firm website. Case results, free consultation form, attorney bios, and LocalBusiness schema. One HTML…
Vibe Code a Marketing Agency Website
Free vibe coding prompt to build a WordPress marketing agency site. Services, case studies, team, free audit funnel, blog, and ProfessionalService schema. Full agency…
No free weekend? We will build it for you.
This is the exact prompt we would use. Flat fee, real deadline, code is yours.