[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$ffgMS9_WMLJa3v6rvAgCkNVFX4RqqwslpExpL_omz5e4":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":27,"vuln_count":28,"unpatched_count":29,"last_vuln_date":30,"fetched_at":31,"vulnerabilities":32,"developer":179,"crawl_stats":38,"alternatives":187,"analysis":284,"fingerprints":1420},"woocommerce-product-addon","PPOM – Product Addons & Custom Fields for WooCommerce","33.0.18","Themeisle","https:\u002F\u002Fprofiles.wordpress.org\u002Fthemeisle\u002F","\u003Cp>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.\u003C\u002Fp>\n\u003Ch3>Quick Links\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Would you like to see PPOM in action before installing it? \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002F\" rel=\"nofollow ugc\">VIEW PPOM FIELDS DEMO\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Need any help with setup? \u003Ca href=\"https:\u002F\u002Fdocs.themeisle.com\u002Fcollection\u002F1695-product-option-manager\" rel=\"nofollow ugc\">CHECK DOCUMENTATION\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Interested in PPOM PRO? \u003Ca href=\"https:\u002F\u002Fthemeisle.com\u002Fplugins\u002Fppom-pro\u002Fupgrade?utm_source=wordpressorg&utm_medium=readme&utm_campaign=quick-links\" rel=\"nofollow ugc\">LEARN MORE ABOUT PPOM PRO\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Why Choose PPOM?\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Customize with Ease\u003C\u002Fstrong>: Add custom fields and product add-ons directly to your product pages, creating flexible, personalized shopping experiences that encourage customers to purchase.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Increase Sales Potential\u003C\u002Fstrong>: With dynamic pricing adjustments and enticing customization options, you empower customers to get exactly what they want, increasing both satisfaction and sales.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Boost your sales and customer satisfaction by offering tailored product options and add-ons. PPOM is the ultimate solution for WooCommerce stores looking to provide unique, customizable products.\u003C\u002Fp>\n\u003Ch3>Input Types in Free Version:\u003C\u002Fh3>\n\u003Cp>📌 \u003Cstrong>Text\u003C\u002Fstrong>: Displays an input box for text personalization like ‘Name on Mug’. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-text-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Textarea\u003C\u002Fstrong>: Displays a larger text box for longer text personalization. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-textarea-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Select Options (with price)\u003C\u002Fstrong>: Dropdown for selecting a single option. Best for many options. Supports per-option pricing. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-select-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Radio Options (with price)\u003C\u002Fstrong>: Radio buttons for selecting a single option. Best for fewer options. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-radio-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Checkbox Options (with price)\u003C\u002Fstrong>: Checkboxes for selecting multiple options. Supports per-option pricing. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-checkbox-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Date\u003C\u002Fstrong>: Date picker for selecting dates (e.g., date of birth). \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-date-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Email\u003C\u002Fstrong>: Email input displays an input box that allows users to add an email address. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-email-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Number\u003C\u002Fstrong>: Number input for digits only (e.g., phone numbers, IDs). \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-number-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Hidden\u003C\u002Fstrong>: Hidden input with a default value, visible only after adding to cart. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fhidden-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Features in Free Version:\u003C\u002Fh3>\n\u003Cp>📌 \u003Cstrong>Prices with Options\u003C\u002Fstrong>: Enable dynamic pricing for custom features, ensuring each choice reflects its value.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Conditional Logic\u003C\u002Fstrong>: Show or hide fields based on user inputs or specific criteria.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Tooltip\u003C\u002Fstrong>: Displays helpful descriptions on hover without cluttering the interface.\u003C\u002Fp>\n\u003Cp>📌 CSS Classes: Assign CSS classes to each input for enhanced styling.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Fields Width\u003C\u002Fstrong>: Easily control the layout by adjusting the width of each field.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Min\u002FMax Length\u003C\u002Fstrong>: Set minimum and maximum values for text or number inputs.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Input Masking\u003C\u002Fstrong>: Ensures users input data in predefined formats for accuracy and consistency.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Placeholder\u003C\u002Fstrong>: Establish placeholders for \u003Ccode>text, textarea, and number inputs\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Fields Validation\u003C\u002Fstrong>: Mark fields as required to ensure data completeness.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Error Messaging\u003C\u002Fstrong>: Define custom error messages for required fields.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Field Description\u003C\u002Fstrong>: Use HTML tags to enhance field descriptions.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Price Display Options\u003C\u002Fstrong>: Choose how to display additional prices, such as hiding them, showing only the total, or displaying them itemized.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Fields Privacy\u003C\u002Fstrong>: Set field visibility based on criteria such as visible to everyone, guests, or specific user roles.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Apply via Category\u003C\u002Fstrong>: Deploy PPOM fields category-wide to save time, or apply them to individual products as needed.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Compatibility with Advanced Order Export For WooCommerce plugin\u003C\u002Fstrong>: Streamlines data exports, supporting CSV, XLS, XML, and JSON formats for all custom fields.\u003C\u002Fp>\n\u003Cp>📌 \u003Cstrong>Multi-Language Support\u003C\u002Fstrong>: Ready for WPML and Polylang, enhancing global usability.\u003C\u002Fp>\n\u003Ch3>Video Guide\u003C\u002Fh3>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FwGQBOzyMF4U?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch3>PPOM PRO Inputs:\u003C\u002Fh3>\n\u003Cp>💎 \u003Cstrong>Audio\u002FVideo\u003C\u002Fstrong>: Allow customers to select audio\u002Fvideo from predefined audios\u002Fvideos by admin. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-video-music\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Bulk Quantity\u003C\u002Fstrong>: Set discount prices for larger quantities. Ideal for printing and design businesses. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-bulk-quantity-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Chained Input\u003C\u002Fstrong>: Renders chained input in the dropdown. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fchained-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Collapse Input\u003C\u002Fstrong>: This input acts like a parent block for managing grouped inputs. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fcollapse-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Color Palette\u003C\u002Fstrong>: Allow customers to select color(s) from a predefined set of colors by admin. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-color-palette\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Color Picker\u003C\u002Fstrong>: Allow customers to select any colors and save Hex value. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-color-picker\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Conditional Images Input\u003C\u002Fstrong>: Display different info based on the chosen images. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fconditional-images-input\u002F?attach_id=325&ppom-meta=41,0\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Date Range\u003C\u002Fstrong>: Select two dates between from and to. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-date-range-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Divider Input\u003C\u002Fstrong>: Visually separates meta fields for better product page design. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-divider-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Domain Input\u003C\u002Fstrong>: Check web domain availability. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-domain-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Emojis Input\u003C\u002Fstrong>: \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-emoji-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>File Upload\u003C\u002Fstrong>: Allow customers to upload files with configurable file types and size limits. Includes progress bar and thumbnail display. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-file-upload-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Fixed Price Input\u003C\u002Fstrong>: Set fixed prices with Add Option \u002F First Option. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Ffixed-price-input-with-add-option-first-option\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Fonts Picker\u003C\u002Fstrong>: Allows you to insert text and select the desired font for it, offering a preview. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-fonts-picker\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>HTML Content\u003C\u002Fstrong>: Add HTML tags, like p or h1 tags, to add more details for your extra fields. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-basic-html-with-content\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Image Cropper\u003C\u002Fstrong>: Allows users to upload and crop images. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-basic-image-cropping-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Image Dropdown Input\u003C\u002Fstrong>: Dropdown with images for complex pricing options like print packages. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fimage-dropdown-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Images Options\u003C\u002Fstrong>: Image input is just like Radio\u002FCheckbox, but images can be uploaded against each option. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-images-options\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Measure Input\u003C\u002Fstrong>: Set prices for measure units like milk, clothes & frames, etc. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-measure-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Phone Input\u003C\u002Fstrong>: Phone number input field, useful for business cards and marketing products. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-images-options\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Price Matrix with Discount\u003C\u002Fstrong>: Set tiered or discount prices on bulk purchases. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-price-matrix-discount\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Personalized Preview\u003C\u002Fstrong>: Users can type text, customize font, and preview how it appears on the product image. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-texter-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Quantities Pack Input\u003C\u002Fstrong>: Create multiple-choice product pages where users can buy different quantities of product variants. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fquantities-pack-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Quantity Option Input\u003C\u002Fstrong>: Add quantity fields for extras (e.g., additional bookmarks with a book purchase). \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fquantity-option-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Radio Switcher Input\u003C\u002Fstrong>: Visual radio buttons with different images for each option. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fradio-switcher-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Select Option Quantity Input\u003C\u002Fstrong>: This input allows you to display a dropdown with options along with their quantities. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fselect-quantity-option-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Superlist Input\u003C\u002Fstrong>: Predefined dropdowns for common data like languages, countries, and currencies. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fsuperlist-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Text Counter\u003C\u002Fstrong>: This input is a special text input that can restrict the total number of words or characters. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-text-counter\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Timezone\u003C\u002Fstrong>: Select a timezone from a pre-defined list of timezone. Exclude\u002Finclude time zones. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct-category\u002Ftimezone-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Variation Matrix Input\u003C\u002Fstrong>: Allow customers to order different quantities for different options like sizes or colors. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fbasic-variation-matrix-input\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Variation Quantities\u003C\u002Fstrong>: Allow customers to order different quantities for different options. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fdemo-for-variation-quantities\u002F\" rel=\"nofollow ugc\">View Demo\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>PPOM PRO Features:\u003C\u002Fh3>\n\u003Cp>💎 \u003Cstrong>More Conditional Logic Operators\u003C\u002Fstrong>: Expand conditional logic for text and numeric fields with operators like contains, regex, between, multiples, less than, greater than, is odd, is even, and more.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Custom CSS & Javascript\u003C\u002Fstrong>: Add custom CSS and JavaScript for full control over field appearance and behavior.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Apply via Product Tags\u003C\u002Fstrong>: Attach fields to products using product tags.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Options Prices Taxable\u003C\u002Fstrong>: Apply tax settings to product options for accurate pricing.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Weight Options\u003C\u002Fstrong>: Weight can be assigned for options.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Multiple Meta Groups\u003C\u002Fstrong>: Assign multiple metas groups to a single product.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Import\u002FExport\u003C\u002Fstrong>: You can use PPOM to import or export your meta fields directly from PPOM settings.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fwatch?v=1IoABjkQ--I\" rel=\"nofollow ugc\">Client-Side Validation\u003C\u002Fa>\u003C\u002Fstrong>: Validate data on the client side to prevent page refreshes and speed up error detection.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>PPOM Repeater\u003C\u002Fstrong>: Repeat meta-field groups as needed.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Compatibility with WooCommerce Currency Switcher\u003C\u002Fstrong>: Seamlessly switch currencies to accommodate global customers.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Compatibility with WPML Currency Switcher\u003C\u002Fstrong>: Offers dynamic currency switching to match customer location.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Compatibility with Wholesale Plugin\u003C\u002Fstrong>: Integrates with WooCommerce Wholesale for differentiated pricing structures.\u003C\u002Fp>\n\u003Cp>💎 \u003Cstrong>Compatible with all WooCommerce themes\u003C\u002Fstrong>: Works with all WooCommerce themes, ensuring consistency and efficiency.\u003C\u002Fp>\n\u003Ch3>More Add-ons in PPOM PRO:\u003C\u002Fh3>\n\u003Cp>✅ \u003Cstrong>Conditional Repeater\u003C\u002Fstrong>: Automatically repeat fields based on quantity entered. Example: customer orders 5 caps and gets 5 name fields for personalization. \u003Ca href=\"https:\u002F\u002Fdemo-ppom-lite.vertisite.cloud\u002Fproduct\u002Fpersonalized-caps-using-conditional-repeater\u002F\" rel=\"nofollow ugc\">VIEW DEMO\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>✅ \u003Cstrong>Cart Edit\u003C\u002Fstrong>: Allow customers to modify their orders from the cart page.\u003C\u002Fp>\n\u003Cp>✅ \u003Cstrong>Fields Popup\u003C\u002Fstrong>: Display PPOM fields inside a popup on the product page.\u003C\u002Fp>\n\u003Cp>✅ \u003Cstrong>Collapse Settings\u003C\u002Fstrong>: Customize how sections open and display with colors, icons, and navigation options.\u003C\u002Fp>\n\u003Cp>✅ \u003Cstrong>Enquiry Form\u003C\u002Fstrong>: Collect custom customer inquiries directly from your product pages.\u003C\u002Fp>\n\u003Cp>Interested in PPOM PRO? \u003Ca href=\"https:\u002F\u002Fthemeisle.com\u002Fplugins\u002Fppom-pro\u002Fupgrade?utm_source=wordpressorg&utm_medium=readme&utm_campaign=interested-pro\" rel=\"nofollow ugc\">Learn more\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Use Cases\u003C\u002Fh3>\n\u003Cp>🍰 \u003Cstrong>Bakery\u003C\u002Fstrong>: Customers choose cake sizes, flavors, and decorations.\u003C\u002Fp>\n\u003Cp>💍 \u003Cstrong>Jewelry Store\u003C\u002Fstrong>: Offer material choices (gold, silver, platinum), gemstones, and custom engravings.\u003C\u002Fp>\n\u003Cp>🌍 \u003Cstrong>Travel and Tours\u003C\u002Fstrong>: Let customers select destinations, accommodations, and activities with conditional options.\u003C\u002Fp>\n\u003Cp>👕 \u003Cstrong>Custom Apparel\u003C\u002Fstrong>: Allow fabric, color, and design uploads for personalized clothing.\u003C\u002Fp>\n\u003Ch3>See what real users talk about us:\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\n\u003Cp>“\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fbest-than-best-2\u002F\" rel=\"ugc\">Best than Best\u003C\u002Fa>” – With help of this plugin, I could able to add some extra items to my main product with ability do increase and decrease the price. Thanks guys, keep it going…\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>“\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fperfect-for-different-types-of-websites\u002F\" rel=\"ugc\">Perfect for Different Types of Websites\u003C\u002Fa>” – Great plugin that I use across 3 different types of website with no problems. Highly recommend it as its easy to use even for a beginner like me!\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>“\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Fsimply-the-best-better-than-all-the-rest-4\u002F\" rel=\"ugc\">Simply the best, better than all the rest\u003C\u002Fa>” – This review is more about PPOM Pro, than the free version. However what’s considered Pro at the competion, is Free here. And what’s Pro about PPOM is actually Ultra. Features like custom font pickers are simply stellar. Saves months of coding. TL;DR: ThemeIsle has made the #1 PPOM plugin in the entire WooCommerce space.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>“\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Ftopic\u002Famazing-plugin-2602\u002F\" rel=\"ugc\">Amazing plugin\u003C\u002Fa>” – I love this plugin! I use the free version and I’m extremely happy with it. I would highly recommend it to anyone needing to add on extras to their products in WooCommerce.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Support\u003C\u002Fh3>\n\u003Cp>Need help? Open a thread on the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fwoocommerce-product-addon\u002F\" rel=\"ugc\">Support Forum\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Documentation\u003C\u002Fh3>\n\u003Cp>View the \u003Ca href=\"https:\u002F\u002Fdocs.themeisle.com\u002Fcollection\u002F1695-product-option-manager\" rel=\"nofollow ugc\">documentation\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Contribute\u003C\u002Fh3>\n\u003Cp>PPOM is open-source. Contribute on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FCodeinwp\u002Fwoocommerce-product-addon\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Useful Resources\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Read more about WordPress on our \u003Ca href=\"https:\u002F\u002Fthemeisle.com\u002Fblog\u002F\" rel=\"nofollow ugc\">blog\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Interested in our other plugins? Take a look \u003Ca href=\"https:\u002F\u002Fthemeisle.com\u002Fwordpress-plugins\u002F?utm_source=wordpressorg&utm_medium=readme&utm_campaign=PPOM\" rel=\"nofollow ugc\">here\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n","Easily add a range of custom fields to WooCommerce products, from text boxes to date selectors, allowing customers to personalize their orders.",20000,1439896,90,277,"2026-01-27T09:54:00.000Z","6.9.4","3.5","7.2",[20,21,22,23,24],"product-addons","woocommerce-product","woocommerce-product-addons","woocommerce-product-fields","woocommerce-product-options","https:\u002F\u002Fthemeisle.com\u002Fplugins\u002Fppom-pro\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwoocommerce-product-addon.33.0.18.zip",80,11,0,"2025-11-17 00:00:00","2026-03-15T15:16:48.613Z",[33,49,65,78,93,108,119,131,144,157,168],{"id":34,"url_slug":35,"title":36,"description":37,"plugin_slug":4,"theme_slug":38,"affected_versions":39,"patched_in_version":40,"severity":41,"cvss_score":42,"cvss_vector":43,"vuln_type":44,"published_date":30,"updated_date":45,"references":46,"days_to_patch":48},"CVE-2025-66069","ppom-for-woocommerce-missing-authorization","PPOM for WooCommerce \u003C= 33.0.16 - Missing Authorization","The PPOM – Product Addons & Custom Fields for WooCommerce plugin for WordPress is vulnerable to unauthorized access due to a missing capability check on a function in all versions up to, and including, 33.0.16. This makes it possible for authenticated attackers, with Subscriber-level access and above, to perform an unauthorized action.",null,"\u003C=33.0.16","33.0.17","medium",4.3,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:N\u002FS:U\u002FC:N\u002FI:L\u002FA:N","Missing Authorization","2025-11-25 15:55:54",[47],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F9a129b7d-2732-4e4e-b168-98934f1c6ffe?source=api-prod",9,{"id":50,"url_slug":51,"title":52,"description":53,"plugin_slug":4,"theme_slug":38,"affected_versions":54,"patched_in_version":55,"severity":56,"cvss_score":57,"cvss_vector":58,"vuln_type":59,"published_date":60,"updated_date":61,"references":62,"days_to_patch":64},"CVE-2025-11691","ppom-product-addons-custom-fields-for-woocommerce-unauthenticated-sql-injection","PPOM – Product Addons & Custom Fields for WooCommerce \u003C= 33.0.15 - Unauthenticated SQL Injection","The PPOM – Product Addons & Custom Fields for WooCommerce plugin for WordPress is vulnerable to SQL Injection via the PPOM_Meta::get_fields_by_id() function in all versions up to, and including, 33.0.15 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query.  This makes it possible for unauthenticated attackers to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database. This is only exploitable when the Enable Legacy Price Calculations setting is enabled.","\u003C=33.0.15","33.0.16","high",7.5,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:N\u002FS:U\u002FC:H\u002FI:N\u002FA:N","Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')","2025-10-17 18:11:36","2025-10-18 06:42:49",[63],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Feefcc290-b7f7-4cf0-9ccc-db4c883d6426?source=api-prod",1,{"id":66,"url_slug":67,"title":68,"description":69,"plugin_slug":4,"theme_slug":38,"affected_versions":54,"patched_in_version":55,"severity":70,"cvss_score":71,"cvss_vector":72,"vuln_type":73,"published_date":74,"updated_date":75,"references":76,"days_to_patch":64},"CVE-2025-11391","ppom-product-addons-custom-fields-for-woocommerce-unauthenticated-arbitrary-file-upload","PPOM – Product Addons & Custom Fields for WooCommerce \u003C= 33.0.15 - Unauthenticated Arbitrary File Upload","The PPOM – Product Addons & Custom Fields for WooCommerce plugin for WordPress is vulnerable to arbitrary file uploads due to missing file type validation in the image cropper functionality in all versions up to, and including, 33.0.15. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible. While the vulnerable code is in the free version, this only affected users with the paid version of the software installed and activated.","critical",9.8,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:N\u002FS:U\u002FC:H\u002FI:H\u002FA:H","Unrestricted Upload of File with Dangerous Type","2025-10-17 18:09:32","2025-10-18 06:42:48",[77],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fcf851bed-f5d8-44e2-810d-906ba3d3c1c5?source=api-prod",{"id":79,"url_slug":80,"title":81,"description":82,"plugin_slug":4,"theme_slug":38,"affected_versions":83,"patched_in_version":84,"severity":41,"cvss_score":85,"cvss_vector":86,"vuln_type":87,"published_date":88,"updated_date":89,"references":90,"days_to_patch":92},"CVE-2025-24668","ppom-for-woocommerce-authenticated-administrator-stored-cross-site-scripting","PPOM for WooCommerce \u003C= 33.0.8 - Authenticated (Administrator+) Stored Cross-Site Scripting","The PPOM for WooCommerce plugin for WordPress is vulnerable to Stored Cross-Site Scripting in versions up to, and including, 33.0.8 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with administrator-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This only impacts multi-site installations and installations where unfiltered_html has been disabled.","\u003C=33.0.8","33.0.9",4.4,"CVSS:3.1\u002FAV:N\u002FAC:H\u002FPR:H\u002FUI:N\u002FS:C\u002FC:L\u002FI:L\u002FA:N","Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')","2025-01-24 00:00:00","2025-01-28 18:56:56",[91],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F352e27ad-4266-4384-be2b-d94d241373a8?source=api-prod",5,{"id":94,"url_slug":95,"title":96,"description":97,"plugin_slug":4,"theme_slug":38,"affected_versions":98,"patched_in_version":99,"severity":41,"cvss_score":100,"cvss_vector":101,"vuln_type":102,"published_date":103,"updated_date":104,"references":105,"days_to_patch":107},"CVE-2024-35728","ppom-for-woocommerce-unauthenticated-content-injection-vulnerability","PPOM for WooCommerce \u003C= 32.0.20 - Unauthenticated Content Injection Vulnerability","The Product Addons & Fields for WooCommerce plugin for WordPress is vulnerable to Content Injection in all versions up to, and including, 32.0.20. This is due to the plugin not properly validating a field that can be updated. This makes it possible for unauthenticated attackers to inject arbitrary content.","\u003C=32.0.20","32.0.21",5.3,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:N\u002FS:U\u002FC:N\u002FI:L\u002FA:N","Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')","2024-06-06 00:00:00","2024-06-12 13:34:50",[106],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F325813f3-c893-4e98-ad99-452ff63d5e18?source=api-prod",7,{"id":109,"url_slug":110,"title":111,"description":112,"plugin_slug":4,"theme_slug":38,"affected_versions":113,"patched_in_version":114,"severity":70,"cvss_score":71,"cvss_vector":72,"vuln_type":73,"published_date":115,"updated_date":116,"references":117,"days_to_patch":64},"CVE-2024-3962","product-addons-fields-for-woocommerce-unauthenticated-arbitrary-file-upload-via-ppomuploadfile","Product Addons & Fields for WooCommerce \u003C= 32.0.18 - Unauthenticated Arbitrary File Upload via ppom_upload_file","The Product Addons & Fields for WooCommerce plugin for WordPress is vulnerable to arbitrary file uploads due to missing file type validation in the ppom_upload_file function in all versions up to, and including, 32.0.18. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible. Successful exploitation requires the PPOM Pro plugin to be installed along with a WooCommerce product that contains a file upload field to retrieve the correct nonce.","\u003C=32.0.18","32.0.19","2024-04-25 00:00:00","2024-04-26 08:29:21",[118],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F4f95bcc3-354e-4016-9a17-945569b076b6?source=api-prod",{"id":120,"url_slug":121,"title":122,"description":123,"plugin_slug":4,"theme_slug":38,"affected_versions":124,"patched_in_version":125,"severity":41,"cvss_score":85,"cvss_vector":86,"vuln_type":87,"published_date":126,"updated_date":127,"references":128,"days_to_patch":130},"CVE-2023-1839","ppom-for-woocommerce-authenticated-administrator-stored-cross-site-scripting-via-plugin-settings","PPOM for WooCommerce \u003C= 32.0.5 - Authenticated (Administrator+) Stored Cross-Site Scripting via plugin settings","The PPOM for WooCommerce plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the plugin settings in versions up to and including 32.0.5 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with administrator-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. This only impacts multi-site installations and installations where unfiltered_html has been disabled.","\u003C32.0.6","32.0.6","2023-05-02 00:00:00","2024-01-22 19:56:02",[129],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F8f105002-a19a-4376-af65-7e9416175174?source=api-prod",266,{"id":132,"url_slug":133,"title":134,"description":135,"plugin_slug":4,"theme_slug":38,"affected_versions":136,"patched_in_version":137,"severity":41,"cvss_score":138,"cvss_vector":139,"vuln_type":87,"published_date":140,"updated_date":127,"references":141,"days_to_patch":143},"CVE-2023-2256","ppom-for-woocommerce-reflected-cross-site-scripting","PPOM for WooCommerce \u003C= 32.0.6 - Reflected Cross-Site Scripting","The PPOM for WooCommerce plugin for WordPress is vulnerable to Reflected Cross-Site Scripting via certain query parameters in versions up to, and including, 32.0.6 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that execute if they can successfully trick a user into performing an action such as clicking on a link.","\u003C=32.0.6","32.0.7",6.1,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:N\u002FUI:R\u002FS:C\u002FC:L\u002FI:L\u002FA:N","2023-05-01 00:00:00",[142],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fd223de07-6377-491f-8d2c-9c31aa814792?source=api-prod",267,{"id":145,"url_slug":146,"title":147,"description":148,"plugin_slug":4,"theme_slug":38,"affected_versions":149,"patched_in_version":150,"severity":41,"cvss_score":151,"cvss_vector":152,"vuln_type":44,"published_date":153,"updated_date":127,"references":154,"days_to_patch":156},"CVE-2021-25018","ppom-for-woocommerce-missing-authorization-to-stored-cross-site-scripting","PPOM for WooCommerce \u003C= 23.9 - Missing Authorization to Stored Cross-Site Scripting","The PPOM for WooCommerce WordPress plugin before 24.0 does not have authorisation and CSRF checks in the ppom_settings_panel_action AJAX action, allowing any authenticated to call it and set arbitrary settings. Furthermore, due to the lack of sanitisation and escaping, it could lead to Stored XSS issues","\u003C=23.9","24.0",5.4,"CVSS:3.1\u002FAV:N\u002FAC:L\u002FPR:L\u002FUI:R\u002FS:C\u002FC:L\u002FI:L\u002FA:N","2022-01-17 00:00:00",[155],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F8bde357d-e34a-4931-a1a4-bd3ed3b72cec?source=api-prod",736,{"id":158,"url_slug":159,"title":160,"description":161,"plugin_slug":4,"theme_slug":38,"affected_versions":162,"patched_in_version":163,"severity":41,"cvss_score":151,"cvss_vector":152,"vuln_type":87,"published_date":164,"updated_date":127,"references":165,"days_to_patch":167},"CVE-2019-14948","ppom-for-woocommerce-authenticated-stored-cross-site-scripting","PPOM for WooCommerce \u003C= 18.3 - Authenticated Stored Cross-Site Scripting","The woocommerce-product-addon plugin before 18.4 for WordPress has XSS via an import of a new meta data structure.","\u003C18.4","18.4","2019-08-10 00:00:00",[166],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002Fb84c0f8c-25a7-47c7-93cf-9b5060c07c72?source=api-prod",1627,{"id":169,"url_slug":170,"title":171,"description":172,"plugin_slug":4,"theme_slug":38,"affected_versions":173,"patched_in_version":174,"severity":70,"cvss_score":71,"cvss_vector":72,"vuln_type":73,"published_date":175,"updated_date":127,"references":176,"days_to_patch":178},"WF-2b0198c8-4be8-44e0-9728-d5d2aa376796-woocommerce-product-addon","ppom-for-woocommerce-arbitrary-file-upload","PPOM for WooCommerce \u003C= 1.1 - Arbitrary File Upload","The WooCommerce PPOM plugin for WordPress is vulnerable to arbitrary file uploads due to missing file type validation in versions up to, and including, 1.1. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected sites server which may make remote code execution possible.","\u003C=1.1","2.0","2016-09-19 00:00:00",[177],"https:\u002F\u002Fwww.wordfence.com\u002Fthreat-intel\u002Fvulnerabilities\u002Fid\u002F2b0198c8-4be8-44e0-9728-d5d2aa376796?source=api-prod",2682,{"slug":180,"display_name":7,"profile_url":8,"plugin_count":181,"total_installs":182,"avg_security_score":183,"avg_patch_time_days":184,"trust_score":185,"computed_at":186},"themeisle",37,2245820,96,420,76,"2026-04-03T18:43:03.305Z",[188,209,228,247,267],{"slug":189,"name":190,"version":191,"author":192,"author_profile":193,"description":194,"short_description":195,"active_installs":196,"downloaded":197,"rating":198,"num_ratings":199,"last_updated":200,"tested_up_to":16,"requires_at_least":201,"requires_php":18,"tags":202,"homepage":205,"download_link":206,"security_score":207,"vuln_count":64,"unpatched_count":29,"last_vuln_date":208,"fetched_at":31},"woo-custom-product-addons","Product Addons for Woocommerce – Product Options with Custom Fields","3.1.2","acowebs","https:\u002F\u002Fprofiles.wordpress.org\u002Facowebs\u002F","\u003Cp>A lightweight WooCommerce product addon plugin that makes adding custom fields to the WooCommerce product page simpler. With an easy-to-use custom form builder, now you can add extra product options quickly.\u003C\u002Fp>\n\u003Cp>You can easily personalize the WooCommerce product ordering page (with custom product options or custom fields) and this extra form data submitted by customers will be shown in website backend and also will be enclosed along with the order details.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Cem>How is it useful?\u003C\u002Fem>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>For instance, if you need to collect more information from users (or customers want personalized products ) on your WooCommerce product pages, like customer notes, collect numbers, dates, color themes, engrave texts for design services from your WooCommerce product page, etc, all you need is this free plugin! (You can enable a lot more features like pricing options, upload field, conditional logic, image selector & color group, add logo, images, etc – but these are available only in the  \u003Ca href=\"https:\u002F\u002Facowebs.com\u002Fwoo-custom-product-addons\u002F?ref=wcpa-readme\" rel=\"nofollow ugc\">premium version\u003C\u002Fa>  now.)\u003C\u002Fp>\n\u003Ch4>Check out our video demo on how product addons for WooCommerce works:\u003C\u002Fh4>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FENnrHs_JmVY?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch3>BASIC FEATURES\u003C\u002Fh3>\n\u003Cp>👉 WooCommerce extra product options or WooCommerce product addons plugin comes with a drag and drop form builder and supports the following form elements:\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Text field\u003C\u002Fstrong> – A normal text input field to collect text data.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Number field\u003C\u002Fstrong> –  An HTML5 number input field to accept numbers.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Radio field\u003C\u002Fstrong> – For selecting one option from multiple choices.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Checkbox field\u003C\u002Fstrong> – For selecting more than one option.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Select field\u003C\u002Fstrong> –  A drop-down to choose from the available list.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Textarea field\u003C\u002Fstrong> – For input details longer than a single line.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Date field\u003C\u002Fstrong> – Custom Date Picker and HTML5 default date picker.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Color field\u003C\u002Fstrong> (depends on the browser) – HTML5 default color picker.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Hidden field\u003C\u002Fstrong> – A hidden input field for admin.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Password field\u003C\u002Fstrong> – A password input text field to collect passwords.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Email field\u003C\u002Fstrong> – HTML5 email field to validate correct email ID format.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>URL field\u003C\u002Fstrong> – HTML5 URL field to validate and collect website URLs.\u003C\u002Fp>\n\u003Cp>🔹 \u003Cstrong>Separator field\u003C\u002Fstrong> – Adds a visual divider or separator between form fields.\u003C\u002Fp>\n\u003Cp>🔹 Grid Layout – Two column Grid layout for fields.\u003C\u002Fp>\n\u003Cp>🔹 Conditional Fields – Show or Hide fields based on values of other fields.\u003C\u002Fp>\n\u003Cp>And apart from above, following HTML tags are also supported in custom fields woocommerce\u003C\u002Fp>\n\u003Cp>🔹\u003Cstrong>Paragraph (p) tag\u003C\u002Fstrong> – To set instruction in product page using HTML paragraph tag which will accept basic HTML tags like anchor, bold, image etc.\u003C\u002Fp>\n\u003Cp>🔹\u003Cstrong>Header (h) tag\u003C\u002Fstrong> – To set HTML header tags (h1, h2 & h3) in product the page.\u003C\u002Fp>\n\u003Ch3>DEMO – CHECK THIS OUT IN REAL\u003C\u002Fh3>\n\u003Cp>Check how woocommerce product custom options are created!\u003C\u002Fp>\n\u003Cp>🔗 \u003Ca href=\"https:\u002F\u002Fwcpa-free.demo2.acowebs.com\u002Fproduct\u002Fhat\u002F\" rel=\"nofollow ugc\">Front end Demo\u003C\u002Fa> (See how woocommerce product addons look in the front-end website)\u003Cbr \u002F>\n🔗 \u003Ca href=\"https:\u002F\u002Fwcpa-free.demo2.acowebs.com\u002Fwp-admin\u002Fadmin.php?page=wcpa-admin-ui#\u002F\" rel=\"nofollow ugc\">Back end Demo\u003C\u002Fa> (Feel free to play around and see how woocommerce product add ons works in back-end)\u003C\u002Fp>\n\u003Ch3>PREMIUM FEATURES\u003C\u002Fh3>\n\u003Cp>Woocommerce custom product addons premium version is supercharged with a bunch of cool features and offered at a nominal one-time cost.\u003C\u002Fp>\n\u003Cp>➡ \u003Cstrong>\u003Ca href=\"https:\u002F\u002Facowebs.com\u002Fwoo-custom-product-addons\u002F?ref=wcpa-readme\" rel=\"nofollow ugc\">GET PREMIUM VERSION NOW!\u003C\u002Fa> \u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>👉 \u003Cstrong>Custom Price Fields\u003C\u002Fstrong> – Woocommerce product price fields can be set for all the fields available with the woocommerce product add ons plugin. The price can be a fixed value, percentage value of the product base price or based on a custom formula.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Custom Price Formula\u003C\u002Fstrong> – calculates price using a mathematical formula based on user input value, product quantity and product base price.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Upload Field\u003C\u002Fstrong> – To collect file from users which can be images, Videos, Documents and anything that is supported by WordPress.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Drag and Drop Upload\u003C\u002Fstrong> – Create drag and drop upload field for easier upload with WooCommerce custom fields.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>AWS S3 file upload\u003C\u002Fstrong> – Upload files to aws s3.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Multi-select Field\u003C\u002Fstrong> – This in custom product options woocommerce allows users to make multiple selections from different choices.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Image Selection\u003C\u002Fstrong> – helps to set custom images to choose from. Admin can add as many images in the backend in any size and it can be configured to select multiple as well as a single image.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Color Group\u003C\u002Fstrong> – works the similar way the checkbox and radio groups works, it can set custom color box or circle instead of the default checkbox fields and the selected item will marked with a check mark with the help of woocommerce product add-ons plug-in.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Custom Date picker\u003C\u002Fstrong> – (supports for all browsers) – Date field, date and time field are available with this plugin. Users can choose the date from the custom designed calendar also can enter the value directly.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Time Picker\u003C\u002Fstrong> (supports for all browsers)- Shows a list of time slots from which user can select one via woocommerce product add-ons.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Custom Color picker\u003C\u002Fstrong> (supports for all browser) – The user can select the color form the custom designed color picker. The value of this field will be hex color code which admin can view along with the order.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Conditional Logic\u003C\u002Fstrong> – To show or hide some fields based on the value selected for other fields. 18 type of conditions are available in this plugin.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Google Map Place Selector\u003C\u002Fstrong> – Location selector using Google Places API for suggesting the location as user types. Also user can select a location in the map provided.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Grid\u002FColumn alignment\u003C\u002Fstrong> – Now you can easily align fields inline as grid\u002Fcolumns.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Tool Tip and Help Text\u003C\u002Fstrong> – Help text for each field can be set, which can be shown as either tool tip or as a text alongside the label.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Products Field\u003C\u002Fstrong> – Set products as custom form fields, and customers can select the product as an addon.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>LookUp Tables\u003C\u002Fstrong> – Use spreadsheet-style lookup tables to map input values to specific prices.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Accordion & Section Splits\u003C\u002Fstrong> – Organize fields into logical sections or collapsible accordions.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Multi-Step Layout\u003C\u002Fstrong> – Break down long and complex forms into multiple, user-friendly steps with progress indicators.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Repeating Fields\u003C\u002Fstrong> – Allow customers to dynamically add multiple instances of a field or a group of fields.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Range Slider\u003C\u002Fstrong> – A modern slider field that allows users to select a numeric value within a defined range.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Dynamic SKU Generation\u003C\u002Fstrong> – Generate dynamic SKU metadata based on selected options.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>S3 Multipart & Tus Uploads\u003C\u002Fstrong> – Handle massive file uploads reliably with AWS S3 Multipart or Tus protocol.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Quantity for Fields\u003C\u002Fstrong> – Assign individual quantity selectors to addon fields.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>Rich Text Support\u003C\u002Fstrong> – Add beautifully formatted instructions and terms using a rich text editor.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>WCAG Compliance\u003C\u002Fstrong> – Built with accessibility in mind, ensuring a great experience for all users.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>UX Oriented Design\u003C\u002Fstrong> – Focused on speed and ease-of-use with a responsive UI.\u003C\u002Fp>\n\u003Cp>And many more features in WooCommerce product addons…\n\u003C\u002Fp>\u003C\u002Fblockquote>\n\u003Cp>\u003Cstrong>\u003Cem>Why WooCommerce Custom Product Addons Plugin?\u003C\u002Fem>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>✅ 25+ Field Types\u003Cbr \u002F>\n✅ Highly Configurable & Modular\u003Cbr \u002F>\n✅ Drag & Drop Visual Builder\u003Cbr \u002F>\n✅ Blazing Fast Performance\u003Cbr \u002F>\n✅ UX Oriented Design\u003Cbr \u002F>\n✅ Award-Winning Developers\u003Cbr \u002F>\n✅ Dedicated Priority Support Team\u003C\u002Fp>\n\u003Cp>➡ \u003Cstrong>\u003Ca href=\"https:\u002F\u002Facowebs.com\u002Fwoo-custom-product-addons\u002F?ref=wcpa-readme\" rel=\"nofollow ugc\">SEE ALL PREMIUM FEATURES\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch3>Why Acowebs?\u003C\u002Fh3>\n\u003Cp>At Acowebs, we own a team of expert WordPress & Shopify developers with rich experience in adopting a holistic approach towards delivering stunning UX, Woocommerce plugins ,and features with a competitive edge. We build feature-packed WordPress plugins, WooCommerce plugins and Shopify Apps with in-depth expertise in WordPress domain and high-end UX skills.\u003C\u002Fp>\n\u003Cp>Being an award-winning software company,\u003Cbr \u002F>We have a dedicated team of developers who focus on supercharging your E-commerce stores. Our endeavours are backed by the support and trust of 1,00,000+ happy customers spread over 130 countries.\u003C\u002Fp>\n\u003Cp>Check out our other WordPress plugins \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Facowebs\u002F#content-plugins\" rel=\"nofollow ugc\">here\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>What our customer says:\u003C\u002Fh3>\n\u003Cp>“Had an amazing experience using this stunning plugin. They gave the most creative and optional features for product add-ons.”\u003C\u002Fp>\n\u003Cp>“Reliable and fast support from the team is worth mentioning. The plugin is handy and greatly impressive with the support provided.”\u003C\u002Fp>\n\u003Ch3>OTHER USEFUL LINKS\u003C\u002Fh3>\n\u003Cp>🔹 \u003Ca href=\"https:\u002F\u002Facowebs.com\u002Fwoo-custom-product-addons\u002F\" rel=\"nofollow ugc\">Find all PRO features\u003C\u002Fa>\u003Cbr \u002F>\n🔹 \u003Ca href=\"https:\u002F\u002Facowebs.com\u002Fsupport\u002F\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa>\u003Cbr \u002F>\n🔹 \u003Ca href=\"https:\u002F\u002Facowebs.com\u002Fwoocommerce-plugins\u002F\" rel=\"nofollow ugc\">Find Our Other Plugins\u003C\u002Fa>\u003Cbr \u002F>\n🔹 \u003Ca href=\"https:\u002F\u002Fsupport.acowebs.com\u002Fportal\u002Fnewticket\" rel=\"nofollow ugc\">Support Ticket\u003C\u002Fa>\u003Cbr \u002F>\n🔹 \u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002Facowebs\" rel=\"nofollow ugc\">Facebook\u003C\u002Fa>\u003Cbr \u002F>\n🔹 \u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Facowebs\" rel=\"nofollow ugc\">Twitter\u003C\u002Fa>\u003Cbr \u002F>\n🔹 \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fchannel\u002FUCXoOjbKiXjDocNMe8qd3WHw\" rel=\"nofollow ugc\">YouTube\u003C\u002Fa>\u003C\u002Fp>\n","WooCommerce Product Addons Add custom fields to your WooCommerce product page. With an easy-to-use Custom Form Builder.",30000,1471565,98,466,"2026-03-10T06:56:00.000Z","4.0",[203,204,22,23,24],"woocommerce-custom-fields","woocommerce-custom-price-field","https:\u002F\u002Facowebs.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwoo-custom-product-addons.3.1.2.zip",97,"2026-02-17 18:40:15",{"slug":210,"name":211,"version":212,"author":213,"author_profile":214,"description":215,"short_description":216,"active_installs":11,"downloaded":217,"rating":218,"num_ratings":219,"last_updated":220,"tested_up_to":16,"requires_at_least":221,"requires_php":222,"tags":223,"homepage":225,"download_link":226,"security_score":183,"vuln_count":107,"unpatched_count":29,"last_vuln_date":227,"fetched_at":31},"yith-woocommerce-product-add-ons","YITH WooCommerce Product Add-Ons","4.28.0","YITHEMES","https:\u002F\u002Fprofiles.wordpress.org\u002Fyithemes\u002F","\u003Cp>YITH Product Add-ons & Extra Options is a versatile and complete tool for the creation and sale of advanced products or services and the addition of custom options to your product pages.\u003C\u002Fp>\n\u003Cp>You can create \u003Cstrong>endless blocks of options\u003C\u002Fstrong> to display in all products or only in specific products or categories, and choose from different types of product add-ons: radios, drop-down menus, text boxes, checkboxes, etc. Set \u003Cstrong>a price for each option, offer it for free\u003C\u002Fstrong> or \u003Cstrong>discount the product\u003C\u002Fstrong> price when the option is selected.\u003C\u002Fp>\n\u003Cp>This product add-ons plugin is a simple solution for \u003Cstrong>selling customizable\u003C\u002Fstrong> products (e.g., if you sell t-shirts or jewelry, you can insert a radio button to let the user choose whether or not to customize the product and if they choose “Yes” show a text box to enter the text to be printed or engraved) or \u003Cstrong>products with advanced add-ons\u003C\u002Fstrong> (e.g., if you sell a box of products, you can let the user choose the number of products to include, charge extra for additional products, and have the user choose the shipping service from a list of available couriers).\u003C\u002Fp>\n\u003Cp>The options selected and information submitted by customers will be included in the order details.\u003C\u002Fp>\n\u003Ch3>YITH WOOCOMMERCE PRODUCT ADD-ON & EXTRA OPTIONS FEATURES\u003C\u002Fh3>\n\u003Ch4>FREE VERSION\u003C\u002Fh4>\n\u003Cp>See the plugin in action:\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fplugins.yithemes.com\u002Fyith-woocommerce-product-add-ons-free\u002F\" rel=\"nofollow ugc\">Try the free version’s live demo >\u003C\u002Fa>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Create unlimited blocks of options\u003C\u002Fli>\n\u003Cli>Display the block of addons in all products or only in specific products or categories\u003C\u002Fli>\n\u003Cli>Add HTML elements to the options block: title, text, and delimiters (single, double, dotted or dashed border, space, etc.)\u003C\u002Fli>\n\u003Cli>Add “Radio button” type options\u003C\u002Fli>\n\u003Cli>Add “Text input” options (optional: set a minimum and maximum number of characters the user can enter)\u003C\u002Fli>\n\u003Cli>Add “Select” type options\u003C\u002Fli>\n\u003Cli>Add “Checkbox” type options\u003C\u002Fli>\n\u003Cli>Set conditions to show or hide a block of product addons (e.g., show option B only when the user selects “Yes” in option A)\u003C\u002Fli>\n\u003Cli>Set conditions to show add-on options only in certain variations (e.g., show options only when black color variation is selected)\u003C\u002Fli>\n\u003Cli>Choose whether to set the option as mandatory\u003C\u002Fli>\n\u003Cli>Choose whether to show the option as selected by default\u003C\u002Fli>\n\u003Cli>Choose where to show the addons on the Product Page (before or after the “Add to Cart” button)\u003C\u002Fli>\n\u003Cli>Enter an optional title for each option block and choose which format to use (h1, h2, h3, etc.)\u003C\u002Fli>\n\u003Cli>Enter a name and a description for each option\u003C\u002Fli>\n\u003Cli>Display an optional tooltip for each option\u003C\u002Fli>\n\u003Cli>Choose whether to offer the option for free (product price does not change when selected)\u003C\u002Fli>\n\u003Cli>Choose whether the option has a fixed or percentage cost that increases the product price, or whether to offer a discount on the product price when the option is selected\u003C\u002Fli>\n\u003Cli>Set a background and padding for the option block, and customize the border, text, and highlight colors.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>WANT MORE? DISCOVER WHAT THE PREMIUM VERSION HAS TO OFFER!\u003C\u002Fh4>\n\u003Cp>See the plugin in action:\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fplugins.yithemes.com\u002Fyith-woocommerce-product-add-ons\u002F\" rel=\"nofollow ugc\">Visit the Premium version’s live demo >\u003C\u002Fa>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Hide options from specific products\u003C\u002Fli>\n\u003Cli>Show add-ons to all users\u002Fonly logged in users\u002Fonly certain user roles\u003C\u002Fli>\n\u003Cli>Add “Text area” type options (you can also set a minimum and maximum number of characters the user can enter)\u003C\u002Fli>\n\u003Cli>Add “Color picker” options (set a color swatch or image)\u003C\u002Fli>\n\u003Cli>Add “Number” type options\u003C\u002Fli>\n\u003Cli>Add “Label or image” type options\u003C\u002Fli>\n\u003Cli>Add “Date” type options (with advanced options to also set a default date, start and end year, etc.)\u003C\u002Fli>\n\u003Cli>Add “File upload” type options with drag and drop support. Set supported file formats and maximum allowed size\u003C\u002Fli>\n\u003Cli>Add “Product” type options to display related products for upsell promotion\u003C\u002Fli>\n\u003Cli>Upload an image to represent the option and choose whether to use it to replace the main product image (on the product page and in the shopping cart)\u003C\u002Fli>\n\u003Cli>Choose the location of the image (above or below the label, right or left)\u003C\u002Fli>\n\u003Cli>Choose whether or not to display the set of product addons in a section that can be opened and closed (toggle)\u003C\u002Fli>\n\u003Cli>Hide the name, description and price of the options\u003C\u002Fli>\n\u003Cli>Choose how many options you want to show for each row, and enable the grid layout to adjust the arrangement of the options based on the width of the page\u003C\u002Fli>\n\u003Cli>Choose whether or not to multiply the product price by the length of the text entered by the user (available only for the “Text” and “Text Area” types)\u003C\u002Fli>\n\u003Cli>Choose whether the product price should be multiplied by the quantity of the option selected by the user (available for “Quantity” type only)\u003C\u002Fli>\n\u003Cli>Offer the first X selected options for free (e.g. if someone buys a pizza, the first three toppings are free, the fourth is charged)\u003C\u002Fli>\n\u003Cli>Choose whether to replace the product price with the updated price including options, and whether to display a price summary box on the product page\u003C\u002Fli>\n\u003Cli>Choose the style for checkboxes and color swatches (round or square)\u003C\u002Fli>\n\u003Cli>Set image position for “Label or image” type options\u003C\u002Fli>\n\u003Cli>Set the default position for name and description\u003C\u002Fli>\n\u003Cli>For each block, choose how many options the user can select and whether to set a number (exact, minimum, or maximum) of options to select before paying\u003C\u002Fli>\n\u003Cli>Hide the “Add to Cart” button until the user selects the required options\u003C\u002Fli>\n\u003Cli>Show or hide selected addons in the cart\u003C\u002Fli>\n\u003Cli>Allow the user to change the selected options in the cart from a modal window \u003Cstrong>NEW\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Show or hide selected product addons in order emails\u003C\u002Fli>\n\u003C\u002Ful>\n","Increase average order value by letting your customers purchase additional options on your products.",851647,74,57,"2026-02-26T11:14:00.000Z","6.7","7.4",[224,203,22,23,24],"product-add-ons-for-woocommerce","https:\u002F\u002Fyithemes.com\u002Fthemes\u002Fplugins\u002Fyith-woocommerce-product-add-ons\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fyith-woocommerce-product-add-ons.4.28.0.zip","2024-10-24 00:00:00",{"slug":229,"name":230,"version":231,"author":232,"author_profile":233,"description":234,"short_description":235,"active_installs":236,"downloaded":237,"rating":27,"num_ratings":238,"last_updated":239,"tested_up_to":16,"requires_at_least":240,"requires_php":18,"tags":241,"homepage":244,"download_link":245,"security_score":246,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"conditional-logic-for-woo-product-add-ons","Conditional Logic for Woo Product Add-ons","2.2.2","meowcrew","https:\u002F\u002Fprofiles.wordpress.org\u002Fmeowcrew\u002F","\u003Cp>Conditional Logic for WooCommerce Product Add-Ons is an extension to the official  \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwoocommerce.com\u002Fproducts\u002Fproduct-add-ons\u002F\" rel=\"nofollow ugc\">WooCommerce Product Add-Ons plugin\u003C\u002Fa>\u003C\u002Fstrong>. With the help of this extension, you can set up conditional logic for Add-ons fields to either show or hide them based on what the user chooses, write or upload in other fields. Also you can determine to display add-ons fields only for specific product variations.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FR6_Fj8WUDBs?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>Important links:\u003Cbr \u002F>\n\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmeow-crew.com\u002Fplugin\u002Fconditional-logic-for-product-add-ons\" rel=\"nofollow ugc\">Premium Version Page\u003C\u002Fa>\u003C\u002Fstrong> | \u003Cstrong>\u003Ca href=\"http:\u002F\u002Fconditional.meow-crew.com\u002Fdemo\u002F\" rel=\"nofollow ugc\">Demo for Plugin Testing\u003C\u002Fa>\u003C\u002Fstrong> | \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmeow-crew.com\u002Fdocumentation\u002Fconditional-logic-for-woocommerce-product-add-ons-documentation\" rel=\"nofollow ugc\">Plugin Documentation\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Conditional Logic is designed to work with any field of Product Add-ons, and each field can have its own rules. Fields for which you set conditions can be shown or hidden if Any or All requirements are met. Conditions – set of rules of what the user (your customer) should choose, write or define in other fields. Let’s say you offer two types of Gift Wrap options (Free and paid), and you’d like to offer an ‘Add a message’ service to the Paid option only – then you set the ‘Short text’ field to be visible only when the customer chose the Paid option.\u003Cbr \u002F>\nIn the Premium version of the plugin you can also add conditions to \u003Cstrong>show Product Add-ons field only when user select specific Product Variation\u003C\u002Fstrong>. This feature can work alone or you can combine it with another conditions based on other add-ons fields output.\u003C\u002Fp>\n\u003Cp>Types of conditions depend on the kind of field you use as the condition.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Multiple choice and Checkboxes\u003C\u002Fstrong> types can be conditioned as:\u003Cbr \u002F>\nIs checked – when the customer selects the needed option\u003Cbr \u002F>\nIs not checked – when the customer selects or checks anything besides the specified option\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Short Text and Long Text\u003C\u002Fstrong> have the following condition types:\u003Cbr \u002F>\nIs – text entered by a customer fully complies with your value\u003Cbr \u002F>\nIs not – text entered by a customer is not the same as your value\u003Cbr \u002F>\nIs empty – the customer does not enter any text\u003Cbr \u002F>\nIs not empty – the customer enters any text\u003Cbr \u002F>\nText contains – text entered by the customer contains something specific anywhere in the text\u003Cbr \u002F>\nText does not contain – text entered by the customer does not contain what you specified anywhere in the text\u003Cbr \u002F>\nText starts with – text entered by the customer starts with anything specific\u003Cbr \u002F>\nText ends with – text entered by the customer ends with anything specific\u003C\u002Fp>\n\u003Cp>\u003Cstrong>File upload\u003C\u002Fstrong> field type may have the following logic:\u003Cbr \u002F>\nIs selected – if the customer has chosen a file to upload\u003Cbr \u002F>\nIs not selected – if the customer has not chosen a file to upload yet\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Customer Defined Price and Quantity\u003C\u002Fstrong> are numeric types of fields, and their conditions may be:\u003Cbr \u002F>\nIs – price entered by customer or selected quantity is equal to your value\u003Cbr \u002F>\nIs not – price entered by customer or quantity is anything besides the value you set\u003Cbr \u002F>\nIs greater than – price entered by customer or quantity is greater than the value\u003Cbr \u002F>\nIs less than – price entered by customer or quantity is less than the value\u003Cbr \u002F>\nIs greater than or equal – price entered by customer or quantity is greater than or equal to the value\u003Cbr \u002F>\nIs less than or equal – price entered by customer or quantity is less than or equal to the value\u003C\u002Fp>\n\u003Cp>Those conditions are available to you in the general add-ons section as well as on the product level.\u003C\u002Fp>\n\u003Cp>Note: you should have \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fwoocommerce.com\u002Fproducts\u002Fproduct-add-ons\u002F\" rel=\"nofollow ugc\">WooCommerce Product Add-Ons plugin\u003C\u002Fa>\u003C\u002Fstrong> installed and configured.\u003Cbr \u002F>\nYou can find detailed instructions on how to hide and show WooCommerce Product Add-On options here in \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fmeow-crew.com\u002Fdocumentation\u002Fconditional-logic-for-woocommerce-product-add-ons-documentation\" rel=\"nofollow ugc\">plugin’s documentation\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n","Show or hide certain fields of the WooCommerce Product Addons based on other fields' values or states (eg, show field X when option Y is selected &hellip;",500,11812,4,"2025-12-26T22:14:00.000Z","5.0",[242,243,22,23,24],"product-add-ons","woocommerce","https:\u002F\u002Fmeow-crew.com\u002Fplugin\u002Fconditional-logic-for-woocommerce-product-add-ons","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fconditional-logic-for-woo-product-add-ons.2.2.2.zip",100,{"slug":248,"name":249,"version":250,"author":251,"author_profile":252,"description":253,"short_description":254,"active_installs":246,"downloaded":255,"rating":246,"num_ratings":256,"last_updated":257,"tested_up_to":258,"requires_at_least":259,"requires_php":260,"tags":261,"homepage":264,"download_link":265,"security_score":266,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"extra-product-addons-for-woocommerce","Extra Product Options (Custom Addons) for WooCommerce","1.2.3","ThemeParrot","https:\u002F\u002Fprofiles.wordpress.org\u002Fthemeparrot\u002F","\u003Cp>Extra Product Options (Custom Addons) for WooCommerce is a simple-to-use WooCommerce product addon plugin. It helps you add custom product options and allows customers to personalise their purchase. Let your customers choose the product options and then place the order.\u003Cbr \u002F>\nAdd product options like text boxes, checkboxes, dropdowns, radio inputs, color picker, date fields and more.\u003C\u002Fp>\n\u003Cp>The plugin provides an easy-to-use drag and drop form builder to add extra fields to your products. When customers fill out these custom options and purchase, the data can be viewed in your order details.\u003Cbr \u002F>\nExample: Let’s say, you would like to offer a gift wrapping option for a product.\u003C\u002Fp>\n\u003Cp>Let’s say, you are selling a customizable T-Shirt. You can let customers choose a logo, color, text to be printed on the shirt, a delivery date and more. All these can be done through the using this plugin.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fdemo.themeparrot.net\u002Fextra-product-addons\" rel=\"nofollow ugc\">Demo\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fthemeparrot.com\u002Fextra-product-options-custom-addons-for-woocommerce\u002F\" rel=\"nofollow ugc\">Get PRO version\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Free Version Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>13+ field types\u003C\u002Fli>\n\u003Cli>Drag and drop form builder \u003C\u002Fli>\n\u003Cli>Create product options globally and re-use them in multiple products\u003C\u002Fli>\n\u003Cli>Associate multiple forms \u002F group of extra fields to a single product\u003C\u002Fli>\n\u003Cli>Light-weight, and easy to use\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Field types – FREE version\u003C\u002Fh3>\n\u003Cp>The following Custom product field types are available in the free version of Extra Product Options (Custom Addons) for WooCommerce :\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Text:\u003C\u002Fstrong> Get simple text input like name, tax number or company name, area name etc.\u003Cbr \u002F>\n\u003Cstrong>Textarea:\u003C\u002Fstrong> A paragraph input. Let customers enter a description or instructions or something that needs a detailed explanation.\u003Cbr \u002F>\n\u003Cstrong>Radio Buttons:\u003C\u002Fstrong> Let customers choose an option. Example: Pizza bread option\u003Cbr \u002F>\n\u003Cstrong>Checkbox:\u003C\u002Fstrong> Customers can choose multiple options for personalisation. Example: Toppings for pizza, addons and more\u003Cbr \u002F>\n\u003Cstrong>Dropdown \u002F Select:\u003C\u002Fstrong> Give a list of options for the customers to choose from. Example: A list of delivery areas.\u003Cbr \u002F>\n\u003Cstrong>Date Picker:\u003C\u002Fstrong> Let customers choose a date from a date picker. Useful when you are looking to get delivery dates or birthday and more.\u003Cbr \u002F>\n\u003Cstrong>Color Picker:\u003C\u002Fstrong> Let the customer choose a color of their choice from a color picker.\u003Cbr \u002F>\n\u003Cstrong>Email:\u003C\u002Fstrong> Sometimes, you may want to get an email address. This field will help with it.\u003Cbr \u002F>\n\u003Cstrong>Telephone:\u003C\u002Fstrong> Sometimes, you may want to get a phone number, then this field will help.\u003Cbr \u002F>\n\u003Cstrong>Number:\u003C\u002Fstrong> When you want customers to enter a numeric input, then this will help.\u003Cbr \u002F>\n\u003Cstrong>Hidden Input:\u003C\u002Fstrong> Sometimes, you may want to hide some texts \u002F data from user, then this field will help.\u003Cbr \u002F>\n\u003Cstrong>Header:\u003C\u002Fstrong> Set the HTML header tags like h1, h2, h3.\u003Cbr \u002F>\n\u003Cstrong>Paragraph:\u003C\u002Fstrong> To set instruction before \u002F after fields in product page.\u003Cbr \u002F>\nNOTE: Some fields are a HTML5 field type and works in most modern browsers.\u003C\u002Fp>\n\u003Ch3>Premium Version\u003C\u002Fh3>\n\u003Cp>With the \u003Ca href=\"https:\u002F\u002Fthemeparrot.com\u002Fextra-product-options-custom-addons-for-woocommerce\u002F\" rel=\"nofollow ugc\">Extra Product Options (Custom Addons) for WooCommerce PRO\u003C\u002Fa>  version, you can  set price for the fields, more field types like file upload and more.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>\u003Ca href=\"https:\u002F\u002Fthemeparrot.com\u002Fextra-product-options-custom-addons-for-woocommerce\u002F\" rel=\"nofollow ugc\">Get Premium Version\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Custom Price Fields:\u003C\u002Fstrong> Set a price for the product options. For example: You can charge + $5 when customers choose to Gift wrap the product. You can also set different prices for different options.\u003Cbr \u002F>\nExample: Let’s say, you have 3 pizza toppings. You can let the customers choose multiple toppings and charge different prices for the toppings in addition to the product price.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Dynamic Fields:\u003C\u002Fstrong> Show or hide some fields based on the value selected on other fields. For example: Let customers choose a specific option then the text field is appears, otherwise not.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>File Upload:\u003C\u002Fstrong> Let customers upload files at the time of adding an item to cart. Example: Customers can upload the logo file for printing in the T-Shirt. You can collect images, PDFs, documents, word files, drawings and more with this field.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Tooltip \u002F Help Text:\u003C\u002Fstrong> Help text for each field can be set, which can be shown as either tooltip or as a text alongside the label.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Date & Time Picker:\u003C\u002Fstrong> Let customers choose a date and time at the same time, then this will help. also, you can use Date or Time picker alone.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Multi-select:\u003C\u002Fstrong> This allows users to make multiple selections from different choices. NOTE: This is a HTML5 field type and works in most modern browsers.\u003C\u002Fp>\n\u003Ch3>Getting started\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Install and Activate the plugin\u003C\u002Fli>\n\u003Cli>Go to your WordPress Dashboard -> Extra Product Addons -> Add New Form\u003C\u002Fli>\n\u003Cli>Select one or more forms in Product Data -> Extra Product Addons Tab then Publish or Update the Product\u003C\u002Fli>\n\u003C\u002Ful>\n","Add custom product options and extra fields using the best WooCommerce Product Addons plugin in minutes. Add Custom Product Options with our drag and  &hellip;",5299,3,"2024-09-02T09:52:00.000Z","6.6.5","4.9.0","5.6",[262,263,22,23,24],"woocommerce-extra-product-addons","woocommerce-extra-product-fields","https:\u002F\u002Fwww.themeparrot.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fextra-product-addons-for-woocommerce.1.2.3.zip",92,{"slug":268,"name":269,"version":270,"author":271,"author_profile":272,"description":273,"short_description":274,"active_installs":275,"downloaded":276,"rating":246,"num_ratings":107,"last_updated":277,"tested_up_to":16,"requires_at_least":278,"requires_php":279,"tags":280,"homepage":282,"download_link":283,"security_score":246,"vuln_count":29,"unpatched_count":29,"last_vuln_date":38,"fetched_at":31},"custom-product-type-for-woocommerce","Custom Product Type for WooCommerce – Add-Ons, Data, Options, Layouts, Booking & Appointments","1.3.8","WPSAAD","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpsaad\u002F","\u003Cp>\u003Cstrong>Custom Product Type for WooCommerce\u003C\u002Fstrong> helps you create unique WooCommerce product types with fully custom tabs, admin-only fields, layout control, and advanced booking fields.\u003C\u002Fp>\n\u003Cp>Designed for all types of products eg. (services, classes, tickets, or appointment-based businesses), this plugin gives you full visual control of WooCommerce single product data — from field structure to layout to display locations.\u003C\u002Fp>\n\u003Cp>📺 \u003Cstrong>YouTube Tutorials\u003C\u002Fstrong>: \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fplaylist?list=PLKz5hMvo0UjRAi5lP0i1faLbTzuagXgIe\" rel=\"nofollow ugc\">Watch the full playlist\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🔁 Create Multiple Product Types\u003C\u002Fstrong>: Define as many types as you want, each with its own tab, fields, layout, and output position.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>🌐 WPML + Polylang Support\u003C\u002Fstrong>: Fully multilingual ready.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>💳 Checkout-Safe\u003C\u002Fstrong>: Fields do not conflict with WooCommerce cart, pricing, or payments.\u003C\u002Fp>\n\u003Cp>✅ What You Can Do with This Plugin\u003C\u002Fp>\n\u003Cul>\n\u003Cli>🧩 Add custom fields to WooCommerce product types (text, select, checkbox, radio)\u003C\u002Fli>\n\u003Cli>📄 Display product data before\u002Fafter title, add-to-cart, price, or meta\u003C\u002Fli>\n\u003Cli>🧠 Create \u003Cstrong>Custom Product Types\u003C\u002Fstrong> with dedicated admin tabs\u003C\u002Fli>\n\u003Cli>🎨 Choose from \u003Cstrong>4 built-in layout templates\u003C\u002Fstrong> for the single product page\u003C\u002Fli>\n\u003Cli>🏷️ Apply custom badges per product type\u003C\u002Fli>\n\u003Cli>🧾 Add static structured data like instructor name, ticket ID, session time, etc.\u003C\u002Fli>\n\u003Cli>🔎 Use shortcodes: `[cwpt_products product_type=\\”your_type\\”]`\u003C\u002Fli>\n\u003Cli>🌐 Multilingual with WPML\u002FPolylang\u003C\u002Fli>\n\u003Cli>🛒 Hide\u002Fshow product types from shop\u002Fcatalog\u003C\u002Fli>\n\u003Cli>🔒 Add user input fields (text, textarea, select, etc.) [Pro]\u003C\u002Fli>\n\u003Cli>🔒 Enable interactive booking calendars & date pickers [Pro]\u003C\u002Fli>\n\u003Cli>🔒 Add file upload, WYSIWYG, email, color picker fields [Pro]\u003C\u002Fli>\n\u003Cli>🔒 Create field-based pricing logic [Pro]\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>🆓 Free Features\u003C\u002Fp>\n\u003Cul>\n\u003Cli>✅ Create unlimited custom product types\u003C\u002Fli>\n\u003Cli>✅ Add custom WooCommerce admin tabs with fields\u003C\u002Fli>\n\u003Cli>✅ Choose field display locations (before\u002Fafter title, price, cart, meta)\u003C\u002Fli>\n\u003Cli>✅ Field types: Text, Textarea, Select, Radio, Checkbox\u003C\u002Fli>\n\u003Cli>✅ 4 Single product page layout templates\u003C\u002Fli>\n\u003Cli>✅ Product badge support per product type\u003C\u002Fli>\n\u003Cli>✅ Shortcode: `[cwpt_products product_type=\\”your_type\\”]`\u003C\u002Fli>\n\u003Cli>✅ Show\u002Fhide product types from shop\u002Fcatalog\u003C\u002Fli>\n\u003Cli>✅ Custom taxonomy support\u003C\u002Fli>\n\u003Cli>✅ WPML and Polylang compatible\u003C\u002Fli>\n\u003Cli>✅ Works with all WooCommerce payment gateways\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>💎 Premium Add-On Features\u003C\u002Fp>\n\u003Cp>Unlock advanced control over your product types with the Pro version:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>🔓 WooCommerce Product Add-Ons & Custom Fields\u003C\u002Fli>\n\u003Cli>🔓 Interactive Booking Calendar and Date Picker\u003C\u002Fli>\n\u003Cli>🔓 File Upload, Email, URL, and WYSIWYG fields\u003C\u002Fli>\n\u003Cli>🔓 Color Picker and Taxonomy-based fields (radio\u002Fselect)\u003C\u002Fli>\n\u003Cli>🔓 Field pricing logic per selection\u003C\u002Fli>\n\u003Cli>🔓 Buy Now Button field for fast checkout.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>👉 \u003Ca href=\"https:\u002F\u002Fwpsaad.com\u002Fwp-plugins\u002Fcustom-product-type-for-woocommerce\u002F\" rel=\"nofollow ugc\">\u003Cstrong>Upgrade to PRO\u003C\u002Fstrong>\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>🧠 Popular Use Cases\u003C\u002Fp>\n\u003Cul>\n\u003Cli>📚 \u003Cstrong>Books\u003C\u002Fstrong>: Show author name, ISBN, edition, or series\u003C\u002Fli>\n\u003Cli>🎟️ \u003Cstrong>Event Tickets\u003C\u002Fstrong>: Show date, seat category, meal preference\u003C\u002Fli>\n\u003Cli>🎓 \u003Cstrong>Courses\u003C\u002Fstrong>: Display session type, instructor, language, duration\u003C\u002Fli>\n\u003Cli>🔧 \u003Cstrong>Services\u003C\u002Fstrong>: Add service details, duration, or booking slots\u003C\u002Fli>\n\u003Cli>🍱 \u003Cstrong>Food Orders\u003C\u002Fstrong>: Display ingredients, allergens, or category\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>== Upgrade to Pro ==\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Unlock custom product workflows with booking fields, pricing logic, file uploads, WYSIWYG, and more advanced field types.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwpsaad.com\u002Fwp-plugins\u002Fcustom-product-type-for-woocommerce\u002F\" rel=\"nofollow ugc\">Upgrade to Pro\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Demo & Tutorials\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>🌐 \u003Ca href=\"https:\u002F\u002Fcwpt-demo.wpsaad.com\" rel=\"nofollow ugc\">\u003Cstrong>Live Demo\u003C\u002Fstrong>\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>📺 \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002Fplaylist?list=PLKz5hMvo0UjRAi5lP0i1faLbTzuagXgIe\" rel=\"nofollow ugc\">\u003Cstrong>YouTube Tutorials\u003C\u002Fstrong>\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>💡 Need Help?\u003C\u002Fstrong>\u003Cbr \u002F>\n👉 Get support on the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fplugin\u002Fcustom-product-type-for-woocommerce\u002F\" rel=\"ugc\">WordPress.org Support Forum\u003C\u002Fa>\u003Cbr \u002F>\n👉 Access \u003Ca href=\"https:\u002F\u002Fwpsaad.com\u002Fsupport\u002F\" rel=\"nofollow ugc\">Premium Support\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>🎥 \u003Ca href=\"https:\u002F\u002Fwww.youtube.com\u002F@wpsaad\" rel=\"nofollow ugc\">YouTube Channel\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>== More by WPSaad ==\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>🖼️ \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Falt-manager\u002F\" rel=\"ugc\">Image Alt Text Manager\u003C\u002Fa> – \u003Ca href=\"https:\u002F\u002Fwpsaad.com\u002Fwp-plugins\u002Fimage-alt-text-manager-wordpress-plugin-for-images-seo\u002F\" rel=\"nofollow ugc\">Pro Version\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>🚚 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fshipping-manager-for-woocommerce\u002F\" rel=\"ugc\">Shipping Manager for WooCommerce\u003C\u002Fa> – \u003Ca href=\"https:\u002F\u002Fwpsaad.com\u002Fwp-plugins\u002Fshipping-manager-for-woocommerce\u002F\" rel=\"nofollow ugc\">Pro Version\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>🧱 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwpsaad-addons-for-dokan-and-elementor\u002F\" rel=\"ugc\">WPSaad Addons for Dokan and Elementor\u003C\u002Fa> – \u003Ca href=\"https:\u002F\u002Fwpsaad.com\u002Fwp-plugins\u002Fwpsaad-addons-for-dokan-and-elementor\u002F\" rel=\"nofollow ugc\">Pro Version\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>💲 \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbulk-wholesale-dynamic-pricing-buttons-for-woocommerce\u002F\" rel=\"ugc\">Bulk Wholesale Dynamic Pricing Buttons\u003C\u002Fa> – \u003Ca href=\"https:\u002F\u002Fwpsaad.com\u002Fwp-plugins\u002Fbulk-wholesale-dynamic-pricing-buttons-for-woocommerce\u002F\" rel=\"nofollow ugc\">Pro Version\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>⚙️ \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fproduct-add-ons-custom-fields-booking-extra-options-for-woocommerce\u002F\" rel=\"ugc\">Product Add-Ons, Custom Fields, Booking & Extra Options\u003C\u002Fa> – \u003Ca href=\"https:\u002F\u002Fwpsaad.com\u002Fwp-plugins\u002Fproduct-add-ons-custom-fields-booking-extra-options-for-woocommerce\u002F\" rel=\"nofollow ugc\">Pro Version\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>== Other Services ==\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>🔧 \u003Cstrong>\u003Ca href=\"https:\u002F\u002Fsupport.motkhases.com\u002F%d8%a3%d9%81%d8%b6%d9%84-%d8%b4%d8%b1%d9%83%d8%a9-%d8%aa%d8%b5%d9%85%d9%8a%d9%85-%d9%85%d9%88%d8%a7%d9%82%d8%b9-%d9%81%d9%8a-%d9%85%d8%b5%d8%b1-%d9%88%d8%a7%d9%84%d9%88%d8%b7%d9%86-%d8%a7%d9%84%d8%b9\u002F\" title=\"best web design company\" rel=\"nofollow ugc\">WordPress Design & Development Services\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>⚙️ \u003Cstrong>\u003Ca href=\"http:\u002F\u002Fsupport.motkhases.com\u002F\" title=\"WordPress Professional Support\" rel=\"nofollow ugc\">WordPress Professional Support Services\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n","Create WooCommerce Add-Ons, Data, Options, Booking, Layouts, and Appointments as custom product types. Revolutionize store's possibilities!",70,6617,"2026-02-07T09:25:00.000Z","2.8.0","5.2.4",[281,203,22,23,24],"custom-product-type","https:\u002F\u002Fwpsaad.com\u002Fwp-plugins\u002Fcustom-product-type-for-woocommerce\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcustom-product-type-for-woocommerce.1.3.8.zip",{"attackSurface":285,"codeSignals":843,"taintFlows":1222,"riskAssessment":1402,"analyzedAt":1419},{"hooks":286,"ajaxHandlers":750,"restRoutes":792,"shortcodes":831,"cronEvents":836,"entryPointCount":842,"unprotectedCount":720},[287,293,297,301,304,307,312,318,322,326,329,332,334,337,341,346,350,355,359,361,365,369,373,378,382,386,390,396,400,403,406,409,415,419,421,425,429,432,435,438,442,445,448,452,455,459,463,467,471,475,479,483,487,490,494,498,502,506,510,514,518,522,526,529,533,537,541,545,549,553,557,561,565,569,573,577,580,584,588,592,596,600,604,608,612,616,620,624,628,632,636,640,643,647,651,655,659,663,667,671,675,679,683,687,691,695,700,703,707,712,716,721,726,730,732,735,738,740,743,747],{"type":288,"name":289,"callback":290,"file":291,"line":292},"action","init","ppom_load_free_options","backend\\options.php",132,{"type":288,"name":289,"callback":294,"priority":295,"file":291,"line":296},"ppom_load_pro_options",99,754,{"type":288,"name":289,"callback":298,"file":299,"line":300},"register_config","backend\\settings-panel.class.php",81,{"type":288,"name":302,"callback":303,"file":299,"line":198},"admin_post_ppom_migrate_settings_panel","ppom_migrate_settings_panel",{"type":288,"name":305,"callback":306,"file":299,"line":246},"admin_menu","add_admin_menu",{"type":288,"name":308,"callback":309,"priority":310,"file":299,"line":311},"admin_enqueue_scripts","load_scripts",999,102,{"type":313,"name":314,"callback":315,"priority":316,"file":299,"line":317},"filter","woocommerce_settings_tabs_array","add_settings_tab",50,686,{"type":288,"name":319,"callback":320,"file":299,"line":321},"woocommerce_settings_tabs_ppom_settings","render_settings_panel",687,{"type":288,"name":289,"callback":323,"file":324,"line":325},"menu_page_options","classes\\admin.class.php",39,{"type":288,"name":305,"callback":327,"file":324,"line":328},"add_menu_pages",41,{"type":288,"name":289,"callback":330,"file":324,"line":331},"set_ppom_menu_permission",49,{"type":313,"name":314,"callback":333,"priority":316,"file":324,"line":219},"anonymous",{"type":288,"name":319,"callback":335,"file":324,"line":336},"settings_tab",59,{"type":288,"name":338,"callback":339,"file":324,"line":340},"woocommerce_update_options_ppom_settings","save_settings",61,{"type":313,"name":342,"callback":343,"priority":344,"file":324,"line":345},"woocommerce_admin_settings_sanitize_option","ppom_setting_wpml",10,65,{"type":288,"name":347,"callback":348,"file":324,"line":349},"admin_head","ppom_tabs_custom_style",67,{"type":288,"name":351,"callback":352,"priority":353,"file":324,"line":354},"woocommerce_admin_field_ppom_multi_select","ppom_multi_select_role_setting",2,69,{"type":288,"name":356,"callback":357,"file":324,"line":358},"admin_init","set_legacy_user",79,{"type":288,"name":356,"callback":360,"file":324,"line":27},"ppom_create_db_tables",{"type":313,"name":362,"callback":363,"file":324,"line":364},"update_footer","__return_empty_string",195,{"type":313,"name":366,"callback":367,"file":324,"line":368},"ppom_render_attach_popup","closure",354,{"type":288,"name":308,"callback":370,"file":371,"line":372},"load_script","classes\\fields.class.php",21,{"type":313,"name":374,"callback":375,"priority":344,"file":376,"line":377},"ppom_fields_tabs_show","add_locked_cfr_tab","classes\\freemium.class.php",24,{"type":313,"name":379,"callback":380,"file":376,"line":381},"ppom_all_inputs","locked_cfr_register_form_elements",25,{"type":288,"name":383,"callback":309,"file":384,"line":385},"wp_enqueue_scripts","classes\\frontend-scripts.class.php",45,{"type":313,"name":387,"callback":388,"priority":295,"file":384,"line":389},"woocommerce_quantity_input_classes","ppom_hooks_hide_cart_quantity",440,{"type":313,"name":391,"callback":392,"priority":393,"file":394,"line":395},"ppom_option_label","change_option_label",15,"classes\\inputs\\input.measure.php",29,{"type":288,"name":397,"callback":398,"file":399,"line":377},"plugins_loaded","load","classes\\integrations\\elementor\\elementor.class.php",{"type":288,"name":401,"callback":289,"file":399,"line":402},"elementor\u002Finit",47,{"type":288,"name":404,"callback":405,"file":399,"line":218},"elementor\u002Fwidgets\u002Fwidgets_registered","init_widgets",{"type":288,"name":407,"callback":408,"file":399,"line":27},"elementor\u002Ffrontend\u002Fafter_enqueue_styles","widget_styles",{"type":288,"name":410,"callback":411,"priority":412,"file":413,"line":414},"admin_bar_menu","ppom_admin_bar_menu",1000,"classes\\plugin.class.php",44,{"type":288,"name":416,"callback":417,"priority":393,"file":413,"line":418},"woocommerce_before_add_to_cart_button","ppom_woocommerce_show_fields",48,{"type":288,"name":416,"callback":420,"priority":393,"file":413,"line":316},"ppom_woocommerce_inputs_template_base",{"type":313,"name":422,"callback":423,"priority":344,"file":413,"line":424},"ppom_input_templates_path","ppom_hooks_check_theme_path",58,{"type":313,"name":426,"callback":427,"priority":344,"file":413,"line":428},"woocommerce_add_to_cart_validation","ppom_woocommerce_validate_product",63,{"type":313,"name":430,"callback":431,"priority":344,"file":413,"line":349},"woocommerce_add_cart_item_data","ppom_woocommerce_add_cart_item_data",{"type":313,"name":433,"callback":434,"priority":344,"file":413,"line":358},"woocommerce_get_cart_item_from_session","ppom_woocommerce_update_cart_fees",{"type":288,"name":436,"callback":437,"file":413,"line":27},"woocommerce_cart_calculate_fees","ppom_woocommerce_add_fixed_fee",{"type":313,"name":433,"callback":439,"priority":440,"file":413,"line":441},"ppom_price_check_price_matrix",8,83,{"type":313,"name":433,"callback":443,"priority":344,"file":413,"line":444},"ppom_price_controller",89,{"type":288,"name":436,"callback":446,"file":413,"line":447},"ppom_price_cart_fee",91,{"type":288,"name":449,"callback":450,"priority":344,"file":413,"line":451},"ppom_before_calculate_cart_total","ppom_hooks_update_cart_weight",93,{"type":288,"name":453,"callback":454,"file":413,"line":246},"woocommerce_cart_loaded_from_session","ppom_calculate_totals_from_session",{"type":288,"name":456,"callback":457,"file":413,"line":458},"woocommerce_widget_shopping_cart_before_buttons","ppom_woocommerce_mini_cart_fixed_fee",103,{"type":313,"name":460,"callback":461,"priority":344,"file":413,"line":462},"woocommerce_get_price_html","ppom_woocommerce_alter_price",106,{"type":313,"name":464,"callback":465,"priority":344,"file":413,"line":466},"woocommerce_quantity_input_args","ppom_validation_product_limits",111,{"type":313,"name":468,"callback":469,"priority":344,"file":413,"line":470},"woocommerce_available_variation","ppom_validation_variation_limits",112,{"type":313,"name":472,"callback":473,"priority":344,"file":413,"line":474},"woocommerce_get_item_data","ppom_woocommerce_add_item_meta",131,{"type":313,"name":476,"callback":477,"priority":344,"file":413,"line":478},"woocommerce_add_to_cart_quantity","ppom_woocommerce_add_to_cart_quantity",134,{"type":313,"name":480,"callback":481,"priority":344,"file":413,"line":482},"woocommerce_add_to_cart_redirect","ppom_hooks_redirect_to_cart_if_shortcode",137,{"type":313,"name":484,"callback":485,"priority":344,"file":413,"line":486},"woocommerce_cart_item_quantity","ppom_woocommerce_control_cart_quantity_legacy",141,{"type":313,"name":484,"callback":488,"priority":295,"file":413,"line":489},"ppom_woocommerce_control_cart_quantity",143,{"type":313,"name":491,"callback":492,"priority":344,"file":413,"line":493},"woocommerce_cart_item_subtotal","ppom_woocommerce_item_subtotal",147,{"type":313,"name":495,"callback":496,"priority":344,"file":413,"line":497},"woocommerce_checkout_cart_item_quantity","ppom_woocommerce_control_checkout_quantity",148,{"type":313,"name":499,"callback":500,"priority":344,"file":413,"line":501},"woocommerce_order_item_quantity_html","ppom_woocommerce_control_oder_item_quantity",149,{"type":313,"name":503,"callback":504,"priority":344,"file":413,"line":505},"woocommerce_email_order_item_quantity","ppom_woocommerce_control_email_item_quantity",150,{"type":313,"name":507,"callback":508,"priority":344,"file":413,"line":509},"woocommerce_update_cart_validation","ppom_woocommerce_cart_update_validate",160,{"type":288,"name":511,"callback":512,"priority":295,"file":413,"line":513},"woocommerce_checkout_create_order_line_item","ppom_woocommerce_order_item_meta",168,{"type":313,"name":515,"callback":516,"priority":344,"file":413,"line":517},"woocommerce_order_item_display_meta_key","ppom_woocommerce_order_key",171,{"type":313,"name":519,"callback":520,"priority":344,"file":413,"line":521},"woocommerce_order_item_display_meta_value","ppom_woocommerce_order_value",174,{"type":288,"name":523,"callback":524,"priority":344,"file":413,"line":525},"woocommerce_order_item_meta_end","ppom_woocommerce_order_item_meta_html",176,{"type":313,"name":527,"callback":363,"file":413,"line":528},"woocommerce_display_item_meta",177,{"type":313,"name":530,"callback":531,"priority":344,"file":413,"line":532},"wpo_ips_display_item_meta_html","ppom_invoice_packing_slips_html",178,{"type":313,"name":534,"callback":535,"priority":344,"file":413,"line":536},"woocommerce_order_item_get_formatted_meta_data","ppom_woocommerce_hide_order_meta",181,{"type":313,"name":538,"callback":539,"file":413,"line":540},"woocommerce_is_attribute_in_product_name","__return_false",183,{"type":288,"name":542,"callback":543,"priority":344,"file":413,"line":544},"woocommerce_checkout_order_processed","ppom_woocommerce_rename_files",189,{"type":313,"name":546,"callback":547,"priority":344,"file":413,"line":548},"ppom_field_attributes","ppom_hooks_set_attributes",192,{"type":313,"name":550,"callback":551,"priority":344,"file":413,"line":552},"ppom_field_setting","ppom_hooks_input_args",194,{"type":313,"name":554,"callback":555,"priority":344,"file":413,"line":556},"ppom_has_posted_field_value","ppom_hooks_checkbox_valided",196,{"type":313,"name":558,"callback":559,"priority":344,"file":413,"line":560},"nmform_attribute_value","ppom_hooks_color_to_text_type",198,{"type":313,"name":562,"callback":563,"priority":344,"file":413,"line":564},"ppom_show_option_price","ppom_hooks_show_option_price_pricematrix",200,{"type":313,"name":566,"callback":567,"priority":344,"file":413,"line":568},"ppom_meta_data_saving","ppom_hooks_register_wpml",205,{"type":313,"name":570,"callback":571,"priority":344,"file":413,"line":572},"ppom_input_wrapper_class","ppom_hooks_input_wrapper_class_new",208,{"type":313,"name":574,"callback":575,"priority":344,"file":413,"line":576},"ppom_field_main_wrapper_class","ppom_hooks_input_main_wrapper_class",209,{"type":313,"name":570,"callback":578,"priority":344,"file":413,"line":579},"ppom_hooks_input_wrapper_class",212,{"type":313,"name":581,"callback":582,"priority":344,"file":413,"line":583},"ppom_add_cart_item_data","ppom_hooks_save_cropped_image",216,{"type":313,"name":585,"callback":586,"priority":310,"file":413,"line":587},"ppom_order_display_value","ppom_hooks_format_order_value",218,{"type":313,"name":589,"callback":590,"priority":295,"file":413,"line":591},"ppom_option_price_operator","ppom_hooks_set_option_operator",220,{"type":313,"name":593,"callback":594,"priority":48,"file":413,"line":595},"ppom_option_meta","update_converted_option_keys",226,{"type":288,"name":597,"callback":598,"file":413,"line":599},"add_meta_boxes","ppom_admin_product_meta_metabox",247,{"type":288,"name":601,"callback":602,"file":413,"line":603},"admin_notices","ppom_admin_show_notices",250,{"type":288,"name":605,"callback":606,"file":413,"line":607},"woocommerce_process_product_meta","ppom_admin_process_product_meta",261,{"type":313,"name":609,"callback":610,"priority":344,"file":413,"line":611},"woocommerce_product_add_to_cart_url","loop_add_to_cart_url",268,{"type":313,"name":613,"callback":614,"priority":344,"file":413,"line":615},"woocommerce_product_add_to_cart_text","loop_add_to_cart_text",269,{"type":313,"name":617,"callback":618,"priority":344,"file":413,"line":619},"woocommerce_product_supports","product_supports",270,{"type":288,"name":621,"callback":622,"priority":344,"file":413,"line":623},"woocommerce_product_duplicate","duplicate_product_meta",271,{"type":288,"name":625,"callback":626,"file":413,"line":627},"do_action_remove_images","ppom_files_removed_unused_images",278,{"type":313,"name":629,"callback":630,"file":413,"line":631},"cron_schedules","ppom_hooks_weekly_cron_schedule",280,{"type":288,"name":633,"callback":634,"file":413,"line":635},"admin_footer-edit.php","nm_add_bulk_meta",282,{"type":288,"name":637,"callback":638,"file":413,"line":639},"load-edit.php","nm_meta_bulk_action",284,{"type":288,"name":601,"callback":641,"file":413,"line":642},"nm_add_meta_notices",286,{"type":288,"name":644,"callback":645,"file":413,"line":646},"admin_post_ppom_attach","ppom_attach_meta",289,{"type":288,"name":648,"callback":649,"file":413,"line":650},"template_redirect","show_wc_custom_message",290,{"type":288,"name":652,"callback":653,"file":413,"line":654},"admin_post_ppom_export_meta","ppom_export_meta",293,{"type":313,"name":656,"callback":657,"priority":310,"file":413,"line":658},"manage_product_posts_columns","ppom_admin_show_product_meta",300,{"type":288,"name":660,"callback":661,"priority":310,"file":413,"line":662},"manage_product_posts_custom_column","ppom_admin_product_meta_column",301,{"type":313,"name":664,"callback":665,"priority":344,"file":413,"line":666},"ppom_price_matrix_post","ppom_adjust_price_matrix_for_option_price",309,{"type":313,"name":668,"callback":669,"priority":344,"file":413,"line":670},"woe_fetch_order","ppom_hooks_convert_option_json_to_string",312,{"type":313,"name":672,"callback":673,"priority":295,"file":413,"line":674},"ppom_input_classes","input_classes",316,{"type":313,"name":676,"callback":677,"file":413,"line":678},"woocommerce_product_data_tabs","add_ppom_meta_tabs",321,{"type":313,"name":680,"callback":681,"file":413,"line":682},"woocommerce_product_data_panels","add_ppom_meta_panel",322,{"type":313,"name":684,"callback":685,"priority":295,"file":413,"line":686},"ppom_dom_option_id","ppom_hooks_dom_option_id",326,{"type":313,"name":688,"callback":689,"priority":344,"file":413,"line":690},"woocommerce_order_again_cart_item_data","ppom_wc_order_again_compatibility",333,{"type":313,"name":692,"callback":693,"priority":393,"file":413,"line":694},"ppom_field_description","show_tooltip",335,{"type":313,"name":696,"callback":697,"file":698,"line":699},"themeisle_sdk_blackfriday_data","ppom_add_black_friday_data","inc\\admin.php",870,{"type":313,"name":387,"callback":388,"priority":295,"file":701,"line":702},"inc\\hooks.php",398,{"type":313,"name":558,"callback":704,"priority":344,"file":705,"line":706},"adjust_attributes_values","inc\\nmInput.class.php",32,{"type":313,"name":708,"callback":709,"priority":48,"file":710,"line":711},"ppom_option_price_vat","ppom_option_price_handle_vat","inc\\prices.php",1494,{"type":313,"name":713,"callback":714,"priority":28,"file":710,"line":715},"ppom_product_price_on_cart","ppom_wwp_product_cart_price",1535,{"type":288,"name":717,"callback":718,"file":719,"line":720},"rest_api_init","init_api","inc\\rest.class.php",18,{"type":313,"name":722,"callback":723,"priority":344,"file":724,"line":725},"safecss_filter_attr_allow_css","ppom_safecss_filter_attr","inc\\validation.php",376,{"type":313,"name":727,"callback":367,"file":728,"line":729},"themeisle_sdk_products","woocommerce-product-addon.php",46,{"type":288,"name":289,"callback":731,"file":728,"line":424},"ppom_i18n_setup",{"type":313,"name":733,"callback":367,"file":728,"line":734},"woocommerce_product_addon_about_us_metadata",130,{"type":313,"name":736,"callback":367,"file":728,"line":737},"woocommerce_product_addon_float_widget_metadata",136,{"type":313,"name":739,"callback":367,"file":728,"line":501},"woocommerce_product_addon_welcome_metadata",{"type":313,"name":741,"callback":367,"file":728,"line":742},"woocommerce_product_addon_welcome_upsell_message",157,{"type":288,"name":744,"callback":745,"file":728,"line":746},"woocommerce_init","PPOM",163,{"type":288,"name":748,"callback":367,"file":728,"line":749},"before_woocommerce_init",165,[751,756,760,763,765,768,770,774,776,780,784,788],{"action":752,"nopriv":753,"callback":754,"hasNonce":753,"hasCapCheck":753,"file":324,"line":755},"ppom_get_products",false,"get_products",52,{"action":757,"nopriv":753,"callback":757,"hasNonce":758,"hasCapCheck":753,"file":324,"line":759},"ppom_attach_ppoms",true,53,{"action":761,"nopriv":758,"callback":761,"hasNonce":753,"hasCapCheck":753,"file":413,"line":762},"ppom_upload_file",232,{"action":761,"nopriv":753,"callback":761,"hasNonce":753,"hasCapCheck":753,"file":413,"line":764},233,{"action":766,"nopriv":758,"callback":766,"hasNonce":753,"hasCapCheck":753,"file":413,"line":767},"ppom_delete_file",234,{"action":766,"nopriv":753,"callback":766,"hasNonce":753,"hasCapCheck":753,"file":413,"line":769},235,{"action":771,"nopriv":753,"callback":772,"hasNonce":753,"hasCapCheck":753,"file":413,"line":773},"ppom_ajax_validation","ppom_woocommerce_ajax_validate",237,{"action":771,"nopriv":758,"callback":772,"hasNonce":753,"hasCapCheck":753,"file":413,"line":775},238,{"action":777,"nopriv":753,"callback":778,"hasNonce":753,"hasCapCheck":753,"file":413,"line":779},"ppom_save_form_meta","ppom_admin_save_form_meta",253,{"action":781,"nopriv":753,"callback":782,"hasNonce":753,"hasCapCheck":753,"file":413,"line":783},"ppom_update_form_meta","ppom_admin_update_form_meta",254,{"action":785,"nopriv":753,"callback":786,"hasNonce":753,"hasCapCheck":753,"file":413,"line":787},"ppom_delete_meta","ppom_admin_delete_meta",255,{"action":789,"nopriv":753,"callback":790,"hasNonce":753,"hasCapCheck":753,"file":413,"line":791},"ppom_delete_selected_meta","ppom_admin_delete_selected_meta",256,[793,801,806,811,816,821,826],{"namespace":794,"route":795,"methods":796,"callback":798,"permissionCallback":799,"file":719,"line":800},"ppom\u002Fv1","\u002Fget\u002Fproduct\u002F",[797],"GET","get_ppom_meta_info_product","__return_true",27,{"namespace":794,"route":802,"methods":803,"callback":804,"permissionCallback":799,"file":719,"line":805},"\u002Fget\u002Fid\u002F(?P\u003Cid>\\d+)",[797],"get_ppom_meta_by_id",38,{"namespace":794,"route":807,"methods":808,"callback":810,"permissionCallback":799,"file":719,"line":331},"\u002Fset\u002Fproduct\u002F",[809],"POST","ppom_save_meta_product",{"namespace":794,"route":812,"methods":813,"callback":814,"permissionCallback":799,"file":719,"line":815},"\u002Fdelete\u002Fproduct\u002F",[809],"delete_ppom_fields_product",60,{"namespace":794,"route":817,"methods":818,"callback":819,"permissionCallback":799,"file":719,"line":820},"\u002Fget\u002Forder\u002F",[797],"get_ppom_meta_info_order",73,{"namespace":794,"route":822,"methods":823,"callback":824,"permissionCallback":799,"file":719,"line":825},"\u002Fset\u002Forder\u002F",[809],"ppom_update_meta_order",84,{"namespace":794,"route":827,"methods":828,"callback":829,"permissionCallback":799,"file":719,"line":830},"\u002Fdelete\u002Forder\u002F",[809],"delete_ppom_fields_order",95,[832],{"tag":833,"callback":834,"file":413,"line":835},"ppom","ppom_hooks_render_shortcode",229,[837,839],{"hook":625,"callback":625,"file":413,"line":838},708,{"hook":840,"callback":840,"file":413,"line":841},"setup_styles_and_scripts_wooproduct",712,20,{"dangerousFunctions":844,"sqlUsage":845,"outputEscaping":851,"fileOperations":1212,"externalRequests":29,"nonceChecks":1213,"capabilityChecks":1214,"bundledLibraries":1215},[],{"prepared":846,"raw":64,"locations":847},23,[848],{"file":324,"line":849,"context":850},878,"$wpdb->get_results() with variable interpolation",{"escaped":852,"rawEcho":853,"locations":854},1952,211,[855,859,860,861,863,865,866,867,869,870,872,873,875,877,879,881,883,885,887,888,891,892,894,896,898,900,902,904,906,907,908,909,912,913,915,916,918,920,922,924,926,928,930,932,933,934,935,936,939,941,943,945,947,950,952,954,956,958,960,961,963,965,967,969,971,973,975,977,979,981,983,985,987,989,991,993,995,997,999,1001,1003,1005,1007,1009,1010,1012,1014,1016,1018,1019,1021,1022,1023,1025,1027,1028,1030,1031,1033,1034,1035,1037,1039,1040,1041,1042,1044,1046,1047,1048,1051,1052,1053,1055,1057,1059,1061,1062,1064,1065,1066,1068,1069,1070,1071,1074,1077,1078,1080,1082,1084,1085,1087,1089,1092,1093,1094,1096,1098,1099,1100,1103,1104,1105,1107,1109,1110,1112,1113,1114,1115,1117,1119,1121,1122,1123,1124,1125,1128,1130,1131,1132,1133,1134,1136,1137,1138,1140,1142,1143,1145,1148,1149,1150,1151,1153,1154,1156,1157,1158,1159,1160,1161,1162,1164,1165,1167,1169,1170,1173,1174,1175,1176,1177,1178,1180,1182,1184,1186,1188,1190,1192,1194,1196,1198,1200,1202,1204,1206,1208,1209],{"file":856,"line":857,"context":858},"backend\\templates\\admin-settings.php",64,"raw output",{"file":856,"line":311,"context":858},{"file":856,"line":501,"context":858},{"file":856,"line":862,"context":858},154,{"file":856,"line":864,"context":858},170,{"file":856,"line":532,"context":858},{"file":856,"line":536,"context":858},{"file":856,"line":868,"context":858},185,{"file":856,"line":556,"context":858},{"file":856,"line":871,"context":858},204,{"file":856,"line":853,"context":858},{"file":856,"line":874,"context":858},219,{"file":856,"line":876,"context":858},227,{"file":856,"line":878,"context":858},241,{"file":856,"line":880,"context":858},258,{"file":856,"line":882,"context":858},272,{"file":856,"line":884,"context":858},273,{"file":886,"line":414,"context":858},"backend\\templates\\inputs\\css_editor.php",{"file":886,"line":336,"context":858},{"file":889,"line":890,"context":858},"backend\\templates\\inputs\\select.php",28,{"file":889,"line":418,"context":858},{"file":324,"line":893,"context":858},223,{"file":324,"line":895,"context":858},377,{"file":324,"line":897,"context":858},704,{"file":324,"line":899,"context":858},706,{"file":324,"line":901,"context":858},833,{"file":324,"line":903,"context":858},843,{"file":905,"line":444,"context":858},"classes\\attach-popup\\select-component.class.php",{"file":905,"line":266,"context":858},{"file":905,"line":311,"context":858},{"file":371,"line":779,"context":858},{"file":910,"line":911,"context":858},"classes\\form.class.php",167,{"file":910,"line":513,"context":858},{"file":910,"line":914,"context":858},179,{"file":910,"line":876,"context":858},{"file":910,"line":917,"context":858},314,{"file":376,"line":919,"context":858},77,{"file":376,"line":921,"context":858},78,{"file":923,"line":358,"context":858},"classes\\integrations\\elementor\\shortcode-widget.php",{"file":413,"line":925,"context":858},586,{"file":413,"line":927,"context":858},599,{"file":929,"line":316,"context":858},"css\\style.php",{"file":698,"line":931,"context":858},54,{"file":698,"line":857,"context":858},{"file":698,"line":218,"context":858},{"file":698,"line":185,"context":858},{"file":698,"line":583,"context":858},{"file":937,"line":938,"context":858},"inc\\files.php",403,{"file":701,"line":940,"context":858},835,{"file":942,"line":820,"context":858},"inc\\woocommerce.php",{"file":942,"line":944,"context":858},107,{"file":942,"line":946,"context":858},623,{"file":948,"line":949,"context":858},"templates\\admin\\addons-list.php",51,{"file":948,"line":951,"context":858},62,{"file":948,"line":953,"context":858},66,{"file":948,"line":955,"context":858},75,{"file":957,"line":441,"context":858},"templates\\admin\\existing-meta.php",{"file":957,"line":959,"context":858},86,{"file":957,"line":444,"context":858},{"file":962,"line":336,"context":858},"templates\\admin\\ppom-fields.php",{"file":962,"line":964,"context":858},394,{"file":962,"line":966,"context":858},433,{"file":962,"line":968,"context":858},483,{"file":962,"line":970,"context":858},529,{"file":962,"line":972,"context":858},572,{"file":962,"line":974,"context":858},595,{"file":962,"line":976,"context":858},611,{"file":962,"line":978,"context":858},646,{"file":962,"line":980,"context":858},647,{"file":962,"line":982,"context":858},652,{"file":962,"line":984,"context":858},772,{"file":962,"line":986,"context":858},785,{"file":962,"line":988,"context":858},786,{"file":962,"line":990,"context":858},787,{"file":962,"line":992,"context":858},788,{"file":962,"line":994,"context":858},789,{"file":996,"line":393,"context":858},"templates\\admin\\products-list.php",{"file":998,"line":441,"context":858},"templates\\frontend\\component\\quantities\\grid-layout.php",{"file":998,"line":1000,"context":858},94,{"file":998,"line":1002,"context":858},108,{"file":1004,"line":949,"context":858},"templates\\frontend\\component\\quantities\\horizontal-layout.php",{"file":1004,"line":1006,"context":858},113,{"file":1008,"line":424,"context":858},"templates\\frontend\\component\\quantities\\vertical-layout.php",{"file":1008,"line":311,"context":858},{"file":1008,"line":1011,"context":858},117,{"file":1013,"line":377,"context":858},"templates\\frontend\\inputs\\audio.php",{"file":1013,"line":1015,"context":858},36,{"file":1013,"line":1017,"context":858},68,{"file":1013,"line":825,"context":858},{"file":1013,"line":1020,"context":858},85,{"file":1013,"line":198,"context":858},{"file":1013,"line":295,"context":858},{"file":1013,"line":1024,"context":858},104,{"file":1026,"line":805,"context":858},"templates\\frontend\\inputs\\checkbox.php",{"file":1026,"line":358,"context":858},{"file":1026,"line":1029,"context":858},144,{"file":1026,"line":497,"context":858},{"file":1032,"line":328,"context":858},"templates\\frontend\\inputs\\color.php",{"file":1032,"line":424,"context":858},{"file":1032,"line":857,"context":858},{"file":1036,"line":414,"context":858},"templates\\frontend\\inputs\\cropper.php",{"file":1036,"line":1038,"context":858},56,{"file":1036,"line":919,"context":858},{"file":1036,"line":825,"context":858},{"file":1036,"line":311,"context":858},{"file":1036,"line":1043,"context":858},110,{"file":1045,"line":755,"context":858},"templates\\frontend\\inputs\\date.php",{"file":1045,"line":354,"context":858},{"file":1045,"line":218,"context":858},{"file":1049,"line":1050,"context":858},"templates\\frontend\\inputs\\daterange.php",43,{"file":1049,"line":815,"context":858},{"file":1049,"line":953,"context":858},{"file":1054,"line":462,"context":858},"templates\\frontend\\inputs\\divider.php",{"file":1054,"line":1056,"context":858},116,{"file":1054,"line":1058,"context":858},121,{"file":1054,"line":1060,"context":858},128,{"file":1054,"line":737,"context":858},{"file":1063,"line":385,"context":858},"templates\\frontend\\inputs\\email.php",{"file":1063,"line":951,"context":858},{"file":1063,"line":1017,"context":858},{"file":1067,"line":328,"context":858},"templates\\frontend\\inputs\\file.php",{"file":1067,"line":931,"context":858},{"file":1067,"line":921,"context":858},{"file":1067,"line":444,"context":858},{"file":1072,"line":1073,"context":858},"templates\\frontend\\inputs\\hidden.php",26,{"file":1075,"line":1076,"context":858},"templates\\frontend\\inputs\\image.php",31,{"file":1075,"line":418,"context":858},{"file":1075,"line":1079,"context":858},127,{"file":1075,"line":1081,"context":858},142,{"file":1075,"line":1083,"context":858},145,{"file":1075,"line":835,"context":858},{"file":1075,"line":1086,"context":858},240,{"file":1075,"line":1088,"context":858},257,{"file":1090,"line":1091,"context":858},"templates\\frontend\\inputs\\measure.php",42,{"file":1090,"line":815,"context":858},{"file":1090,"line":358,"context":858},{"file":1090,"line":1095,"context":858},88,{"file":1097,"line":1050,"context":858},"templates\\frontend\\inputs\\number.php",{"file":1097,"line":815,"context":858},{"file":1097,"line":953,"context":858},{"file":1101,"line":1102,"context":858},"templates\\frontend\\inputs\\palettes.php",33,{"file":1101,"line":931,"context":858},{"file":1101,"line":428,"context":858},{"file":1101,"line":1106,"context":858},124,{"file":1101,"line":1108,"context":858},126,{"file":1101,"line":1029,"context":858},{"file":1111,"line":395,"context":858},"templates\\frontend\\inputs\\pricematrix.php",{"file":1111,"line":1091,"context":858},{"file":1111,"line":1017,"context":858},{"file":1111,"line":275,"context":858},{"file":1111,"line":1116,"context":858},114,{"file":1118,"line":931,"context":858},"templates\\frontend\\inputs\\quantities.php",{"file":1120,"line":890,"context":858},"templates\\frontend\\inputs\\radio.php",{"file":1120,"line":414,"context":858},{"file":1120,"line":830,"context":858},{"file":1120,"line":207,"context":858},{"file":1120,"line":295,"context":858},{"file":1126,"line":1127,"context":858},"templates\\frontend\\inputs\\section.php",35,{"file":1129,"line":395,"context":858},"templates\\frontend\\inputs\\select.php",{"file":1129,"line":385,"context":858},{"file":1129,"line":759,"context":858},{"file":1129,"line":424,"context":858},{"file":1129,"line":1024,"context":858},{"file":1135,"line":219,"context":858},"templates\\frontend\\inputs\\text.php",{"file":1135,"line":955,"context":858},{"file":1135,"line":919,"context":858},{"file":1135,"line":1139,"context":858},82,{"file":1141,"line":931,"context":858},"templates\\frontend\\inputs\\textarea.php",{"file":1141,"line":349,"context":858},{"file":1141,"line":1144,"context":858},72,{"file":1146,"line":1147,"context":858},"templates\\frontend\\inputs\\timezone.php",34,{"file":1146,"line":402,"context":858},{"file":1146,"line":1038,"context":858},{"file":1146,"line":340,"context":858},{"file":1152,"line":414,"context":858},"templates\\frontend\\ppom-fields.php",{"file":1152,"line":27,"context":858},{"file":1155,"line":805,"context":858},"templates\\input\\quantities.php",{"file":1155,"line":1050,"context":858},{"file":1155,"line":1000,"context":858},{"file":1155,"line":737,"context":858},{"file":1155,"line":489,"context":858},{"file":1155,"line":746,"context":858},{"file":1155,"line":540,"context":858},{"file":1155,"line":1163,"context":858},188,{"file":1155,"line":764,"context":858},{"file":1155,"line":1166,"context":858},245,{"file":1155,"line":1168,"context":858},251,{"file":1155,"line":880,"context":858},{"file":1171,"line":1172,"context":858},"templates\\render-fields.php",210,{"file":1171,"line":853,"context":858},{"file":1171,"line":579,"context":858},{"file":1171,"line":893,"context":858},{"file":1171,"line":1086,"context":858},{"file":1171,"line":646,"context":858},{"file":1171,"line":1179,"context":858},317,{"file":1171,"line":1181,"context":858},346,{"file":1171,"line":1183,"context":858},368,{"file":1171,"line":1185,"context":858},393,{"file":1171,"line":1187,"context":858},415,{"file":1171,"line":1189,"context":858},442,{"file":1171,"line":1191,"context":858},481,{"file":1171,"line":1193,"context":858},532,{"file":1171,"line":1195,"context":858},557,{"file":1171,"line":1197,"context":858},590,{"file":1171,"line":1199,"context":858},606,{"file":1171,"line":1201,"context":858},632,{"file":1171,"line":1203,"context":858},680,{"file":1171,"line":1205,"context":858},726,{"file":1207,"line":393,"context":858},"templates\\v10\\file-modals.php",{"file":1207,"line":372,"context":858},{"file":1210,"line":1211,"context":858},"templates\\v10\\image-modals.php",14,16,12,6,[1216,1219],{"name":1217,"version":38,"knownCves":1218},"Select2",[],{"name":1220,"version":38,"knownCves":1221},"DataTables",[],[1223,1238,1252,1260,1268,1281,1289,1301,1309,1321,1331,1346,1361,1376],{"entryPoint":1224,"graph":1225,"unsanitizedCount":64,"severity":41},"ppom_fields_render (classes\\form.class.php:87)",{"nodes":1226,"edges":1236},[1227,1231],{"id":1228,"type":1229,"label":1230,"file":910,"line":198},"n0","source","$_POST",{"id":1232,"type":1233,"label":1234,"file":910,"line":876,"wp_function":1235},"n1","sink","echo() [XSS]","echo",[1237],{"from":1228,"to":1232,"sanitized":753},{"entryPoint":1239,"graph":1240,"unsanitizedCount":29,"severity":1251},"save_settings (backend\\settings-panel.class.php:303)",{"nodes":1241,"edges":1249},[1242,1245],{"id":1228,"type":1229,"label":1243,"file":299,"line":1244},"$_REQUEST",331,{"id":1232,"type":1233,"label":1246,"file":299,"line":1247,"wp_function":1248},"update_option() [Settings Manipulation]",337,"update_option",[1250],{"from":1228,"to":1232,"sanitized":758},"low",{"entryPoint":1253,"graph":1254,"unsanitizedCount":29,"severity":1251},"\u003Csettings-panel.class> (backend\\settings-panel.class.php:0)",{"nodes":1255,"edges":1258},[1256,1257],{"id":1228,"type":1229,"label":1243,"file":299,"line":1244},{"id":1232,"type":1233,"label":1246,"file":299,"line":1247,"wp_function":1248},[1259],{"from":1228,"to":1232,"sanitized":758},{"entryPoint":1261,"graph":1262,"unsanitizedCount":64,"severity":1251},"\u003Cform.class> (classes\\form.class.php:0)",{"nodes":1263,"edges":1266},[1264,1265],{"id":1228,"type":1229,"label":1230,"file":910,"line":198},{"id":1232,"type":1233,"label":1234,"file":910,"line":876,"wp_function":1235},[1267],{"from":1228,"to":1232,"sanitized":753},{"entryPoint":1269,"graph":1270,"unsanitizedCount":29,"severity":1251},"ppom_attach_meta (classes\\plugin.class.php:928)",{"nodes":1271,"edges":1279},[1272,1275],{"id":1228,"type":1229,"label":1273,"file":413,"line":1274},"$_GET (x3)",930,{"id":1232,"type":1233,"label":1276,"file":413,"line":1277,"wp_function":1278},"wp_redirect() [Open Redirect]",934,"wp_redirect",[1280],{"from":1228,"to":1232,"sanitized":758},{"entryPoint":1282,"graph":1283,"unsanitizedCount":29,"severity":1251},"\u003Cplugin.class> (classes\\plugin.class.php:0)",{"nodes":1284,"edges":1287},[1285,1286],{"id":1228,"type":1229,"label":1273,"file":413,"line":1274},{"id":1232,"type":1233,"label":1276,"file":413,"line":1277,"wp_function":1278},[1288],{"from":1228,"to":1232,"sanitized":758},{"entryPoint":1290,"graph":1291,"unsanitizedCount":29,"severity":1251},"ppom_admin_delete_meta (inc\\admin.php:629)",{"nodes":1292,"edges":1299},[1293,1295],{"id":1228,"type":1229,"label":1243,"file":698,"line":1294},645,{"id":1232,"type":1233,"label":1296,"file":698,"line":1297,"wp_function":1298},"query() [SQLi]",649,"query",[1300],{"from":1228,"to":1232,"sanitized":758},{"entryPoint":1302,"graph":1303,"unsanitizedCount":29,"severity":1251},"\u003Cadmin> (inc\\admin.php:0)",{"nodes":1304,"edges":1307},[1305,1306],{"id":1228,"type":1229,"label":1243,"file":698,"line":1294},{"id":1232,"type":1233,"label":1296,"file":698,"line":1297,"wp_function":1298},[1308],{"from":1228,"to":1232,"sanitized":758},{"entryPoint":1310,"graph":1311,"unsanitizedCount":29,"severity":1251},"\u003Cfiles> (inc\\files.php:0)",{"nodes":1312,"edges":1319},[1313,1315],{"id":1228,"type":1229,"label":1243,"file":937,"line":1314},361,{"id":1232,"type":1233,"label":1316,"file":937,"line":1317,"wp_function":1318},"file_put_contents() [File Write]",602,"file_put_contents",[1320],{"from":1228,"to":1232,"sanitized":758},{"entryPoint":1322,"graph":1323,"unsanitizedCount":29,"severity":1251},"\u003Cform-data> (templates\\frontend\\component\\form-data.php:0)",{"nodes":1324,"edges":1329},[1325,1328],{"id":1228,"type":1229,"label":1326,"file":1327,"line":720},"$_GET","templates\\frontend\\component\\form-data.php",{"id":1232,"type":1233,"label":1234,"file":1327,"line":1127,"wp_function":1235},[1330],{"from":1228,"to":1232,"sanitized":758},{"entryPoint":1332,"graph":1333,"unsanitizedCount":393,"severity":1251},"\u003Crender-fields> (templates\\render-fields.php:0)",{"nodes":1334,"edges":1343},[1335,1337,1338,1341],{"id":1228,"type":1229,"label":1336,"file":1171,"line":381},"$_GET (x6)",{"id":1232,"type":1233,"label":1234,"file":1171,"line":1073,"wp_function":1235},{"id":1339,"type":1229,"label":1340,"file":1171,"line":489},"n2","$_POST (x9)",{"id":1342,"type":1233,"label":1234,"file":1171,"line":646,"wp_function":1235},"n3",[1344,1345],{"from":1228,"to":1232,"sanitized":753},{"from":1339,"to":1342,"sanitized":753},{"entryPoint":1347,"graph":1348,"unsanitizedCount":64,"severity":56},"get_products (classes\\admin.class.php:264)",{"nodes":1349,"edges":1358},[1350,1351,1354],{"id":1228,"type":1229,"label":1326,"file":324,"line":627},{"id":1232,"type":1352,"label":1353,"file":324,"line":627},"transform","→ get_db_field()",{"id":1339,"type":1233,"label":1355,"file":324,"line":1356,"wp_function":1357},"get_results() [SQLi]",558,"get_results",[1359,1360],{"from":1228,"to":1232,"sanitized":753},{"from":1232,"to":1339,"sanitized":753},{"entryPoint":1362,"graph":1363,"unsanitizedCount":64,"severity":56},"\u003Cadmin.class> (classes\\admin.class.php:0)",{"nodes":1364,"edges":1372},[1365,1367,1368,1369,1370],{"id":1228,"type":1229,"label":1230,"file":324,"line":1366},589,{"id":1232,"type":1233,"label":1234,"file":324,"line":903,"wp_function":1235},{"id":1339,"type":1229,"label":1326,"file":324,"line":627},{"id":1342,"type":1352,"label":1353,"file":324,"line":627},{"id":1371,"type":1233,"label":1355,"file":324,"line":1356,"wp_function":1357},"n4",[1373,1374,1375],{"from":1228,"to":1232,"sanitized":758},{"from":1339,"to":1342,"sanitized":753},{"from":1342,"to":1371,"sanitized":753},{"entryPoint":1377,"graph":1378,"unsanitizedCount":64,"severity":56},"\u003Cppom-fields> (templates\\admin\\ppom-fields.php:0)",{"nodes":1379,"edges":1397},[1380,1382,1384,1385,1387,1388,1391],{"id":1228,"type":1229,"label":1381,"file":962,"line":1015},"$_REQUEST (x2)",{"id":1232,"type":1233,"label":1234,"file":962,"line":1383,"wp_function":1235},509,{"id":1339,"type":1229,"label":1326,"file":962,"line":340},{"id":1342,"type":1233,"label":1234,"file":962,"line":1386,"wp_function":1235},510,{"id":1371,"type":1229,"label":1243,"file":962,"line":805},{"id":1389,"type":1352,"label":1390,"file":962,"line":805},"n5","→ get_settings_by_id()",{"id":1392,"type":1233,"label":1393,"file":1394,"line":1395,"wp_function":1396},"n6","get_row() [SQLi]","classes\\ppom.class.php",570,"get_row",[1398,1399,1400,1401],{"from":1228,"to":1232,"sanitized":758},{"from":1339,"to":1342,"sanitized":758},{"from":1371,"to":1389,"sanitized":753},{"from":1389,"to":1392,"sanitized":753},{"summary":1403,"deductions":1404},"The \"woocommerce-product-addon\" plugin exhibits a concerning security posture primarily due to a substantial attack surface with a high percentage of unprotected entry points.  While the plugin demonstrates good practices in SQL query preparation and output escaping, the lack of authorization checks on many AJAX handlers and REST API routes creates significant vulnerabilities. Taint analysis further highlights critical risks with three high-severity flows indicating potential for injection attacks, even with the absence of critical severity taint. The plugin's history of 11 known CVEs, including critical SQL injection, XSS, and authorization bypass vulnerabilities, strongly suggests a recurring pattern of exploitable weaknesses, with a recent vulnerability in late 2025 reinforcing this concern. Although the current version has no unpatched CVEs, the historical data and the static analysis findings present a picture of a plugin that, while improving in some areas, still carries significant inherent risks.",[1405,1407,1409,1411,1413,1415,1417],{"reason":1406,"points":344},"18 unprotected entry points (AJAX\u002FREST)",{"reason":1408,"points":1213},"3 high severity taint flows",{"reason":1410,"points":720},"11 CVEs historically, 3 critical",{"reason":1412,"points":92},"Recent vulnerability in 2025",{"reason":1414,"points":440},"11 AJAX handlers without auth checks",{"reason":1416,"points":107},"7 REST API routes without permission callbacks",{"reason":1418,"points":344},"Vulnerability history: SQLi, XSS, Injection","2026-03-16T17:30:32.054Z",{"wat":1421,"direct":1465},{"assetPaths":1422,"generatorPatterns":1436,"scriptPaths":1437,"versionParams":1451},[1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435],"\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fjs\u002Fadmin\u002Fpre-load.js","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fcss\u002Fbootstrap\u002Fbootstrap.css","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fjs\u002Fbootstrap\u002Fbootstrap.min.js","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fbackend\u002Fassets\u002Fjquery-ui-accordion.js","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fbackend\u002Fassets\u002Fjs\u002Fppom-backend.js","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fbackend\u002Fassets\u002Fcss\u002Fppom-backend.css","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fjs\u002Ffrontend\u002Fppom-frontend.js","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fcss\u002Ffrontend\u002Fppom-frontend.css","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fjs\u002Ffrontend\u002Fquantity-input.js","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fjs\u002Ffrontend\u002Fproduct-add-to-cart.js","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fjs\u002Fppom-woo-variation.js","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fjs\u002Fppom-woo-cart.js","\u002Fwp-content\u002Fplugins\u002Fwoocommerce-product-addon\u002Fjs\u002Fppom-woo-checkout.js",[],[1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450],"..\u002Fjs\u002Fadmin\u002Fpre-load.js","..\u002Fjs\u002Fbootstrap\u002Fbootstrap.min.js","..\u002Fbackend\u002Fassets\u002Fjquery-ui-accordion.js","..\u002Fbackend\u002Fassets\u002Fjs\u002Fppom-backend.js","..\u002Fcss\u002Fbootstrap\u002Fbootstrap.css","..\u002Fbackend\u002Fassets\u002Fcss\u002Fppom-backend.css","..\u002Fjs\u002Ffrontend\u002Fppom-frontend.js","..\u002Fcss\u002Ffrontend\u002Fppom-frontend.css","..\u002Fjs\u002Ffrontend\u002Fquantity-input.js","..\u002Fjs\u002Ffrontend\u002Fproduct-add-to-cart.js","..\u002Fjs\u002Fppom-woo-variation.js","..\u002Fjs\u002Fppom-woo-cart.js","..\u002Fjs\u002Fppom-woo-checkout.js",[1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464],"woocommerce-product-addon\u002Fjs\u002Fadmin\u002Fpre-load.js?ver=","woocommerce-product-addon\u002Fcss\u002Fbootstrap\u002Fbootstrap.css?ver=","woocommerce-product-addon\u002Fjs\u002Fbootstrap\u002Fbootstrap.min.js?ver=","woocommerce-product-addon\u002Fbackend\u002Fassets\u002Fjquery-ui-accordion.js?ver=","woocommerce-product-addon\u002Fbackend\u002Fassets\u002Fjs\u002Fppom-backend.js?ver=","woocommerce-product-addon\u002Fbackend\u002Fassets\u002Fcss\u002Fppom-backend.css?ver=","woocommerce-product-addon\u002Fjs\u002Ffrontend\u002Fppom-frontend.js?ver=","woocommerce-product-addon\u002Fcss\u002Ffrontend\u002Fppom-frontend.css?ver=","woocommerce-product-addon\u002Fjs\u002Ffrontend\u002Fquantity-input.js?ver=","woocommerce-product-addon\u002Fjs\u002Ffrontend\u002Fproduct-add-to-cart.js?ver=","woocommerce-product-addon\u002Fjs\u002Fppom-woo-variation.js?ver=","woocommerce-product-addon\u002Fjs\u002Fppom-woo-cart.js?ver=","woocommerce-product-addon\u002Fjs\u002Fppom-woo-checkout.js?ver=",{"cssClasses":1466,"htmlComments":1475,"htmlAttributes":1484,"restEndpoints":1488,"jsGlobals":1491,"shortcodeOutput":1497},[1467,1468,1469,1470,1471,1472,1473,1474],"ppom-input-options","ppom-upload-file","ppom-option-title","ppom-option-price","ppom-option-field","ppom-add-to-cart-button","ppom-product-addon-cart-form","ppom-input-wrap",[1476,1477,1478,1479,1480,1481,1482,1483],"========== Direct access not allowed ===========","Plugin Name: PPOM for WooCommerce","PPOM Fields Manager Class","PPOM Product Class","PPOM Frontend Script Class","PPOM Input Class","PPOM Plugin Class","PPOM Fields Class",[1485,1486,1487],"data-ppom-price","data-ppom-field-id","data-ppom-product-id",[1489,1490],"\u002Fwp-json\u002Fppom\u002Fv1\u002Fproducts","\u002Fwp-json\u002Fppom\u002Fv1\u002Fsettings",[1492,1493,1494,1495,1496],"ppom_frontend_params","ppom_variation_params","ppom_cart_params","ppom_checkout_params","PPOM_VERSION",[1498,1499],"[ppom_product_options]","[ppom_add_to_cart_button]"]