* chore: sync repo state [ci skip] * Enhance WordPress skill documentation with 7.0 features Updated the WordPress skill documentation to include new features from WordPress 7.0, such as Real-Time Collaboration, AI Connectors, and Abilities API. Enhanced the overview and workflow sections to reflect these changes. * chore: sync repo state [ci skip] * Enhance WordPress theme development for version 7.0 Updated the WordPress theme development workflow to include new features from WordPress 7.0, such as DataViews, Pattern Editing, Navigation Overlays, and admin refresh. Enhanced the overview and added sections for new theme features and testing checklist. * chore: sync repo state [ci skip] * Enhance WordPress plugin development for version 7.0 Updated WordPress plugin development workflow to include new features from WordPress 7.0, such as Real-Time Collaboration, AI Connectors, and the Abilities API. Enhanced descriptions and added sections for modern plugin development practices. * chore: sync repo state [ci skip] * Enhance WooCommerce workflow with WP 7.0 features Updated WooCommerce development workflow to include WordPress 7.0 features such as AI connectors, DataViews, and collaboration tools. Enhanced descriptions and added new sections for AI-powered functionalities. * chore: sync repo state [ci skip] * Enhance WordPress penetration testing documentation Updated the description to include WordPress 7.0 security considerations and added new sections on security testing for AI Connector, Abilities API, Real-Time Collaboration, and DataViews endpoints. * chore: update star history chart * chore(pr394): Drop derived artifacts from PR Keep the pull request source-only so maintainer workflows and CI can regenerate canonical artifacts on main after merge. * fix(pr394): Shorten WordPress pen-test description Keep the imported WordPress 7.0 update within repository validation limits so source-validation passes on the contributor PR. * chore: sync repo state [ci skip] --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: sck_0 <samujackson1337@gmail.com>
18 KiB
18 KiB
name, description, category, risk, source, date_added
| name | description | category | risk | source | date_added |
|---|---|---|---|---|---|
| wordpress-woocommerce-development | WooCommerce store development workflow covering store setup, payment integration, shipping configuration, customization, and WordPress 7.0 features: AI connectors, DataViews, and collaboration tools. | granular-workflow-bundle | safe | personal | 2026-02-27 |
WordPress WooCommerce Development Workflow
Overview
Specialized workflow for building WooCommerce stores including setup, payment gateway integration, shipping configuration, custom product types, store optimization, and WordPress 7.0 enhancements.
WordPress 7.0 + WooCommerce Features
-
AI Integration
- Auto-generate product descriptions
- AI-powered customer service responses
- Product summary generation
- Marketing copy assistance
-
DataViews for Orders
- Modern order management interfaces
- Enhanced filtering and sorting
- Activity layout for order history
-
Real-Time Collaboration
- Collaborative order editing
- Team notes and communication
- Live inventory updates
-
Admin Refresh
- Consistent WooCommerce admin styling
- View transitions between screens
-
Abilities API
- AI-powered order processing
- Automated inventory management
- Smart shipping recommendations
When to Use This Workflow
Use this workflow when:
- Setting up WooCommerce stores
- Integrating payment gateways
- Configuring shipping methods
- Creating custom product types
- Building subscription products
- Implementing AI-powered features (WP 7.0)
Workflow Phases
Phase 1: Store Setup
Skills to Invoke
app-builder- Project scaffoldingwordpress-penetration-testing- WordPress patterns
Actions
- Install WooCommerce
- Run setup wizard
- Configure store settings
- Set up tax rules
- Configure currency
- Test with WordPress 7.0 admin
WordPress 7.0 + WooCommerce Setup
// Minimum requirements for WP 7.0 + WooCommerce
// Add to wp-config.php for collaboration settings
define('WP_COLLABORATION_MAX_USERS', 10);
// AI features are enabled by installing a provider plugin
// Install OpenAI, Anthropic, or Gemini connector from WordPress.org
// Then configure via Settings > Connectors in admin panel
Copy-Paste Prompts
Use @app-builder to set up WooCommerce store
Phase 2: Product Configuration
Skills to Invoke
wordpress-penetration-testing- WooCommerce patterns
Actions
- Create product categories
- Add product attributes
- Configure product types
- Set up variable products
- Add product images
AI-Powered Product Descriptions (WP 7.0)
// Auto-generate product descriptions with AI
add_action('woocommerce_new_product', 'generate_ai_description', 10, 2);
function generate_ai_product_description($product_id, $product) {
if ($product->get_description()) {
return; // Skip if description exists
}
// Check if AI client is available
if (!function_exists('wp_ai_client_prompt')) {
return;
}
$title = $product->get_name();
$short_description = $product->get_short_description();
$prompt = sprintf(
'Write a compelling WooCommerce product description for "%s" that highlights key features and benefits. Make it SEO-friendly and persuasive.',
$title
);
if ($short_description) {
$prompt .= "\n\nShort description: " . $short_description;
}
$result = wp_ai_client_prompt($prompt);
if (is_wp_error($result)) {
return;
}
// Use temperature for consistent output
$result->using_temperature(0.3);
$description = $result->generate_text();
if ($description && !is_wp_error($description)) {
$product->set_description($description);
$product->save();
}
}
Copy-Paste Prompts
Use @wordpress-penetration-testing to configure WooCommerce products
Phase 3: Payment Integration
Skills to Invoke
payment-integration- Payment processingstripe-integration- Stripepaypal-integration- PayPal
Actions
- Choose payment gateways
- Configure Stripe
- Set up PayPal
- Add offline payments
- Test payment flows
WordPress 7.0 AI for Payments
// AI-powered fraud detection
// Note: This is a demonstration - implement proper fraud detection with multiple signals
// Use AI to analyze order for fraud indicators
function ai_check_order_fraud($order_id) {
// Check if AI client is available
if (!function_exists('wp_ai_client_prompt')) {
return false; // Default to no suspicion if AI unavailable
}
$order = wc_get_order($order_id);
if (!$order) {
return false;
}
$prompt = sprintf(
'Analyze this order for potential fraud. Order total: $%s. Shipping address: %s, %s. Billing: %s. Is this suspicious? Return only "suspicious" or "clean" without explanation.',
$order->get_total(),
$order->get_shipping_address_1(),
$order->get_shipping_city(),
$order->get_billing_email()
);
$result = wp_ai_client_prompt($prompt);
if (is_wp_error($result)) {
return false;
}
$result->using_temperature(0.1); // Low temp for consistent classification
$analysis = $result->generate_text();
return (strpos($analysis, 'suspicious') !== false);
}
Copy-Paste Prompts
Use @stripe-integration to integrate Stripe payments
Use @paypal-integration to integrate PayPal
Phase 4: Shipping Configuration
Skills to Invoke
wordpress-penetration-testing- WooCommerce shipping
Actions
- Set up shipping zones
- Configure shipping methods
- Add flat rate shipping
- Set up free shipping
- Integrate carriers
AI Shipping Recommendations (WP 7.0)
// AI-powered shipping recommendations
add_action('woocommerce_after_checkout_form', 'ai_shipping_recommendations');
function ai_shipping_recommendations($checkout) {
// Check if AI client is available
if (!function_exists('wp_ai_client_prompt')) {
return;
}
$cart = WC()->cart;
if ($cart->is_empty() || !$cart->get_cart_contents_weight()) {
return;
}
$prompt = sprintf(
'Based on this cart (total weight: %d kg, destination: %s), recommend the best shipping method from: free shipping (orders over $100), flat rate ($9.99), or express ($24.99). Consider delivery time and cost efficiency. Respond with just the recommended method name.',
$cart->get_cart_contents_weight(),
WC()->customer->get_shipping_country()
);
$result = wp_ai_client_prompt($prompt);
if (is_wp_error($result)) {
return;
}
$result->using_temperature(0.1); // Low temp for consistent recommendation
$recommendation = $result->generate_text();
if (strpos($recommendation, 'express') !== false) {
wc_add_notice(esc_html__('AI Recommendation: Consider Express shipping for faster delivery!', 'woocommerce'), 'info');
}
}
Copy-Paste Prompts
Use @wordpress-penetration-testing to configure shipping
Phase 5: Store Customization
Skills to Invoke
frontend-developer- Store customizationfrontend-design- Store design
Actions
- Customize product pages
- Modify cart page
- Style checkout flow
- Create custom templates
- Add custom fields
WordPress 7.0 Template Customization
// Custom product template with WP 7.0 blocks
add_action('woocommerce_after_main_content', 'add_product_ai_chat');
function add_product_ai_chat() {
if (!is_product()) return;
global $product;
?>
<div class="product-ai-assistant">
<h3>AI Shopping Assistant</h3>
<button id="ai-chat-toggle" type="button">Ask about this product</button>
<div id="ai-chat-panel" style="display:none;">
<div id="ai-chat-messages"></div>
<input type="text" id="ai-chat-input" placeholder="Ask about sizing, materials, etc.">
</div>
</div>
<script>
document.getElementById('ai-chat-toggle').addEventListener('click', function() {
const panel = document.getElementById('ai-chat-panel');
panel.style.display = panel.style.display === 'none' ? 'block' : 'none';
});
</script>
<?php
}
// AI-powered product Q&A
add_action('wp_ajax_ai_product_question', 'handle_ai_product_question');
add_action('wp_ajax_nopriv_ai_product_question', 'handle_ai_product_question');
function handle_ai_product_question() {
// Verify nonce for security
if (!check_ajax_referer('ai_product_question_nonce', 'nonce', false)) {
wp_send_json_error(['message' => 'Security check failed']);
}
$question = isset($_POST['question']) ? sanitize_text_field($_POST['question']) : '';
$product_id = isset($_POST['product_id']) ? intval($_POST['product_id']) : 0;
if (empty($question) || empty($product_id)) {
wp_send_json_error(['message' => 'Missing required fields']);
}
$product = wc_get_product($product_id);
if (!$product) {
wp_send_json_error(['message' => 'Product not found']);
}
// Check if AI client is available
if (!function_exists('wp_ai_client_prompt')) {
wp_send_json_error(['message' => 'AI service unavailable']);
}
$prompt = sprintf(
'Customer question about "%s": %s\n\nProduct details:
- Price: $%s
- SKU: %s
- Stock: %s
Answer helpfully, accurately, and concisely:',
$product->get_name(),
$question,
$product->get_price(),
$product->get_sku(),
$product->get_stock_status()
);
$result = wp_ai_client_prompt($prompt);
if (is_wp_error($result)) {
wp_send_json_error(['message' => $result->get_error_message()]);
}
$result->using_temperature(0.4); // Slightly higher for more varied responses
$answer = $result->generate_text();
if (is_wp_error($answer)) {
wp_send_json_error(['message' => 'Failed to generate response']);
}
wp_send_json_success(['answer' => $answer]);
}
Copy-Paste Prompts
Use @frontend-developer to customize WooCommerce templates
Phase 6: Extensions
Skills to Invoke
wordpress-penetration-testing- WooCommerce extensions
Actions
- Install required extensions
- Configure subscriptions
- Set up bookings
- Add memberships
- Integrate marketplace
Abilities API for WooCommerce (WP 7.0)
// Register ability categories first
add_action('wp_abilities_api_categories_init', function() {
wp_register_ability_category('ecommerce', [
'label' => __('E-Commerce', 'woocommerce'),
'description' => __('WooCommerce store management and operations', 'woocommerce'),
]);
});
// Register abilities
add_action('wp_abilities_api_init', function() {
// Register ability to update inventory
wp_register_ability('woocommerce/update-inventory', [
'label' => __('Update Inventory', 'woocommerce'),
'description' => __('Update product stock quantity', 'woocommerce'),
'category' => 'ecommerce',
'input_schema' => [
'type' => 'object',
'properties' => [
'product_id' => ['type' => 'integer', 'description' => 'Product ID to update'],
'quantity' => ['type' => 'integer', 'description' => 'New stock quantity']
],
'required' => ['product_id', 'quantity']
],
'output_schema' => [
'type' => 'object',
'properties' => [
'success' => ['type' => 'boolean'],
'new_quantity' => ['type' => 'integer']
]
],
'execute_callback' => 'woocommerce_update_inventory_handler',
'permission_callback' => function() {
return current_user_can('manage_woocommerce');
}
]);
// Register ability to process orders
wp_register_ability('woocommerce/process-order', [
'label' => __('Process Order', 'woocommerce'),
'description' => __('Mark order as processing and trigger fulfillment', 'woocommerce'),
'category' => 'ecommerce',
'input_schema' => [
'type' => 'object',
'properties' => [
'order_id' => ['type' => 'integer', 'description' => 'Order ID to process']
],
'required' => ['order_id']
],
'output_schema' => [
'type' => 'object',
'properties' => [
'success' => ['type' => 'boolean'],
'status' => ['type' => 'string']
]
],
'execute_callback' => 'woocommerce_process_order_handler',
'permission_callback' => function() {
return current_user_can('manage_woocommerce');
}
]);
});
// Handler for inventory update
function woocommerce_update_inventory_handler($input) {
$product_id = isset($input['product_id']) ? absint($input['product_id']) : 0;
$quantity = isset($input['quantity']) ? absint($input['quantity']) : 0;
$product = wc_get_product($product_id);
if (!$product) {
return new WP_Error('invalid_product', 'Product not found');
}
// Update stock
wc_update_product_stock($product, $quantity);
return [
'success' => true,
'new_quantity' => $product->get_stock_quantity()
];
}
// Handler for order processing
function woocommerce_process_order_handler($input) {
$order_id = isset($input['order_id']) ? absint($input['order_id']) : 0;
$order = wc_get_order($order_id);
if (!$order) {
return new WP_Error('invalid_order', 'Order not found');
}
$order->update_status('processing');
return [
'success' => true,
'status' => 'processing'
];
}
Copy-Paste Prompts
Use @wordpress-penetration-testing to configure WooCommerce extensions
Phase 7: Optimization
Skills to Invoke
web-performance-optimization- Performancedatabase-optimizer- Database optimization
Actions
- Optimize product images
- Enable caching
- Optimize database
- Configure CDN
- Set up lazy loading
WordPress 7.0 Performance
- Client-side media processing
- Font Library enabled
- Responsive grid block
- View transitions for perceived performance
Copy-Paste Prompts
Use @web-performance-optimization to optimize WooCommerce store
Phase 8: Testing
Skills to Invoke
playwright-skill- E2E testingtest-automator- Test automation
Actions
- Test checkout flow
- Verify payment processing
- Test email notifications
- Check mobile experience
- Performance testing
WordPress 7.0 Testing
- Test with new admin interface
- Verify AI features work
- Test DataViews for orders
- Verify collaboration features
AI-Powered Store Testing
// Automated AI testing for fraud detection during checkout
add_action('woocommerce_after_checkout_validation', 'ai_validate_order', 20);
function ai_validate_order($fields, $errors) {
// Skip if AI is not available
if (!function_exists('wp_ai_client_prompt')) {
return;
}
// Skip for logged-in users (assumed trusted)
if (is_user_logged_in()) {
return;
}
$order_data = [
'email' => isset($fields['billing_email']) ? $fields['billing_email'] : '',
'phone' => isset($fields['billing_phone']) ? $fields['billing_phone'] : '',
'address' => isset($fields['billing_address_1']) ? $fields['billing_address_1'] : '',
];
// Skip if insufficient data
if (empty($order_data['email'])) {
return;
}
$prompt = sprintf(
'This is a checkout validation. Check if these details seem legitimate: email=%s, phone=%s, address=%s. Return only "valid" or "suspicious" without additional text.',
sanitize_email($order_data['email']),
sanitize_text_field($order_data['phone']),
sanitize_text_field($order_data['address'])
);
$result = wp_ai_client_prompt($prompt);
if (is_wp_error($result)) {
// Don't block checkout on AI errors
return;
}
$result->using_temperature(0.1); // Low temp for consistent classification
$response = $result->generate_text();
if (is_wp_error($response)) {
return;
}
if (strpos($response, 'suspicious') !== false) {
$errors->add('validation', __('Additional verification may be needed for this order. We will contact you if needed.', 'woocommerce'));
}
}
Copy-Paste Prompts
Use @playwright-skill to test WooCommerce checkout flow
WooCommerce + WordPress 7.0 AI Use Cases
-
Product Descriptions
- Auto-generate from product attributes
- Translate descriptions
- SEO optimization
-
Customer Service
- AI chatbot for common questions
- Order status lookup
- Return processing
-
Inventory Management
- Demand forecasting
- Low stock alerts
- Reorder recommendations
-
Marketing
- Personalized emails
- Product recommendations
- Abandoned cart recovery
-
Order Processing
- Fraud detection
- Shipping optimization
- Invoice generation
Quality Gates
- Products displaying correctly
- Checkout flow working
- Payments processing
- Shipping calculating
- Emails sending
- Mobile responsive
- AI features tested (WP 7.0)
- DataViews working (WP 7.0)
Related Workflow Bundles
wordpress- WordPress developmentwordpress-theme-development- Theme developmentwordpress-plugin-development- Plugin developmentpayment-integration- Payment processing