PPOM – Product Addons & Custom Fields for WooCommerce
by Themeisle · eCommerce
Also makes 24 other plugins · 1.8M+ installs across the portfolio →
Easily add a range of custom fields to WooCommerce products, from text boxes to date selectors, allowing customers to personalize their orders.
88 health vs 68 average across 5,563 eCommerce plugins
Directory ranking optimization
How it's scored →How well this listing is tuned to rank in WordPress.org search, on the factors an owner controls. Not popularity, optimization.
Excellent listing optimization
Well tuned across the board
Daily downloads
Since 2022-10-05 · 1,426 days · wp.org + Plugin Pulse archive
30-day downloads
Rolling 30-day volume · peaks are release surges
15.6K
now · peak 64.9K
Directory rank vs rivals
wp.org popularity rank over time · higher is better · when a rival's line climbs above yours, they've overtaken you
Rating trend
Star average over time · dips mark rough releases
Update activity
How busy the existing users are, measured as downloads in the last 30 days for every 1,000 active sites. A spike means a new release everyone's pulling; a long, slow decline means an aging user base that updates less.
Release cadence
Actively maintainedHow often this plugin actually ships. A steady rhythm is the maintenance signal a single "last updated" date can't show.
11
releases in the last 12 months
2mo ago
latest release · v34.0.6
180
tagged releases on record
Recent releases
What its installed base runs
via wordpress.orgShare of active installs on each version of this plugin · 55% run the current release. Green is the current release; a big slice on older versions is a user base that has stopped updating.
Estimated active installs
The public count shows “20K+”. Our estimate pins where the real number sits.
Modeled within the band wp.org reports; tightens as we track daily.
Install history · since 2015-10-25 · 1,449 observations
Estimated value
What this plugin might earn a year, and what it might sell for. Modeled from public signals; we don't see anyone's books.
Est. annual revenue
Est. acquisition value
No paid tier is visible, so we don't put a figure on revenue or sale value: that would be guessing. The install base is a real asset to an acquirer, just not one public data lets us price. A declining trend compresses what a buyer would pay.
Details
Recent reviews
All reviews on wp.org ↗- ★★★★★ samuel lamas1mo ago
Estou utilizando em um site desenvolvido por mim de e-commerce/woo e adicionaei este maravilhoso plugin e está funcionando tudo perfeitamente!
Read on wp.org ↗ - ★★★★★ momo-fr3mo ago
The essential plugin for creating multiple options with conditional display. A must-have.
Read on wp.org ↗ - ★★★★★ thefredjacobs4mo ago
Thank you. Good Plugin.
Read on wp.org ↗ - ★★★★★ creativedays4mo ago
Hello PPOM Support Team, I am experiencing an issue on my WooCommerce site where the dynamic price table and subtotal container of PPOM fail to load on my translated product pages. I am using the PPOM Free version alongside Polylang for WooCommerce. The Problem: On my primary language (Greek) product page, everything works perfectly. However, on the translated (English) product page, the price table does not render when options are selected. Upon inspecting the DOM, I found that the hidden input for ppom_option_price is completely empty on the English page, which breaks the dynamic price calculation: Greek Page (Works):English Page (Fails):Troubleshooting Steps I Have Already Taken: To isolate the issue, I ran several tests and confirmed the following: The PPOM Group Settings are correct: If I attach the English PPOM Group to the Greek product, it works perfectly.The PPOM Fields are not the issue: If I attach the working Greek PPOM Group to the English product, the array is still empty.WooCommerce data is healthy: I queried the database directly. Both the Greek and English products have a standard _price of 31.90, the exact same tax status, and identical decimal/thousand separators.No PHP Fatal Errors: There are no silent PHP errors crashing the page, and the base json_encode() function works fine in the English environment.Loco Translate is not interfering: I bypassed translation files temporarily, and the issue persisted.Conclusion: It appears that when the WordPress environment is set to the secondary language (English), Polylang is somehow intercepting or stripping the product price context when PPOM attempts to build the ppom_option_price array, resulting in a blank value. Is this a know bug? Is there a known workaround? Thank you for your time and help! This topic was modified 2 months, 3 weeks ago by creativedays.
Read on wp.org ↗ - ★★★★★ Anonymous11mo ago
A really nice and easy plugin to use that solves my issue perfectly.
Read on wp.org ↗ - ★★★★★ unyverso11mo ago
I installed PPOM for WooCommerce by mistake directly from the WooCommerce interface. The plugin was never activated, but when I try to delete it from the WordPress dashboard, nothing happens — the “Delete” button doesn’t respond and the plugin just stays there. There’s no visible error message, and everything else on the site is working normally. I’ve tried refreshing, clearing cache, and reloading the Plugins page, but the issue persists. Could you please advise on how to completely remove the plugin from WordPress? Thank you for your help! Best regards,Miguel
Read on wp.org ↗ - ★★★★★ matutino1.1y ago
It’s just what I needed for adding an additional service on a product and charging for it per units. Thank you!
Read on wp.org ↗ - ★★★★★ Chiranjib1.4y ago
I like it
Read on wp.org ↗
Latest updates
via wp.org changelogRecent releases and news for this plugin
- 2026-07-31 Version 34.0.8 Fixed an issue where quantity fields with prices would not appear on the product page when a price matrix was attached to the same product. Fixed a fatal error that occurred when displaying product fields on pages using 34.0.8
- 2026-07-20 Version 34.0.7 Fixed product form assignments regression See changelog for all versions . 34.0.7
Known vulnerabilities
via Wordfence Intelligence13 disclosed vulnerabilities on record for this plugin, all fixed in the current version. Sites on older versions stay exposed until they update.
- High · 7.5 PPOM – Product Addons & Custom Fields for WooCommerce <= 33.0.15 - Unauthenticated SQL Injection ↗2025-10-17 CVE-2025-11691 Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection') Affects <= 33.0.15 Patched in 33.0.16
- Critical · 9.8 PPOM – Product Addons & Custom Fields for WooCommerce <= 33.0.15 - Unauthenticated Arbitrary File Upload ↗2025-10-17 CVE-2025-11391 Unrestricted Upload of File with Dangerous Type Affects <= 33.0.15 Patched in 33.0.16
- Medium · 4.4 PPOM for WooCommerce <= 33.0.8 - Authenticated (Administrator+) Stored Cross-Site Scripting ↗2025-01-24 CVE-2025-24668 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') Affects <= 33.0.8 Patched in 33.0.9
- 2024-06-06 CVE-2024-35728 Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection') Affects <= 32.0.20 Patched in 32.0.21
- Critical · 9.8 Product Addons & Fields for WooCommerce <= 32.0.18 - Unauthenticated Arbitrary File Upload via ppom_upload_file ↗2024-04-25 CVE-2024-3962 Unrestricted Upload of File with Dangerous Type Affects <= 32.0.18 Patched in 32.0.19
- Medium · 4.4 PPOM for WooCommerce <= 32.0.5 - Authenticated (Administrator+) Stored Cross-Site Scripting via plugin settings ↗2023-05-02 CVE-2023-1839 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') Affects < 32.0.6 Patched in 32.0.6
- 2023-05-01 CVE-2023-2256 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') Affects <= 32.0.6 Patched in 32.0.7
- 2019-08-10 CVE-2019-14948 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') Affects < 18.4 Patched in 18.4
- Critical · 9.8 PPOM for WooCommerce <= 1.1 - Arbitrary File Upload ↗2016-09-19 Unrestricted Upload of File with Dangerous Type Affects <= 1.1 Patched in 2.0
Vulnerability records provided by Wordfence Intelligence. Copyright 2012-2026 Defiant Inc. License and terms.
CVE records: Copyright 1999-2026 The MITRE Corporation. CVE terms of use.
Behavioral tests
via WP HiveAutomated install-time checks, tested on PHP 8.1.12 · WP 7.0.1
Languages
via translate.wordpress.orgTranslated into 9 languages, 0 at 90% or more
Growth timeline
Install-tier crossings we have observed, and how long each tier took to outgrow
No tier crossings observed yet.
Competes with
The plugins that solve the same job, ranked by shared tags then reach, closest match first. The letter on the right is each plugin's health grade (A best, F worst).
-
Advanced Product Fields (Product Addons) for WooCommerce 50K+ installs · 4.7★ · 3 shared tags A -
Extra Product Options for WooCommerce 600+ installs · 4.0★ · 3 shared tags B -
Product Addons for Woocommerce – Product Options with Custom Fields 30K+ installs · 4.9★ · 2 shared tags A -
Extra Product Options For WooCommerce | Custom Product Addons and Fields 30K+ installs · 4.8★ · 2 shared tags A -
YITH WooCommerce Product Add-Ons 20K+ installs · 3.8★ · 2 shared tags B -
Flexible Product Fields (WooCommerce Product Addons) – WooCommerce Product Page Editor 10K+ installs · 4.4★ · 2 shared tags A
Embed this report card
Drop a live Pulse card for PPOM – Product Addons & Custom Fields for WooCommerce into a readme, a review or a deck. It updates itself.
<iframe src="https://plugins.wpmayor.com/embed/woocommerce-product-addon" width="480" height="300" style="border:0" loading="lazy" title="PPOM – Product Addons & Custom Fields for WooCommerce — Plugin Pulse"></iframe> PPOM – Product Addons & Custom Fields for WooCommerce: 20K+ active installs, 4.4★ (283 reviews). Plugin Pulse (WP Mayor), as of 2026-08-30. https://plugins.wpmayor.com/plugin/woocommerce-product-addon