Skip to main content

See the whole site Free

WP-CLI and CI checks

wp lumtera scan, check, stats, issues and rules — with exit codes you can use to fail a deployment while accessibility errors remain.

Overview

Lumtera adds a wp lumtera command with five subcommands. scan checks posts and stores the results exactly as saving them would. Pass post IDs, or --all, optionally narrowed with --post_type and --status. Output can be a table, JSON, CSV, or --format=summary for totals only, and an interactive terminal shows a progress bar.

check reads HTML and stores nothing: a file, standard input (pass "-" or pipe it in), or --page with a URL or path on this site, such as --page=/about/. Whole documents are checked as pages, including the theme's markup around the content, and block markup is rendered first. It exits with status 1 when it finds an issue at or above --fail-on, and status 2 when the input cannot be used.

stats prints the site totals and the most frequent problems; --top sets how many, 10 by default. issues lists every stored open issue, filtered by --rule, --severity and --post_type, and streams CSV or JSON so it suits large sites. rules lists every check with its WCAG criterion, level, severity and the setting chosen in Lumtera.

Why it matters

Theme and template changes can introduce accessibility errors on hundreds of pages at once, and nobody opens the editor to notice. Developers need the same checks in the terminal and in their deployment pipeline.

What you get

  • wp lumtera scan: scan everything, a post type, or specific posts.
  • wp lumtera check: check a file, standard input or a page URL on the same site; exits with an error code when it finds issues at or above the --fail-on level (errors by default).
  • --fail-on=error|warning|notice|none sets how strict the pipeline is.
  • wp lumtera stats and issues: site totals and issue exports as a table or JSON.

How it works

  1. Run a scan

    wp lumtera scan --all brings the site report up to date.

  2. Check in CI

    wp lumtera check --page=https://example.com/ --fail-on=error fails the job while any errors remain.

  3. Export

    wp lumtera issues --format=json feeds dashboards and ticketing tools.

Who it helps

  • Developers shipping theme changes

    Run wp lumtera check --page against key pages on staging after a deploy, and fail the pipeline if errors appear.

  • Agencies taking on a new site

    wp lumtera scan --all --format=summary builds the first set of results in one command, without keeping a browser tab open.

  • Teams that track work elsewhere

    wp lumtera issues --format=csv exports each open finding with post ID, title, check, severity, WCAG criterion and message, ready for a spreadsheet or ticket import.

Good to know

How it behaves, what it needs, and where its limits are.

No comparison with earlier runs
check reports what is in the input now. It does not remember previous runs, so errors that were already there fail the job too. Use --fail-on=none to report without failing.
Default threshold
By default only errors return status 1. Use --fail-on=warning to include items that need review, or --fail-on=notice to include tips.
How --page fetches
Only http or https addresses on this site's own host are fetched, with at most three redirects that must stay on the site, a 15-second wait and a 5 MB limit. The page is fetched as a logged-out visitor, so drafts and private pages cannot be reached this way.
check stores nothing
Results from check do not appear in the Overview or Content report. Use scan to update stored results.
Whole pages
On a full page, the "H1 inside the content" check is skipped, because the theme usually supplies the page's H1. Color contrast is still judged only where the markup itself sets both colors.

Questions

Something else on your mind? Contact support

Can it check pages from other sites?

No — --page accepts URLs on the same site, which keeps it from being used as an open fetcher.

Why is the option called --page and not --url?

--url is WP-CLI's own global option for choosing a site. Lumtera uses --page so the two never clash, and when there is nothing to check but --url was given, it points you to --page.

Can I scan only published pages?

Yes: wp lumtera scan --post_type=page --status=publish. The post type must be enabled in Lumtera's settings, and --status accepts publish, draft, pending, private and future.

How do I tell failed checks from bad input in CI?

Status 1 means issues at or above --fail-on were found. Status 2 means the file, standard input or URL could not be used, for example a refused address or an HTTP error.

More in “See the whole site”

Start with the free plugin today

All 64 checks, the editor sidebar, Elementor panel and site report — free, with no account and no page limits.