WO

woocommerce-email-editor

Facilitates local development and testing of the WooCommerce block email editor.

Install

mkdir -p .claude/skills/woocommerce-email-editor && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/2043" && unzip -o skill.zip -d .claude/skills/woocommerce-email-editor && rm skill.zip

Installs to .claude/skills/woocommerce-email-editor

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Setup and develop the WooCommerce block email editor. Use when working on email templates, transactional emails, or the email editor feature.
141 chars✓ has a “when” trigger
Advanced

Key capabilities

  • Start local development environment with wp-env
  • Watch and build admin JS and PHP packages
  • Configure Mailpit for local SMTP testing
  • Run integration and unit tests for email packages
  • Lint PHP code using PHPStan and PHPCS

How it works

It orchestrates local WordPress containers and SMTP servers to simulate transactional email workflows for development and testing.

Inputs & outputs

You give it
Email template or editor code
You get back
Local development environment and test results

When to use woocommerce-email-editor

  • Start local email editor development
  • Configure local SMTP for email testing
  • Modify email template files

About this skill

WooCommerce Email Editor Development

This skill provides guidance for developing the WooCommerce block email editor.

When to Use This Skill

Invoke this skill when:

  • Setting up local development for the email editor
  • Working on email templates or transactional emails
  • Modifying the email editor PHP or JS packages
  • Testing email sending functionality

Development Environment Setup

1. Start WooCommerce wp-env

pnpm --filter=@woocommerce/plugin-woocommerce -- wp-env start

Site runs at http://localhost:8888 by default. If port 8888 is unavailable, wp-env assigns a different port. Check the startup output or run wp-env info to see your actual URL.

2. Start the watcher

Watches and builds admin JS files (including the email editor JS package) and syncs Email Editor PHP package changes:

pnpm --filter=@woocommerce/plugin-woocommerce watch:build:admin

3. Enable the block email editor feature

Visit http://localhost:8888/wp-admin/admin.php?page=wc-settings&tab=advanced&section=features and enable the block email editor.

4. Edit transactional emails

Visit http://localhost:8888/wp-admin/admin.php?page=wc-settings&tab=email

Email Testing with Mailpit

To test email sending locally, use Mailpit as a local SMTP server.

Configure SMTP

Add to plugins/woocommerce/.wp-env.override.json:

{
    "lifecycleScripts": {
        "afterStart": "./tests/e2e/bin/test-env-setup.sh && wp-env run cli wp plugin install wp-mail-smtp --activate"
    },
    "config": {
        "WPMS_ON": true,
        "WPMS_MAILER": "smtp",
        "WPMS_SMTP_HOST": "host.docker.internal",
        "WPMS_SMTP_PORT": "1025",
        "WPMS_SMTP_AUTH": false,
        "WPMS_SMTP_SECURE": ""
    }
}

Start Mailpit

docker run --rm --name=mailpit -p 1025:1025 -p 8025:8025 -d axllent/mailpit

Or if the container already exists:

docker start mailpit

View emails

Open http://localhost:8025 to see captured emails.

Restart wp-env

After creating or modifying .wp-env.override.json, restart the environment:

pnpm --filter=@woocommerce/plugin-woocommerce -- wp-env start --update

Key Paths

PathDescription
packages/php/email-editor/Email Editor PHP package
packages/js/email-editor/Email Editor JS package
plugins/woocommerce/.wp-env.override.jsonLocal wp-env config (gitignored)

Building the Email Editor Package

To rebuild the JS package after changes:

pnpm --filter=@woocommerce/email-editor build

Testing the PHP Package

Run tests from the packages/php/email-editor/ directory.

Setup

cd packages/php/email-editor
wp-env start
composer dump-autoload

Run integration tests

wp-env run tests-cli --env-cwd=wp-content/plugins/email-editor ./vendor/bin/phpunit --configuration phpunit-integration.xml.dist

Run a specific test

wp-env run tests-cli --env-cwd=wp-content/plugins/email-editor ./vendor/bin/phpunit --configuration phpunit-integration.xml.dist --filter Table_Test

Linting the PHP Package

Run from the packages/php/email-editor/ directory.

PHPStan

cd tasks/phpstan && ./run-phpstan.sh

For PHP 7 compatibility:

cd tasks/phpstan && ./run-phpstan.sh php7

PHPCS

composer run phpcs

When not to use it

  • When testing emails in a production environment

Prerequisites

pnpmdockerwp-env

Limitations

  • Requires local Docker and wp-env setup
  • Email testing limited to local Mailpit instance

How it compares

It provides a dedicated end-to-end loop for email development, bypassing the need for external email services during testing.

Compared to similar skills

woocommerce-email-editor side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
woocommerce-email-editor (this skill)36moReviewAdvanced
woocommerce-dev-cycle52moNo flagsIntermediate
node01moNo flagsIntermediate
dependency-upgrade265moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

woocommerce-dev-cycle

woocommerce

Run tests, linting, and quality checks for WooCommerce development. Use when running tests, fixing code style, or following the development workflow.

522

node

dannybrown37

Invoke when the user is writing or debugging TypeScript or JavaScript code, working with Node.js tooling, or asking about ESLint/Prettier configuration.

00

dependency-upgrade

wshobson

Manage major dependency version upgrades with compatibility analysis, staged rollout, and comprehensive testing. Use when upgrading framework versions, updating major dependencies, or managing breaking changes in libraries.

26240

shopify-development

davila7

Build Shopify apps, extensions, themes using GraphQL Admin API, Shopify CLI, Polaris UI, and Liquid. TRIGGER: "shopify", "shopify app", "checkout extension", "admin extension", "POS extension", "shopify theme", "liquid template", "polaris", "shopify graphql", "shopify webhook", "shopify billing", "app subscription", "metafields", "shopify functions"

1299

shopify-apps

alinaqi

Shopify app development - Remix, Admin API, checkout extensions

19

ccxt-typescript

ccxt

CCXT cryptocurrency exchange library for TypeScript and JavaScript developers (Node.js and browser). Covers both REST API (standard) and WebSocket API (real-time). Helps install CCXT, connect to exchanges, fetch market data, place orders, stream live tickers/orderbooks, handle authentication, and manage errors. Use when working with crypto exchanges in TypeScript/JavaScript projects, trading bots, arbitrage systems, or portfolio management tools. Includes both REST and WebSocket examples.

15

Search skills

Search the agent skills registry