HomeBrowseUpload
← Back to registry
// Skill profile

WordPress REST API Skill (Advanced)

name: wordpress

by codedao12 · published 2026-03-22

API集成安全工具加密货币
Total installs
0
Stars
★ 0
Last updated
2026-03
// Install command
$ claw add gh:codedao12/codedao12-wordpress
View on GitHub
// Full documentation

---

name: wordpress

description: OpenClaw skill that provides a WordPress REST API CLI for posts, pages, categories, tags, users, and custom requests using plain HTTP.

---

# WordPress REST API Skill (Advanced)

Purpose

Provide a production-ready CLI for WordPress REST API automation. This skill focuses on content workflows (posts/pages), taxonomy (categories/tags), user reads, and safe custom requests without external HTTP libraries.

Best fit

  • You want a stable CLI for automation and bot workflows.
  • You need JSON-in/JSON-out for pipelines.
  • You prefer simple HTTP with no extra dependencies.
  • Not a fit

  • You must handle OAuth flows or complex browser-based auth.
  • You need advanced media uploads (multipart streaming).
  • Requirements

  • Node.js 18+ (for native `fetch`).
  • One-time setup

    1. Enable the WordPress REST API (default in modern WordPress).

    2. Create an Application Password for a WordPress user.

    3. Confirm the user has the right role (e.g., Editor/Admin).

    Install

    cd wordpress
    npm install

    Run

    node scripts/wp-cli.js help
    node scripts/wp-cli.js posts:list --query per_page=5
    node scripts/wp-cli.js posts:create '@post.json'

    You can also use npm:

    npm run wp -- posts:list --query per_page=5

    Credentials

    Supported options (first match wins):

  • Basic auth token: `WP_BASIC_TOKEN` (base64 of `user:app_password`)
  • User + app password: `WP_USER` + `WP_APP_PASSWORD`
  • JWT bearer token: `WP_JWT_TOKEN`
  • Required env

  • `WP_BASE_URL` (e.g., `https://example.com`)
  • Input conventions

  • JSON can be inline or loaded from file with `@path`.
  • Query params use `--query key=value` (repeatable) or `--query key1=value1,key2=value2`.
  • Command map (high level)

    Posts:

  • `posts:list`, `posts:get`, `posts:create`, `posts:update`, `posts:delete`
  • Pages:

  • `pages:list`, `pages:get`, `pages:create`, `pages:update`, `pages:delete`
  • Taxonomy:

  • `categories:list`, `categories:create`
  • `tags:list`, `tags:create`
  • Users:

  • `users:list`, `users:get`
  • Advanced:

  • `request` (raw method + path)
  • Operational guidance

  • Prefer `context=view` for read-only list calls.
  • Use `status=draft` when staging content.
  • Implement retries for `429` and transient `5xx` errors in orchestrators.
  • Expected output

  • JSON to stdout; non-zero exit code on errors.
  • Security notes

  • Never log or commit tokens or application passwords.
  • Use a dedicated low-privilege WordPress account where possible.
  • // Comments
    Sign in with GitHub to leave a comment.
    // Related skills

    More tools from the same signal band