npx skills add ...
npx skills add jezweb/claude-skills --skill wordpress-content
Create and manage WordPress posts, pages, media, categories, tags, and menus via WP-CLI or the REST API. Use whenever the user wants to publish a blog post on WordPress, update a page, upload media, manage categories or tags, update navigation menus, schedule posts, or do bulk content operations on a WordPress site.
npx skills add jezweb/claude-skills --skill wordpress-content
Create, update, and manage WordPress content — posts, pages, media, categories, tags, and menus. Produces live content on the site via WP-CLI or the REST API.
wordpress.config.json or wp-cli.yml| Task | Best Method |
|---|---|
| Create/edit single post or page | WP-CLI wp post create/update |
| Bulk create posts | WP-CLI loop or REST API batch |
| Upload images/media | WP-CLI wp media import |
| Manage categories/tags | WP-CLI wp term |
| Update navigation menus | WP-CLI wp menu |
| Scheduled posts | WP-CLI with --post_date |
| Complex HTML content | Write to temp file, pass to WP-CLI |
| No SSH access available | REST API with Application Password |
Post statuses: draft, publish, pending, future (use with --post_date)
Set featured image on a post:
ACF stores fields with both the field value and a reference key (_field_name -> field_abc123).
Provide the admin URL and live URL:
https://example.com/wp-admin/post.php?post={id}&action=edithttps://example.com/{slug}/When WP-CLI is not available, use the WordPress REST API with Application Password auth.
| Resource | Endpoint |
|---|---|
| Posts | /wp-json/wp/v2/posts |
| Pages | /wp-json/wp/v2/pages |
| Media | /wp-json/wp/v2/media |
| Categories | /wp-json/wp/v2/categories |
| Tags | /wp-json/wp/v2/tags |
All support GET (list/single), POST (create), PUT (update), DELETE.
| Parameter | Purpose | Example |
|---|---|---|
per_page | Results per page (max 100) | ?per_page=50 |
page | Pagination | ?page=2 |
search | Search term | ?search=keyword |
status | Filter by status | ?status=draft |
categories | Filter by category ID | ?categories=3 |
orderby | Sort field | ?orderby=date |
order | Sort direction | ?order=desc |
_fields | Limit response fields | ?_fields=id,title,link |
Menus: Navigation menus have limited REST API support. The /wp-json/wp/v2/navigation endpoint exists for block-based navigation in FSE themes. For classic menus, use WP-CLI.
For anything beyond a sentence, write HTML to a temp file and pass it:
Shell quoting in --post_content is fragile for complex HTML.
For creating many posts, use a loop with verification:
Always create as draft first, review, then bulk-publish.