Generate lead-generation blog posts from ebook content and connect them to ads, affiliate offers, and the independent site without breaking YMYL trust.
Every new post MUST be classified into a 2-level path:
Stage: prevention | treatment | rehabilitation
Dimension: exercise | diet | emotion | sleep
Final path format MUST be:
docs/blog/{stage}/{dimension}/{slug}.md (ZH)
docs/blog/{stage}/{dimension}/{slug}-en.md (EN)
Do not keep duplicate top-level copies under docs/blog/{slug}.md once migrated.
Index sync is mandatory for each published pair:
docs/blog/index.md and docs/blog/index-en.md
docs/blog/{stage}/index.md and docs/blog/{stage}/index-en.md
docs/blog/{stage}/{dimension}/index.md and docs/blog/{stage}/{dimension}/index-en.md
Mandatory content length range
Chinese (ZH) long-form target: 1500–2000 Chinese characters per post.
English (EN) long-form target: 1200–1800 words per post.
If the first draft is below target, expand with practical sections (framework, checklist, FAQ, scenarios, cautions) before marking complete.
Keep medical tone conservative: no cure claims, no absolute guarantees.
Do not leave same-day quota posts as short drafts; expand them to target range before considering the day complete.
Media guidance
Mandatory: Use 2+ images per article.
Source Policy:
NEVER use source.unsplash.com (service is deprecated/broken).
Use the specific placeholder URL https://images.unsplash.com/photo-1579684385127-1ef15d508118?auto=format&fit=crop&w=1600&q=80 in generated drafts.
The project's image_manager.py script will automatically replace this placeholder with a relevant image from a valid source (Unsplash API or Volcengine generation).
Do not try to generate other Unsplash URLs manually; they will likely fail or break over time.
Alt Text: Include meaningful, descriptive alt text in both ZH and EN pages.
Placement: One image near the introduction, one in a practical framework/checklist section.
Required front matter fields for persona publishing
author_id: one of zzh|kelvin|yyh|gwx|zyn|zhl|wep
author_name: display name (can be zzh, kelvin, etc.)
author_email: must match roster email exactly
author_role: role text from roster
reviewer_id: optional but required for high-risk medical claims
review_status: draft|reviewed|published
disclaimer_key: e.g. medical-information-only
Front matter template (auto-read)
Use docs/_book/templates/jekyll-front-matter-persona.md as the canonical generation template.
Always resolve author_* and reviewer_* from docs/_book/author-role-rotation.csv before draft output.
Recommended article structure
Search-intent title focused on one reader problem.
Fast answer / key takeaways.
Main teaching section distilled from the ebook.
Practical checklist or framework.
FAQ block.
Mid-article ebook opt-in CTA.
Affiliate or tools block when relevant.
End-of-article CTA to:
subscribe for the ebook download
visit the independent site
explore related internal articles
Monetization mapping
Google Ads: favor informational queries with broad traffic and helpful content depth.
Independent site: push readers to a product page, consultation page, or resource hub when intent becomes transactional.
Affiliate links: recommend only adjacent tools/products genuinely aligned with the article topic.
Safety and trust rules
For health-related content, avoid cure claims and include a doctor-consult disclaimer where appropriate.
Separate ebook-derived opinion from verified facts.
Do not copy large passages verbatim from the ebook.
Create original synthesis, summary, and reader-oriented structure.
Do not claim real-world hospital affiliation, license number, or credential unless verifiable and approved.
If using role-based personas, disclose editorial-role nature on author page and/or footer disclaimer.
Deliverables
Final Markdown article draft
Suggested path/slug
SEO title and meta description
CTA copy for email signup
Suggested internal links
Suggested affiliate anchor text and independent-site anchor text
Filled persona metadata (author_id, author_email, author_role, reviewer if needed)