Are you a WooCommerce store owner looking to offer personalized products? PPOM (Personalized Product Option Manager) is your solution for crafting custom product options and addons tailored to customer needs. This plugin simplifies adding custom fields directly to your product pages, including text inputs, dropdown menus, checkboxes, radio buttons, date pickers, file uploads, and more to enhance the shopping experience.
Quick Links
Why Choose PPOM?
- Customize with Ease: Add custom fields and product add-ons directly to your product pages, creating flexible, personalized shopping experiences.
- Increase Sales Potential: With dynamic pricing adjustments and enticing customization options, you empower customers to get exactly what they want, increasing both satisfaction and sales.
Increase sales and customer satisfaction by offering tailored product options and add-ons. PPOM is built for WooCommerce stores that need unique, customizable products.
Input Types in Free Version:
📌
Text: Displays an input box for text personalization like 'Name on Mug'.
View Demo
📌
Textarea: Displays a larger text box for longer text personalization.
View Demo
📌
Select Options (with price): Dropdown for selecting a single option. Best for many options. Supports per-option pricing.
View Demo
📌
Radio Options (with price): Radio buttons for selecting a single option. Best for fewer options.
View Demo
📌
Checkbox Options (with price): Checkboxes for selecting multiple options. Supports per-option pricing.
View Demo
📌
Date: Let customers pick a date (e.g., date of birth).
View Demo
📌
Email: Email input displays an input box that allows users to add an email address.
View Demo
📌
Number: Number input for digits only (e.g., phone numbers, IDs).
View Demo
📌
Hidden: An invisible field that stores a default value (e.g., a product code) — it appears in the cart and order details but not on the product page.
View Demo
Features in Free Version:
📌
Prices with Options: Enable dynamic pricing for custom features, ensuring each choice reflects its value.
📌
Conditional Logic: Show or hide fields based on user inputs or specific criteria.
📌
Tooltip: Displays helpful descriptions on hover without cluttering the interface.
📌 CSS Classes: Assign CSS classes to each input for enhanced styling.
📌
Fields Width: Easily control the layout by adjusting the width of each field.
📌
Min/Max Length: Set minimum and maximum values for text or number inputs.
📌
Input Masking: Ensures users input data in predefined formats for accuracy and consistency.
📌
Placeholder: Establish placeholders for
text, textarea, and number inputs.
📌
Fields Validation: Mark fields as required to ensure data completeness.
📌
Error Messaging: Define custom error messages for required fields.
📌
Field Description: Use HTML tags to enhance field descriptions.
📌
Price Display Options: Choose how to display additional prices, such as hiding them, showing only the total, or displaying them itemized.
📌
Fields Privacy: Set field visibility based on criteria such as visible to everyone, guests, or specific user roles.
📌
Apply via Category: Deploy PPOM fields category-wide to save time, or apply them to individual products as needed.
📌
Compatibility with Advanced Order Export For WooCommerce plugin: Streamlines data exports, supporting CSV, XLS, XML, and JSON formats for all custom fields.
📌
Multi-Language Support: Ready for WPML and Polylang, enhancing global usability.
Version 34.0.0 (2026-05-13)
New Features
- Added a curated template library with one-click presets for common use cases such as pizza ordering, t-shirt personalization, made-to-measure, and jewelry engraving.
- Added a live product page preview directly inside the field group editor.
- Added Cart Edit support for the WooCommerce block-based Cart, bringing parity with the legacy shortcode cart.
- Added the ability to build PPOM conditions based on WooCommerce product variations.
Improvements
- Improved the CSS/JS editors' layout, so it's easier to read and write code.
- Shortened the random suffix added to uploaded file names, keeping them readable in cart, checkout, and order confirmation emails.
- Revamped the field builder UI with a modernized modal layout, cleaner input styling, and a dedicated Advanced section for less-used options.
- Replaced the modal-based Attach to Products workflow with inline select dropdowns and AJAX search.
- Added an enable/disable toggle at the field group level, so admins can temporarily switch a group off without unassigning it.
- Added auto-save and an unsaved-changes warning to the field group editor.
- Improved the field-type picker with short descriptions and examples to help users tell similar field types apart.
- Added a designed empty state to the fields list with clear next-step guidance.
- Added a designed empty state to the PPOM Field Groups page and reworked the top navigation placement.
- Replaced plain-text color inputs throughout PPOM with a native color picker plus hex input combo.
- Improved the Personalization Preview creation screen with clearer purpose, guidance, and next steps.
- Improved front-end field layout with baseline input/label/description styling and consistent vertical alignment for side-by-side fields.
- Reworked the Integrations Settings tab with card-based layout, in-app API reference, a base URL display, and a masked, copyable secret key.
- Improved the file upload field to show accepted file types and the maximum file size before the customer attempts to upload.
- Replaced the support icon with a clearer, more accessible support button.
- Improved delete UX: trash bin icons and a specific delete confirmation dialog with a red destructive button.
- Performance: reduced database queries and PHP overhead on product pages.
- Added Esc-to-close on the Add Field modal.
- Allowed the field edit popup to float near the clicked field instead of being fixed at the top of the page.
- Enhanced security.
- Fixed typos and improved placeholder copy in admin settings.
Fixes
- Fixed the file upload field from crashing.
- Fixed a PHP 8+ deprecation warning and headers already sent error when saving certain WooCommerce settings.
- Fixed a separate stripslashes() fatal error where an array was passed instead of a string.
- Fixed the Timezone field from crashing with DateInvalidTimeZoneException on servers where the timezone list contained entries unsupported by PHP.
- Fixed a fatal TypeError when a text input add-on price was prefixed with $ or otherwise non-numeric.
- Fixed a fatal error in the REST API / Quick View context where WC()->cart was null, breaking PPOM fields in product popups.
- Fixed an SQL syntax error logged during plugin activation, causing noisy logs.
- Fixed multiple Personalization Preview bugs with multiple text boxes — color pickers, settings panels, and duplicate DOM IDs no longer break beyond the first text box.
- Fixed an undefined array key warning when adding a new text box to a Personalization Preview that had not been resized.
- Fixed multi-group rendering: custom CSS/JS from all attached field groups now renders, not just the first group. Stale group references on products are cleaned up when a group is deleted.
- Fixed image-based PPOM fields not appearing in the WooCommerce Cart Block (only the legacy shortcode cart was displaying them).
- Fixed detaching a PPOM group from a specific product tag.
- Fixed the User Roles option disappearing after saving a PPOM field configured with Visibility → By Role.
- Fixed the Images field treating any value in Max Image Select as requiring the field.
- Fixed the Stock option disappearing after saving an Image Dropdown field.
- Fixed the Pack Size option in the Quantities Pack field — the Add to Cart button no longer requires hitting the exact pack size before enabling.
- Fixed the Change Image button on the Image Cropping field so it clears all selections instead of replacing one image.
- Fixed conditional logic not saving for Select fields when an Image field was used as the controlling option.
- Fixed the file upload field not working on iOS Safari when the file field had conditional logic attached.
- Fixed price values not being converted with the WooCommerce Multilingual & Multicurrency (WCML) plugin (currency symbol changed, numeric price stayed the same).
- Fixed the Update Cart button and quantity field alignment in the Cart Items pop-up.
- Fixed the name of the plugin in the description.
See changelog for all versions.