wordpress-content

安装量: 278
排名: #3223

安装

npx skills add https://github.com/jezweb/claude-skills --skill wordpress-content

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. Prerequisites Working WP-CLI SSH connection or REST API credentials (use wordpress-setup skill) Site config from wordpress.config.json or wp-cli.yml Workflow Step 1: Determine the Operation 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 Step 2: Create Content Blog Posts

Simple post

wp @site post create \ --post_type = post \ --post_title = "My New Blog Post" \ --post_content = "

Post content here.

" \ --post_status = draft \ --post_category = 3,5

Post from HTML file (better for long content)

wp @site post create ./post-content.html \ --post_type = post \ --post_title = "My New Blog Post" \ --post_status = draft \ --post_excerpt = "A brief summary of the post." \ --post_category = 3,5 \ --tags_input = "tag1,tag2" Post statuses : draft , publish , pending , future (use with --post_date ) Pages wp @site post create \ --post_type = page \ --post_title = "About Us" \ --post_content = "

Our Story

Content here...

" \ --post_status = publish \ --post_parent = 0 \ --menu_order = 10 Scheduled Posts wp @site post create \ --post_type = post \ --post_title = "Scheduled Post" \ --post_content = "

This goes live tomorrow.

" \ --post_status = future \ --post_date = "2026-02-23 09:00:00" Step 3: Upload Media

Upload from URL

wp @site media import "https://example.com/image.jpg" \ --title = "Product Photo" \ --alt = "Product front view" \ --caption = "Our latest product"

Upload from local file (requires SCP first for remote sites)

scp ./image.jpg user@host:/tmp/image.jpg wp @site media import /tmp/image.jpg --title = "Local Upload" Set featured image on a post :

Get the attachment ID from the import output, then:

wp @site post meta update { post_id } _thumbnail_id { attachment_id } Step 4: Manage Taxonomy Categories

List categories

wp @site term list category --fields = term_id,name,slug,count

Create category

wp @site term create category "News" --slug = news --description = "Company news and updates"

Create child category

wp @site term create category "Product News" --slug = product-news --parent = 5

Assign category to post

wp @site post term add { post_id } category news Tags

Add tags during post creation

wp @site post create --post_title = "..." --tags_input = "seo,marketing,tips"

Add tags to existing post

wp @site post term add { post_id } post_tag seo marketing tips Step 5: Manage Menus

List menus

wp @site menu list --fields = term_id,name,slug,count

List items in a menu

wp @site menu item list main-menu --fields = db_id,type,title,link

Add page to menu

wp @site menu item add-post main-menu { page_id } --title = "About Us"

Add custom link

wp @site menu item add-custom main-menu "Contact" "https://example.com/contact/"

Reorder (set position)

wp @site menu item update { item_id } --position = 3 Step 6: Update Existing Content

Update post title and content

wp @site post update { post_id } \ --post_title = "Updated Title" \ --post_content = "

New content.

"

Update from file

wp @site post update { post_id } ./updated-content.html

Bulk update status

wp @site post list --post_type = post --post_status = draft --field = ID | \ xargs -I { } wp @site post update { } --post_status = publish Step 7: Verify

Check the post

wp @site post get { post_id } --fields = ID,post_title,post_status,guid

Get the live URL

wp @site post get { post_id } --field = guid

List recent posts

wp @site post list --post_type = post --posts_per_page = 5 --fields = ID,post_title,post_status,post_date Provide the admin URL and live URL: Admin: https://example.com/wp-admin/post.php?post={id}&action=edit Live: https://example.com/{slug}/ Critical Patterns HTML Content in WP-CLI For anything beyond a sentence, write HTML to a temp file and pass it: cat

/tmp/post-content.html << 'EOF'

Section Heading

Paragraph content with bold and links.

  • List item one
  • List item two

EOF wp @site post create /tmp/post-content.html --post_title = "My Post" --post_status = draft Shell quoting in --post_content is fragile for complex HTML. Bulk Operations For creating many posts, use a loop with verification: while IFS = , read -r title slug content_file category ; do wp @site post create " $content_file " \ --post_type = post \ --post_title = " $title " \ --post_name = " $slug " \ --post_category = " $category " \ --post_status = draft sleep 0.5 done < posts.csv Always create as draft first, review, then bulk-publish. ACF Custom Fields If Advanced Custom Fields is installed:

Set ACF field

wp @site post meta update { post_id } field_name "value"

Get ACF field

wp @site post meta get { post_id } field_name ACF stores fields with both the field value and a reference key ( _field_name → field_abc123 ). REST API Alternative When WP-CLI isn't available, use the REST API. See references/rest-api-endpoints.md for patterns. Reference Files references/rest-api-endpoints.md — REST API endpoints with authentication examples references/wp-cli-content.md — WP-CLI content management command reference

返回排行榜