Develops custom WordPress themes and plugins, creates and registers Gutenberg blocks and block patterns, configures WooCommerce stores, implements WordPress REST API endpoints, applies security hardening (nonces, sanitization, escaping, capability checks), and optimizes performance through caching and query tuning. Use when building WordPress themes, writing plugins, customizing Gutenberg blocks, extending WooCommerce, working with ACF, using the WordPress REST API, applying hooks and filters, or improving WordPress performance and security.
98
100%
Does it follow best practices?
Impact
97%
1.12xAverage score across 6 eval scenarios
Advisory
Suggest reviewing before use
Plugin structure and initialization
Plugin header fields
70%
100%
Plugin constants defined
100%
100%
Namespace used
0%
100%
ABSPATH direct-access guard
100%
100%
strict_types declaration
0%
83%
plugins_loaded initialization
100%
100%
Activation hook used
100%
100%
dbDelta for table creation
100%
100%
wpdb->prefix for table names
100%
100%
Deactivation hook used
100%
100%
uninstall.php exists
100%
100%
WP_UNINSTALL_PLUGIN check in uninstall.php
100%
100%
Data cleanup in uninstall.php
100%
100%
Minimal structure files
100%
100%
Security: sanitization, escaping, nonces
Nonce in form
100%
100%
Nonce verified on AJAX
100%
100%
Name field sanitized
100%
100%
Email field sanitized
100%
100%
Message field sanitized
100%
100%
Prepared statement used
100%
100%
wpdb->prefix for table
100%
100%
Capability check on admin page
100%
100%
Escaped output in admin
100%
100%
Scripts properly enqueued
100%
100%
ajaxUrl passed via localize
100%
100%
Translatable strings
100%
100%
ABSPATH guard
100%
100%
Gutenberg block development
block.json present
100%
100%
apiVersion 3 in block.json
100%
100%
$schema in block.json
100%
100%
@wordpress/scripts devDependency
100%
100%
wp-scripts build script
100%
100%
No React/WP packages bundled
0%
100%
useBlockProps in edit
100%
100%
useBlockProps.save in save
100%
100%
InspectorControls used
100%
100%
WordPress imports only
100%
100%
PHP registers block via block.json
100%
100%
Translatable strings in JS
100%
100%
textdomain in block.json
100%
100%
Block theme structure and theme.json
$schema in theme.json
100%
100%
version 3 in theme.json
0%
100%
Color palette defined
100%
100%
Fluid typography enabled
50%
100%
Spacing sizes defined
100%
100%
theme.json CSS vars in styles
100%
100%
templates/ directory with .html files
100%
100%
parts/ directory with .html files
100%
100%
No PHP templates mixed in
100%
100%
style.css theme header
66%
100%
templateParts declared in theme.json
0%
100%
No hardcoded colors in templates
100%
100%
declare(strict_types=1) in PHP files
0%
100%
ABSPATH guard in PHP files
100%
100%
Performance caching and query optimization
Transient caching used
100%
100%
Transient invalidation on save_post
100%
100%
Object cache used
0%
0%
no_found_rows optimization
100%
100%
post_meta_cache or term_cache disabled
100%
100%
fields='ids' optimization
100%
100%
No N+1 query pattern
70%
50%
Prepared statements for custom SQL
100%
100%
wpdb->prefix for table names
100%
100%
ABSPATH guard
100%
100%
declare(strict_types=1)
0%
100%
Translatable strings
100%
100%
Enqueuing via hook
100%
100%
Namespace used
100%
100%
REST API endpoints and save_post hook patterns
rest_api_init hook used
100%
100%
permission_callback provided
100%
100%
Capability check in permission_callback
100%
100%
DOING_AUTOSAVE check in save_post
0%
100%
wp_is_post_revision check in save_post
50%
100%
Prefixed custom hook names
100%
100%
PHPDoc on custom hooks
100%
100%
Input sanitization in REST callback
100%
100%
Namespace used
100%
100%
declare(strict_types=1)
0%
100%
ABSPATH guard
100%
100%
Translatable strings
100%
100%
Output escaped in REST response
100%
100%
plugins_loaded initialization
100%
100%
5b76101
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.