A WordPress plugin that provides a powerful product configuration system with RFQ (Request for Quote) functionality, Elementor integration, SEO optimization, and analytics tracking.
- Custom product configuration system
- Layer-based design with Photoshop compatibility
- Dynamic pricing engine
- File upload support with background removal
- Comprehensive field type system
- RFQ workflow management
- Native Elementor widget
- Rank Math SEO optimization
- Google Merchant Center feed
- Google Analytics 4 tracking
- WooCommerce My Account integration (optional)
- Modern WordPress architecture
- REST API support
- Custom database tables
- Extensible field registry
- Hook and filter system
- Translation ready
- WordPress 6.3+
- PHP 8.0+
- MySQL 5.7+ or MariaDB 10.3+
- Elementor 3.7+ (for widget functionality)
- Upload the
custom-product-configurator
folder to/wp-content/plugins/
- Activate the plugin through the 'Plugins' menu
- Go to 'Product Configurator' in the admin menu to begin setup
- Create configurable products
- Set up product layers and options
- Configure RFQ form fields
- Set pricing rules
- Configure email templates
- Edit a page with Elementor
- Find the "Product Configurator" widget
- Select a product and customize layout
- Style using Elementor controls
- Configure Rank Math settings
- Set up product schema
- Configure sitemap settings
- Set meta title/description patterns
- Enter Google Analytics 4 Measurement ID
- Configure enhanced measurement
- Set up custom event tracking
- Configure user journey tracking
[product_configurator id="123"]
<?php echo do_shortcode('[product_configurator id="123"]'); ?>
Drag and drop the "Product Configurator" widget into your layout.
- Elementor Integration
- SEO Integration
- Analytics Integration
- Merchant Center Integration
- QA Checklist
Add custom field types:
add_action('init', function() {
$registry = Custom_Product_Configurator\Fields\Field_Registry::instance();
$registry->register_field_type('custom_field', Your_Custom_Field::class);
});
Product data:
// Modify product data
add_filter('cpc_product_data', function($data, $product_id) {
// Modify $data
return $data;
}, 10, 2);
RFQ process:
// Before RFQ submission
add_action('cpc_before_rfq_submit', function($data) {
// Handle pre-submission
});
// After RFQ submission
add_action('cpc_after_rfq_submit', function($rfq_id, $data) {
// Handle post-submission
}, 10, 2);
Endpoints available at:
/wp-json/custom-product-configurator/v1/products
/wp-json/custom-product-configurator/v1/configurations
/wp-json/custom-product-configurator/v1/quotes
- Create field class:
class Your_Custom_Field extends Field_Type {
public function render($field, $value = '', $context = 'frontend') {
// Render field HTML
}
public function validate($value, $field) {
// Validate field value
return $value;
}
}
- Register field type:
add_action('init', function() {
$registry = Field_Registry::instance();
$registry->register_field_type('your_field', Your_Custom_Field::class);
});
Override templates by copying them to your theme:
your-theme/
custom-product-configurator/
templates/
configurator-template.php
single-configurable-product.php
-
Configurator not loading
- Check JavaScript console
- Verify Elementor version
- Check for conflicts
-
Images not uploading
- Check file permissions
- Verify upload directory
- Check file size limits
-
RFQ not sending
- Check email configuration
- Verify form submission
- Check server logs
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
This plugin is licensed under the GPL v2 or later.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
- Built with WordPress
- Integrates with Elementor
- Uses Tailwind CSS