name: ac878-wordpress description: Publish Chinese news articles to ac878.com.au WordPress. Use when publishing morning batch (9am, 15 posts), afternoon batch (4:15pm, 8 posts), or running WordPress quality gate. Covers article generation, publishing, deduplication, and quality verification.
AC878 WordPress Publishing
Quick Start
# Publish from JSON
python3 scripts/wp_publish_15_cn.py news/wp_stories_cn.json
# Quality gate (auto-cleans bad posts)
python3 scripts/wp_quality_gate.py --min-count 15 --min-cjk 300
Workspace: /Users/jackycheung/.openclaw/workspace/
Creds: user=tvmedia123, pass in .wp-creds
Categories: Daily News (1367) + 2026 Daily News (5114)
Full Publishing Workflow
1. Aggregate Fresh News
python3 scripts/news_aggregator.py
2. Check Existing Posts (avoid duplicates)
curl -s -u 'tvmedia123:4age uvSo ict1 GeLS agKs 2iIt' \
'https://ac878.com.au/wp-json/wp/v2/posts?categories=5114&after=YYYY-MM-DDT00:00:00&per_page=50' \
| python3 -c "import sys,json; [print(p['title']['rendered']) for p in json.load(sys.stdin)]"
3. Generate Articles as JSON
Article mix (MANDATORY):
- 75% Australian News (~11 AM / ~6 PM) — including ~1 finance/business
- 10% International
- 10% China/HK
Per article:
title_en: Simplified Chinese ONLY. ZERO English letters.body_cn: 800-1200 CJK characters, full Chinese punctuation (。,、:;!?()""《》)- Use
""for quotes, NOT「」 - 4-6 proper paragraphs separated by
\n\n - Write like detailed journalism: what happened, background, key figures/stats, impact analysis, what to watch
- NO English in body — translate ALL names to Chinese
- NO source attribution
category: australia/business/china_asia/world
Save to: news/wp_stories_cn.json (AM) or news/wp_stories_cn_pm.json (PM)
Slugs: ac878news-YYYY-MM-DD-01 through -15 (AM), -pm01 through -pm08 (PM)
4. Pre-publish Validation
Verify EVERY entry has: Chinese punctuation, "" quotes, 800-1200 CJK chars, 4+ paragraphs with real analysis. Rewrite any that fail.
5. Publish
python3 scripts/wp_publish_15_cn.py news/wp_stories_cn.json
6. Post-publish Quality Gate (MANDATORY)
python3 scripts/wp_quality_gate.py --min-count 15 --min-cjk 300
Auto-deletes: English titles, short bodies (<300 CJK), duplicates (keeps newest).
7. Dedup Check (MANDATORY)
If quality gate finds issues, fix and re-run until it passes. Do NOT finish until the gate passes.
Common Failures
- English in titles → most common issue, quality gate catches it
「」instead of""→ rewrite- Body too short → add background, analysis, implications
- Duplicates → dedup check catches them