A powerful WordPress plugin that uses AI to bulk update your WooCommerce products automatically. The plugin leverages OpenAI's API (chat and tool calling) to perform intelligent product content updates, from adding tags to generating descriptions, with full rollback capabilities.
- 🤖 AI-Powered Processing: Uses OpenAI's API with conversation management and tool calls
- 📦 Bulk Operations: Process hundreds of products automatically
- 🎯 Smart Filtering: Filter products by category, language, or other criteria
- 🔄 Rollback Support: Undo changes with complete rollback functionality
- ⚡ Resume Capability: Resume interrupted tasks or extend existing ones
- 📊 Progress Tracking: Monitor task progress and completion statistics
- 🛠️ WP-CLI Integration: Complete command-line interface for automation
- 📈 Database Management: Organized job and run tracking
See the WooCommerce Product Bulk Agent in action:
Watch the demo video to see how the plugin works with real WooCommerce products.
Note: Commands shown in the video may differ from the current version. Always refer to this documentation or use wp product-bulk-agent --help for the most up-to-date command syntax and options.
- WordPress 5.0 or higher
- WooCommerce 3.0 or higher
- PHP 8.2 or higher
- OpenAI API key
- WP-CLI (for command-line operations)
- Upload the plugin files to
/wp-content/plugins/wc-bulk-ai/ - Activate the plugin through the 'Plugins' menu in WordPress
- Navigate to WooCommerce → Bulk AI to configure settings
- Go to WooCommerce → Bulk AI in your WordPress admin
- Enter your OpenAI API key in the "OpenAI API Key" field
- Click "Save Changes"
Important: Without a valid OpenAI API key, the plugin will not function.
The plugin provides a comprehensive set of WP-CLI commands under the product-bulk-agent namespace:
wp product-bulk-agent create-task [task] [--lang=<language>] [--category=<category>]Examples:
# Create a task interactively
wp product-bulk-agent create-task
# Create a task with specific parameters
wp product-bulk-agent create-task "Add SEO-optimized product tags" --lang=en --category=electronics
# Create a task for products in a specific category
wp product-bulk-agent create-task --category=clothingParameters:
task(optional): The task description. If not provided, you'll be prompted to enter one or select from predefined tasks--lang(optional): Language code (e.g., en, fr, de) to filter products--category(optional): Category slug to filter products
wp product-bulk-agent start [--select] [--task=<task_id>]Examples:
# Start the latest task
wp product-bulk-agent start
# Select from available tasks
wp product-bulk-agent start --select
# Start a specific task by ID
wp product-bulk-agent start --task=123wp product-bulk-agent resume-task <task_id> [--select] [--extend]Examples:
# Resume a specific task
wp product-bulk-agent resume-task 123
# Resume with task selection
wp product-bulk-agent resume-task --select
# Resume and add more products
wp product-bulk-agent resume-task 123 --extendwp product-bulk-agent list-tasks [--available]Examples:
# List all tasks
wp product-bulk-agent list-tasks
# List only available (non-completed) tasks
wp product-bulk-agent list-tasks --availablewp product-bulk-agent rollback-task <task_id>Example:
wp product-bulk-agent rollback-task 123wp product-bulk-agent clear [--force]Examples:
# Clear with confirmation prompt
wp product-bulk-agent clear
# Force clear without confirmation
wp product-bulk-agent clear --forceThe plugin includes several predefined tasks:
- Add Product Tags: Automatically adds relevant tags to products based on their content
- Add Short Description: Generates short descriptions for products based on available information
You can create custom tasks by providing specific instructions:
Examples:
- "Add missing product attributes based on the product description"
- "Generate SEO-optimized meta descriptions"
- "Standardize product naming conventions"
- "Add size and color attributes to clothing products"
-
Create a Task: Define what you want to accomplish
wp product-bulk-agent create-task "Add relevant product tags" -
Filter Products: Specify criteria (category, language, limit)
- The system will prompt you for the number of products to process
- Optionally filter by category or language
-
Review Selection: The plugin shows you which products will be processed
-
Start Processing: Begin the AI-powered bulk operation
wp product-bulk-agent start
-
Monitor Progress: Check task status and completion
wp product-bulk-agent list-tasks
-
Rollback if Needed: Undo changes if required
wp product-bulk-agent rollback-task 123
The plugin creates three tables:
- Stores individual product processing jobs
- Tracks job status, product ID, and completion times
- Links to parent run and stores AI feedback
- Stores bulk task runs
- Contains task descriptions and run statistics
- Tracks overall progress and completion
- Stores rollback information for each product change
- Enables complete restoration of previous values
- Organized by job and property type
The plugin uses a Model Control Protocol (MCP) system that provides the AI agent with specific tools to interact with WooCommerce products. This system ensures controlled and safe product modifications.
The AI agent has access to the following tools for product manipulation:
get_product: Retrieve complete product details by IDget_products: Get a list of products with filtering optionsget_product_title: Get the current product titleget_product_description: Get the current product descriptionget_product_short_description: Get the current short descriptionget_product_tags: Get current product tagsget_available_product_tags: Get all available product tags in the system
update_product_title: Update product titlesupdate_product_description: Update product descriptionsupdate_product_short_description: Update short descriptionsupdate_product_tags: Add or replace product tags (with append option)
- AI Decision Making: The AI agent analyzes the task and current product state
- Tool Selection: Based on the task, the AI selects appropriate tools
- Safe Execution: All tool calls are executed through the MCP system with proper validation
- Rollback Tracking: All changes are tracked for potential rollback
- Iterative Process: The AI can make multiple tool calls until the task is complete
For a task like "Add relevant product tags":
- AI calls
get_productto understand the product - AI calls
get_product_tagsto see existing tags - AI calls
get_available_product_tagsto see what tags are available - AI analyzes product content and determines relevant tags
- AI calls
update_product_tagsto add new tags (with append: true)
- Validation: All product IDs are validated before operations
- Error Handling: Graceful handling of missing products or invalid data
- Rollback Support: All changes are tracked for complete rollback capability
- Permission Checks: Respects WordPress user capabilities
- Audit Trail: All tool executions are logged for debugging
Developers can extend the MCP system by:
// Hook into tool execution
add_action('wcbai_mcp_function_before_execute', function($function_name, $arguments) {
// Custom logic before tool execution
});
add_action('wcbai_mcp_function_executed', function($function_name, $arguments, $result) {
// Custom logic after tool execution
});Tasks can be resumed if interrupted:
- Resume from the last completed job
- Add additional products to existing tasks
- Maintain rollback capabilities across resume operations
Advanced filtering options:
- Category: Filter by WooCommerce product categories
- Language: Filter by language (useful for multilingual sites)
- Exclusion: Exclude products from previous runs when extending
Complete rollback capabilities:
- Restore individual product properties
- Rollback entire task runs
- Maintain change history for audit trails
The plugin includes comprehensive error handling:
- Graceful AI API failures
- Database transaction safety
- Detailed error logging
- Recovery mechanisms for interrupted tasks
- Batch Processing: Processes products sequentially to avoid overwhelming the AI API
- Memory Management: Efficient handling of large product catalogs
- Rate Limiting: Respects OpenAI API rate limits
- Database Optimization: Indexed tables for fast query performance
// Modify the system prompt sent to the AI
add_filter('wcbai_system_prompt', function($prompt) {
return $prompt . ' Additional instructions...';
});
// Add custom predefined tasks
add_filter('wcbai_default_tasks', function($tasks) {
$tasks['custom_task'] = 'Your custom task description';
return $tasks;
});// Hook into plugin initialization
add_action('wc_bulk_ai_loaded', function() {
// Plugin is fully loaded
});-
"OpenAI API key is not configured"
- Solution: Configure your API key in WooCommerce → Bulk AI settings
-
"No matching products found"
- Solution: Check your filtering criteria or ensure products exist in the specified category
-
Tasks not completing
- Solution: Check error logs and ensure your OpenAI API key has sufficient credits
-
Memory issues with large catalogs
- Solution: Process products in smaller batches or increase PHP memory limit
Enable WordPress debug mode to see detailed error messages:
define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);- API keys are stored securely using WordPress options
- All database operations use prepared statements
- User capability checks ensure only authorized users can access features
- Input validation and sanitization throughout
For issues, feature requests, or contributions, please refer to the plugin's repository or contact the development team.
This plugin is released under the GPL v2 or later license.
