Advanced Dynamic Pricing and Discount Rules for WooCommerce Security & Risk Analysis

wordpress.org/plugins/advanced-dynamic-pricing-for-woocommerce

The discount plugin for WooCommerce supports any dynamic pricing discount: bulk discount, role discount, storewide, bogo, gifts, cart discount

20K active installs v4.12.0 PHP 7.1+ WP 6.1+ Updated Mar 9, 2026
bulk-discountcouponsdiscountsdynamic-pricingwoocommerce
90
A · Safe
CVEs total7
Unpatched0
Last CVEApr 17, 2025
Download
Safety Verdict

Is Advanced Dynamic Pricing and Discount Rules for WooCommerce Safe to Use in 2026?

Generally Safe

Score 90/100

Advanced Dynamic Pricing and Discount Rules for WooCommerce has a strong security track record. Known vulnerabilities have been patched promptly.

7 known CVEsLast CVE: Apr 17, 2025Updated 25d ago
Risk Assessment

The 'advanced-dynamic-pricing-for-woocommerce' plugin, in version 4.12.0, presents a mixed security posture. While it demonstrates good practices in SQL query preparation (78%) and output escaping (86%), significant concerns arise from its attack surface. All five identified AJAX handlers lack authentication checks, creating a wide entry point for unauthorized actions. The presence of 42 'unserialize' calls, although not directly flagged by the taint analysis as critical or high severity, still warrants caution due to its potential for remote code execution if improperly handled. The plugin's vulnerability history is concerning, with 7 known CVEs, including 3 high severity and 4 medium severity issues. The common types of past vulnerabilities (XSS, CSRF, Missing Authorization) align with the identified weaknesses in the code analysis, particularly the lack of authorization on AJAX handlers. The fact that all past vulnerabilities are currently patched is a positive indicator, but the historical pattern suggests a recurring need for careful security auditing and timely patching.

Key Concerns

  • All 5 AJAX handlers lack authentication checks
  • 42 instances of 'unserialize' function used
  • 3 high severity vulnerabilities in history
  • 4 medium severity vulnerabilities in history
  • Common vulnerability types: XSS, CSRF, Missing Auth
Vulnerabilities
7

Advanced Dynamic Pricing and Discount Rules for WooCommerce Security Vulnerabilities

CVEs by Year

4 CVEs in 2022
2022
1 CVE in 2023
2023
2 CVEs in 2025
2025
Patched Has unpatched

Severity Breakdown

High
3
Medium
4

7 total CVEs

CVE-2025-39453medium · 4.3Cross-Site Request Forgery (CSRF)

Advanced Dynamic Pricing for WooCommerce <= 4.9.3 - Cross-Site Request Forgery to Settings Update

Apr 17, 2025 Patched in 4.9.5 (5d)
CVE-2025-24632medium · 6.1Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Advanced Dynamic Pricing for WooCommerce <= 4.9.0 - Reflected Cross-Site Scripting

Jan 5, 2025 Patched in 4.9.1 (46d)
CVE-2022-40203medium · 4.3Missing Authorization

Advanced Dynamic Pricing for WooCommerce <= 4.1.5 - Missing Authorization in ajaxCalculateSeveralProducts function

Feb 17, 2023 Patched in 4.1.6 (340d)
CVE-2022-43488high · 8.8Cross-Site Request Forgery (CSRF)

Advanced Dynamic Pricing for WooCommerce <= 4.1.5 - Cross-Site Request Forgery

Oct 30, 2022 Patched in 4.1.6 (450d)
CVE-2022-43491high · 8.8Cross-Site Request Forgery (CSRF)

Advanced Dynamic Pricing for WooCommerce <= 4.1.5 - Cross-Site Request Forgery

Oct 26, 2022 Patched in 4.1.6 (454d)

Advanced Dynamic Pricing for WooCommerce <= 4.1.5 - Missing Authorization

Oct 25, 2022 Patched in 4.1.6 (455d)
CVE-2022-38095high · 8.8Cross-Site Request Forgery (CSRF)

Advanced Dynamic Pricing for WooCommerce <= 4.1.3 - Cross-Site Request Forgery to Plugin Settings Update

Sep 12, 2022 Patched in 4.1.4 (498d)
Code Analysis
Analyzed Mar 16, 2026

Advanced Dynamic Pricing and Discount Rules for WooCommerce Code Analysis

Dangerous Functions
42
Raw SQL Queries
22
80 prepared
Unescaped Output
131
773 escaped
Nonce Checks
7
Capability Checks
0
File Operations
7
External Requests
1
Bundled Libraries
1

Dangerous Functions Found

unserialize'options' => unserialize($item->options ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:90
unserialize'additional' => unserialize($item->additional ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:91
unserialize'conditions' => unserialize($item->conditions ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:92
unserialize'filters' => unserialize($item->filters ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:93
unserialize'limits' => unserialize($item->limits ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:94
unserialize'product_adjustments' => unserialize($item->product_adjustments ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:95
unserialize'sortable_blocks_priority' => unserialize($item->sortable_blocks_priority ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:96
unserialize'bulk_adjustments' => unserialize($item->bulk_adjustments ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:97
unserialize'role_discounts' => unserialize($item->role_discounts ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:98
unserialize'cart_adjustments' => unserialize($item->cart_adjustments ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:99
unserialize'get_products' => unserialize($item->get_products ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:100
unserialize'advertising' => unserialize($item->advertising ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:101
unserialize'condition_message' => unserialize($item->condition_message ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:102
unserialize'options' => unserialize($item->options ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:285
unserialize'additional' => unserialize($item->additional ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:286
unserialize'conditions' => unserialize($item->conditions ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:287
unserialize'filters' => unserialize($item->filters ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:288
unserialize'limits' => unserialize($item->limits ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:289
unserialize'product_adjustments' => unserialize($item->product_adjustments ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:290
unserialize'sortable_blocks_priority' => unserialize($item->sortable_blocks_priority ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:291
unserialize'bulk_adjustments' => unserialize($item->bulk_adjustments ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:292
unserialize'role_discounts' => unserialize($item->role_discounts ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:293
unserialize'cart_adjustments' => unserialize($item->cart_adjustments ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:294
unserialize'get_products' => unserialize($item->get_products ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:295
unserialize'auto_add_products' => unserialize($item->auto_add_products ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:296
unserialize'advertising' => unserialize($item->advertising ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:297
unserialize'condition_message' => unserialize($item->condition_message ?? ""),BaseVersion\Includes\Database\Repository\RuleRepository.php:298
unserialize$additional = unserialize($additional);BaseVersion\Includes\Database\Repository\RuleRepository.php:679
unserialize'conditions' => unserialize($item->conditions),BaseVersion\Includes\Updater\UpdateFunctions.php:41
unserialize'conditions' => unserialize($item->conditions),BaseVersion\Includes\Updater\UpdateFunctions.php:76
unserialize'limits' => unserialize($item->limits),BaseVersion\Includes\Updater\UpdateFunctions.php:77
unserialize'cart_adjustments' => unserialize($item->cart_adjustments),BaseVersion\Includes\Updater\UpdateFunctions.php:78
unserialize'get_products' => unserialize($item->get_products),BaseVersion\Includes\Updater\UpdateFunctions.php:143
unserialize'get_products' => unserialize($item->get_products),BaseVersion\Includes\Updater\UpdateFunctions.php:226
unserialize'conditions' => unserialize($item->conditions),BaseVersion\Includes\Updater\UpdateFunctions.php:264
unserialize'product_adjustments' => unserialize($item->product_adjustments),BaseVersion\Includes\Updater\UpdateFunctions.php:345
unserialize'bulk_adjustments' => unserialize($item->bulk_adjustments),BaseVersion\Includes\Updater\UpdateFunctions.php:346
unserialize'conditions' => unserialize($item->conditions),BaseVersion\Includes\Updater\UpdateFunctions.php:420
unserialize'advertising' => unserialize($item->advertising),BaseVersion\Includes\Updater\UpdateFunctions.php:487
unserialize'conditions' => unserialize($item->conditions),BaseVersion\Includes\Updater\UpdateFunctions.php:561
unserialize'conditions' => unserialize($item->conditions),BaseVersion\Includes\Updater\UpdateFunctions.php:606
unserialize$filters = unserialize($item->filters);BaseVersion\Includes\Updater\UpdateFunctions.php:698

Bundled Libraries

Select2

SQL Query Safety

78% prepared102 total queries

Output Escaping

86% escaped904 total outputs
Data Flows
4 unsanitized

Data Flow Analysis

4 flows4 with unsanitized paths
handleSubmitAction (BaseVersion\Includes\AdminExtensions\AdminPage\Tabs\Tools.php:173)
Source (user input) Sink (dangerous op) Sanitizer Transform Unsanitized Sanitized
Attack Surface
5 unprotected

Advanced Dynamic Pricing and Discount Rules for WooCommerce Attack Surface

Entry Points5
Unprotected5

AJAX Handlers 5

authwp_ajax_adp_notice_dismissBaseVersion\Includes\AdminExtensions\AdminNotice.php:59
authwp_ajax_export-csv-bulk-rangesBaseVersion\Includes\AdminExtensions\AdminPage\Tabs\Tools.php:66
authwp_ajax_migrate-common-to-product-onlyBaseVersion\Includes\AdminExtensions\AdminPage\Tabs\Tools.php:67
authwp_ajax_migrate-product-only-to-commonBaseVersion\Includes\AdminExtensions\AdminPage\Tabs\Tools.php:68
authwp_ajax_export-json-settingsBaseVersion\Includes\AdminExtensions\AdminPage\Tabs\Tools.php:521
WordPress Hooks 186
actionadmin_noticesadvanced-dynamic-pricing-for-woocommerce.php:26
actionadmin_noticesBaseVersion\Includes\AdminExtensions\AdminNotice.php:54
actionadmin_noticesBaseVersion\Includes\AdminExtensions\AdminNotice.php:55
actionadmin_noticesBaseVersion\Includes\AdminExtensions\AdminNotice.php:57
filteradp_import_merge_rulesBaseVersion\Includes\AdminExtensions\AdminPage\Tabs\Tools.php:177
actionadmin_enqueue_scriptsBaseVersion\Includes\AdminExtensions\AdminPage.php:47
filterscript_loader_srcBaseVersion\Includes\AdminExtensions\AdminPage.php:48
filterscript_loader_srcBaseVersion\Includes\AdminExtensions\AdminPage.php:49
filteradmin_footer_textBaseVersion\Includes\AdminExtensions\AdminPage.php:50
actionadmin_enqueue_scriptsBaseVersion\Includes\AdminExtensions\AdminPage.php:52
actionadmin_menuBaseVersion\Includes\AdminExtensions\AdminPage.php:70
actionadd_meta_boxesBaseVersion\Includes\AdminExtensions\MetaBoxes.php:13
actionwoocommerce_admin_order_preview_endBaseVersion\Includes\AdminExtensions\WcOrderPreviewExtensions.php:29
filterwoocommerce_admin_order_preview_get_order_detailsBaseVersion\Includes\AdminExtensions\WcOrderPreviewExtensions.php:30
actionwoocommerce_product_write_panel_tabsBaseVersion\Includes\AdminExtensions\WcProductPageExtensions.php:59
actionwoocommerce_product_data_panelsBaseVersion\Includes\AdminExtensions\WcProductPageExtensions.php:60
actionwp_loadedBaseVersion\Includes\Advertising\DiscountMessage.php:80
actionwp_loadedBaseVersion\Includes\Advertising\DiscountMessage.php:95
filterwoocommerce_cart_totals_coupon_labelBaseVersion\Includes\CartExtensions\CartExtensions.php:53
filterwoocommerce_cart_totals_coupon_htmlBaseVersion\Includes\CartExtensions\CartExtensions.php:92
filterwoocommerce_cart_item_classBaseVersion\Includes\CartExtensions\CartExtensions.php:125
filterwoocommerce_order_again_cart_item_dataBaseVersion\Includes\CartExtensions\CartExtensions.php:151
actionwp_print_stylesBaseVersion\Includes\CartExtensions\CartExtensions.php:191
filterwoocommerce_cart_item_quantityBaseVersion\Includes\CartExtensions\CartExtensions.php:215
filterwoocommerce_get_shop_coupon_dataBaseVersion\Includes\CartProcessor\CartCouponsProcessor.php:247
filterwoocommerce_coupon_discount_typesBaseVersion\Includes\CartProcessor\CartCouponsProcessor.php:257
filterwoocommerce_product_coupon_typesBaseVersion\Includes\CartProcessor\CartCouponsProcessor.php:258
filterwoocommerce_coupon_get_discount_amountBaseVersion\Includes\CartProcessor\CartCouponsProcessor.php:259
filterwoocommerce_coupon_custom_discounts_arrayBaseVersion\Includes\CartProcessor\CartCouponsProcessor.php:261
filterwoocommerce_coupon_get_discount_amountBaseVersion\Includes\CartProcessor\CartCouponsProcessor.php:278
filterwoocommerce_cart_coupon_typesBaseVersion\Includes\CartProcessor\CartCouponsProcessor.php:280
filterwoocommerce_coupon_discount_typesBaseVersion\Includes\CartProcessor\CartCouponsProcessor.php:281
filterwoocommerce_coupon_is_validBaseVersion\Includes\CartProcessor\CartCouponsProcessor.php:296
filterwoocommerce_coupon_get_discount_amountBaseVersion\Includes\CartProcessor\CartCouponsProcessorMerge\MergeDiscountsCalculator.php:307
filterwoocommerce_get_shop_coupon_dataBaseVersion\Includes\CartProcessor\CartCouponsProcessorMerge.php:86
filterwoocommerce_coupon_is_validBaseVersion\Includes\CartProcessor\CartCouponsProcessorMerge.php:96
filterwoocommerce_cart_coupon_typesBaseVersion\Includes\CartProcessor\CartCouponsProcessorMerge.php:101
filterwoocommerce_coupon_discount_typesBaseVersion\Includes\CartProcessor\CartCouponsProcessorMerge.php:102
filterwoocommerce_coupon_custom_discounts_arrayBaseVersion\Includes\CartProcessor\CartCouponsProcessorMerge.php:103
filterwoocommerce_cart_calculate_feesBaseVersion\Includes\CartProcessor\CartFeeProcessor.php:131
filterwoocommerce_update_cart_validationBaseVersion\Includes\CartProcessor\CartProcessor.php:300
filterwoocommerce_package_ratesBaseVersion\Includes\CartProcessor\CartShippingProcessor.php:72
filterwoocommerce_package_ratesBaseVersion\Includes\CartProcessor\CartShippingProcessor.php:73
filterwoocommerce_cart_shipping_packagesBaseVersion\Includes\CartProcessor\CartShippingProcessor.php:74
filterwoocommerce_cart_shipping_method_full_labelBaseVersion\Includes\CartProcessor\CartShippingProcessor.php:85
filterwoocommerce_shipping_chosen_methodBaseVersion\Includes\CartProcessor\CartShippingProcessor.php:95
actionwoocommerce_remove_cart_itemBaseVersion\Includes\CartProcessor\FreeAutoAddItemsController.php:61
actionwoocommerce_after_cart_item_quantity_updateBaseVersion\Includes\CartProcessor\FreeAutoAddItemsController.php:62
actionwp_loadedBaseVersion\Includes\CartProcessor\FreeAutoAddItemsController.php:63
actionwoocommerce_checkout_create_orderBaseVersion\Includes\CartProcessor\FreeAutoAddItemsController.php:64
actionwoocommerce_cart_contentsBaseVersion\Includes\CartProcessor\FreeAutoAddItemsController.php:66
actionwoocommerce_mini_cart_contentsBaseVersion\Includes\CartProcessor\FreeAutoAddItemsController.php:67
actionwp_loadedBaseVersion\Includes\Compatibility\Addons\WcffCmp.php:44
actionwp_print_stylesBaseVersion\Includes\Compatibility\Addons\WcffCmp.php:45
filterwdp_calculate_totals_hook_priorityBaseVersion\Includes\Compatibility\AvataxCmp.php:25
filterwoocommerce_cart_item_priceBaseVersion\Includes\Compatibility\Container\AsanaEasyBundlesCmp.php:42
filterwoocommerce_cart_item_subtotalBaseVersion\Includes\Compatibility\Container\AsanaEasyBundlesCmp.php:62
filteradp_product_get_priceBaseVersion\Includes\Compatibility\Container\MixAndMatchCmp.php:37
filterwoocommerce_stock_amount_cart_itemBaseVersion\Includes\Compatibility\Container\SomewhereWarmBundlesCmp.php:40
filteradp_product_get_priceBaseVersion\Includes\Compatibility\Container\SomewhereWarmBundlesCmp.php:45
filterwoocommerce_bundle_price_dataBaseVersion\Includes\Compatibility\Container\SomewhereWarmBundlesCmp.php:67
filteradp_product_get_priceBaseVersion\Includes\Compatibility\Container\SomewhereWarmCompositesCmp.php:41
filteryith_wcpb_woocommerce_get_price_htmlBaseVersion\Includes\Compatibility\Container\YithBundlesCmp.php:41
filteryith_wcpb_ajax_update_price_enabledBaseVersion\Includes\Compatibility\Container\YithBundlesCmp.php:44
filteryith_wcpb_ajax_get_bundle_total_priceBaseVersion\Includes\Compatibility\Container\YithBundlesCmp.php:49
filterwoo_feed_filter_product_regular_priceBaseVersion\Includes\Compatibility\CTXFeedCmp.php:41
filterwoo_feed_filter_product_priceBaseVersion\Includes\Compatibility\CTXFeedCmp.php:47
filterwoo_feed_filter_product_sale_priceBaseVersion\Includes\Compatibility\CTXFeedCmp.php:53
filterwoo_feed_filter_product_price_with_taxBaseVersion\Includes\Compatibility\CTXFeedCmp.php:60
filterwoo_feed_filter_product_regular_price_with_taxBaseVersion\Includes\Compatibility\CTXFeedCmp.php:68
filterwoo_feed_filter_product_sale_price_with_taxBaseVersion\Includes\Compatibility\CTXFeedCmp.php:76
filterwc_facebook_product_priceBaseVersion\Includes\Compatibility\FacebookCommerceCmp.php:49
filteradp_price_qty_changed_external_pluginsBaseVersion\Includes\Compatibility\GermanMarketCmp.php:25
filtergerman_market_get_price_per_unit_data_complete_product_priceBaseVersion\Includes\Compatibility\GermanMarketCmp.php:28
actionwdp_calculate_totals_hook_priorityBaseVersion\Includes\Compatibility\GiftCardsSomewhereWarmCmp.php:62
actionwoocommerce_after_calculate_totalsBaseVersion\Includes\Compatibility\GiftCardsSomewhereWarmCmp.php:79
actionwoocommerce_after_calculate_totalsBaseVersion\Includes\Compatibility\GiftCardsSomewhereWarmCmp.php:80
filterwoocommerce_get_price_htmlBaseVersion\Includes\Compatibility\HeyLightCmp.php:35
filteradp_get_payment_methodsBaseVersion\Includes\Compatibility\KlarnaCmp.php:31
filterpre_do_shortcode_tagBaseVersion\Includes\Compatibility\KlarnaOnSiteMessagingCmp.php:30
filterdo_shortcode_tagBaseVersion\Includes\Compatibility\KlarnaOnSiteMessagingCmp.php:31
filterwoocommerce_available_variationBaseVersion\Includes\Compatibility\KlarnaOnSiteMessagingCmp.php:32
filterwoocommerce_product_get_priceBaseVersion\Includes\Compatibility\KlarnaOnSiteMessagingCmp.php:51
filterwdp_preloaded_list_languagesBaseVersion\Includes\Compatibility\Polylang\PolylangCmp.php:51
actionwoocommerce_before_shop_loop_item_titleBaseVersion\Includes\Compatibility\ShoptimizerCmp.php:43
actionwoocommerce_single_product_summaryBaseVersion\Includes\Compatibility\ShoptimizerCmp.php:44
actionwp_loadedBaseVersion\Includes\Compatibility\SmartCouponsCmp.php:72
actionwoocommerce_after_calculate_totalsBaseVersion\Includes\Compatibility\SmartCouponsCmp.php:89
filterwmc_get_price_conditionBaseVersion\Includes\Compatibility\VillaThemeMultiCurrencyCmp.php:80
filteradp_get_original_product_initial_price_from_cartBaseVersion\Includes\Compatibility\WcChainedProductsCmp.php:38
filteradp_get_original_product_regular_price_from_cartBaseVersion\Includes\Compatibility\WcChainedProductsCmp.php:39
filteradp_get_original_product_sale_price_from_cartBaseVersion\Includes\Compatibility\WcChainedProductsCmp.php:40
filteradp_get_original_product_from_cartBaseVersion\Includes\Compatibility\WcFreeGiftCouponsCmp.php:37
actionwdp_calculate_totals_hook_priorityBaseVersion\Includes\Compatibility\WcPaymentPlanSuiteCmp.php:45
filterwoocommerce_cart_item_subtotalBaseVersion\Includes\Compatibility\WcPaymentPlanSuiteCmp.php:51
actionwoocommerce_after_calculate_totalsBaseVersion\Includes\Compatibility\WcPaymentPlanSuiteCmp.php:54
actionwoocommerce_cart_totals_after_order_totalBaseVersion\Includes\Compatibility\WcPaymentPlanSuiteCmp.php:57
actionwoocommerce_review_order_after_order_totalBaseVersion\Includes\Compatibility\WcPaymentPlanSuiteCmp.php:60
filteralg_wc_pgbc_do_convert_shipping_package_rateBaseVersion\Includes\Compatibility\WcPgCurrencyCmp.php:61
actionwp_footerBaseVersion\Includes\Compatibility\WcPgCurrencyCmp.php:62
actionwc_quote_session_changedBaseVersion\Includes\Compatibility\WcQuoteCmp.php:52
actionwc_quote_add_to_quoteBaseVersion\Includes\Compatibility\WcQuoteCmp.php:53
filterwoocommerce_cart_item_priceBaseVersion\Includes\Compatibility\WcsAttCmp.php:55
actionwoocommerce_subscription_cart_after_groupingBaseVersion\Includes\Compatibility\WcSubscriptionsCmp.php:59
filterwoocommerce_subscriptions_calculated_totalBaseVersion\Includes\Compatibility\WcSubscriptionsCmp.php:60
filteradp_get_wc_sale_priceBaseVersion\Includes\Compatibility\WcSubscriptionsCmp.php:63
filterwoocommerce_calculated_totalBaseVersion\Includes\Compatibility\WcSubscriptionsCmp.php:159
actioninitBaseVersion\Includes\Compatibility\WooCommerceMultiCurrencyCmp.php:32
actionadmin_enqueue_scriptsBaseVersion\Includes\Compatibility\WooVariationSwatchesCmp.php:35
filteradp_replace_variation_data_storeBaseVersion\Includes\Compatibility\Wpml\WpmlCmp.php:43
filterwdp_preloaded_list_languagesBaseVersion\Includes\Compatibility\Wpml\WpmlCmp.php:71
filterwcml_load_multi_currency_in_ajaxBaseVersion\Includes\Compatibility\Wpml\WpmlCmp.php:117
actionwdp_calculate_totals_hook_priorityBaseVersion\Includes\Compatibility\YithGiftCardsCmp.php:38
actionwoocommerce_after_calculate_totalsBaseVersion\Includes\Compatibility\YithGiftCardsCmp.php:48
filteradp_get_original_product_from_cartBaseVersion\Includes\Compatibility\YithGiftCardsCmp.php:50
actionadp_schema_data_readyBaseVersion\Includes\Compatibility\YoastSEOCmp.php:25
filterwpseo_schema_productBaseVersion\Includes\Compatibility\YoastSEOCmp.php:27
filterwpseo_schema_offerBaseVersion\Includes\Compatibility\YoastSEOCmp.php:53
actionwpBaseVersion\Includes\Context.php:196
actionadmin_initBaseVersion\Includes\Context.php:202
filteradp_get_price_html_is_mod_neededBaseVersion\Includes\Core\RuleProcessor\CartTotals.php:333
actioncustomize_registerBaseVersion\Includes\CustomizerExtensions\CustomizerExtensions.php:50
actioncustomize_controls_enqueue_scriptsBaseVersion\Includes\CustomizerExtensions\CustomizerExtensions.php:51
actioncustomize_preview_initBaseVersion\Includes\CustomizerExtensions\CustomizerExtensions.php:52
actionwp_headBaseVersion\Includes\CustomizerExtensions\CustomizerExtensions.php:55
filteradp_calculate_persistent_rule_product_hashBaseVersion\Includes\Database\Repository\PersistentRuleRepository.php:280
filteradp_calculate_persistent_rule_product_hashBaseVersion\Includes\Database\Repository\PersistentRuleRepository.php:372
actionwc_update_product_lookup_tables_columnBaseVersion\Includes\Database\Repository\PersistentRuleRepository.php:545
filterwoocommerce_get_catalog_ordering_argsBaseVersion\Includes\Database\Repository\PersistentRuleRepository.php:562
filterwoocommerce_product_query_meta_queryBaseVersion\Includes\Database\Repository\PersistentRuleRepository.php:570
actionwp_print_scriptsBaseVersion\Includes\Debug\AdminBounceBack.php:55
actionwp_loadedBaseVersion\Includes\Debug\CalculationProfiler.php:70
actionshutdownBaseVersion\Includes\Debug\CalculationProfiler.php:98
actionwp_enqueue_scriptsBaseVersion\Includes\Debug\DebugBar.php:21
actionwp_headBaseVersion\Includes\Debug\DebugBar.php:26
actionwp_headBaseVersion\Includes\Debug\DebugBar.php:42
actionwp_footerBaseVersion\Includes\Debug\DebugBar.php:49
actionwp_loadedBaseVersion\Includes\Engine.php:153
filterpre_option_woocommerce_tax_round_at_subtotalBaseVersion\Includes\Engine.php:173
actionwoocommerce_after_calculate_totalsBaseVersion\Includes\Engine.php:186
actionwoocommerce_checkout_processBaseVersion\Includes\Engine.php:191
actionwoocommerce_checkout_update_order_reviewBaseVersion\Includes\Engine.php:202
actionwp_loadedBaseVersion\Includes\ExternalHookSuppression\ExternalHooksSuppressor.php:35
actionwoocommerce_subscriptions_deactivatedBaseVersion\Includes\Helpers\Helpers.php:12
actioninitBaseVersion\Includes\Loader.php:27
actionbefore_woocommerce_initBaseVersion\Includes\Loader.php:28
filterload_textdomain_mofileBaseVersion\Includes\Loader.php:66
filterwoocommerce_hidden_order_itemmetaBaseVersion\Includes\Loader.php:82
actionadmin_noticesBaseVersion\Includes\Loader.php:120
actionadmin_noticesBaseVersion\Includes\Loader.php:127
actionadmin_noticesBaseVersion\Includes\Loader.php:133
filterwoocommerce_add_to_cart_fragmentsBaseVersion\Includes\LoadStrategies\AdminAjax.php:130
filterwpml_is_ajaxBaseVersion\Includes\LoadStrategies\AdminAjax.php:150
filterwoocommerce_coupon_discount_typesBaseVersion\Includes\LoadStrategies\RestApi.php:39
filterwoocommerce_apply_base_tax_for_local_pickupBaseVersion\Includes\LoadStrategies\RestApi.php:63
actionwoocommerce_before_calculate_totalsBaseVersion\Includes\LoadStrategies\RestApi.php:77
filterwoocommerce_apply_base_tax_for_local_pickupBaseVersion\Includes\LoadStrategies\WpCron.php:47
filterwoocommerce_get_price_htmlBaseVersion\Includes\PriceDisplay\PriceDisplay.php:93
actionparse_requestBaseVersion\Includes\PriceDisplay\PriceDisplay.php:102
actionwpBaseVersion\Includes\PriceDisplay\PriceDisplay.php:109
filterwoocommerce_cart_subtotalBaseVersion\Includes\PriceDisplay\PriceDisplay.php:113
filterwoocommerce_quantity_input_argsBaseVersion\Includes\PriceDisplay\PriceDisplay.php:118
filterwoocommerce_available_variationBaseVersion\Includes\PriceDisplay\PriceDisplay.php:120
filterwoocommerce_show_variation_priceBaseVersion\Includes\PriceDisplay\PriceDisplay.php:124
filterwoocommerce_product_is_on_saleBaseVersion\Includes\PriceDisplay\PriceDisplay.php:213
filterwoocommerce_product_get_sale_priceBaseVersion\Includes\PriceDisplay\PriceDisplay.php:214
filterwoocommerce_product_get_regular_priceBaseVersion\Includes\PriceDisplay\PriceDisplay.php:216
filterwoocommerce_product_variation_get_sale_priceBaseVersion\Includes\PriceDisplay\PriceDisplay.php:221
filterwoocommerce_product_variation_get_regular_priceBaseVersion\Includes\PriceDisplay\PriceDisplay.php:223
filterwoocommerce_product-variation_data_storeBaseVersion\Includes\PriceDisplay\WcProductProcessor\WcProductProcessorHelper.php:61
filterwoocommerce_product_type_queryBaseVersion\Includes\PriceDisplay\WcProductProcessor\WcProductProcessorHelper.php:62
filterwoocommerce_structured_data_product_offerBaseVersion\Includes\SEO\StructuredData.php:50
filterwoocommerce_shortcode_products_queryBaseVersion\Includes\Shortcodes\Products.php:107
actionwoocommerce_checkout_order_processedBaseVersion\Includes\StatsCollector\WcCartStatsCollector.php:70
filterwoocommerce_checkout_create_order_line_item_objectBaseVersion\Includes\StatsCollector\WcCartStatsCollector.php:71
actionwoocommerce_order_after_calculate_totalsBaseVersion\Includes\StatsCollector\WcCartStatsCollector.php:81
actionwp_loadedBaseVersion\Includes\VolumePricingTable\RangeDiscountTableDisplay.php:55
actionwp_print_stylesBaseVersion\Includes\VolumePricingTable\RangeDiscountTableDisplay.php:126
filterwc_get_price_decimalsBaseVersion\Includes\WC\PriceFunctions.php:357
filterwoocommerce_shortcode_products_queryBaseVersion\Includes\WC\Utils.php:71
filterwoocommerce_cart_item_priceBaseVersion\Includes\WC\WcCartItemDisplayExtensions.php:47
filterwoocommerce_cart_item_subtotalBaseVersion\Includes\WC\WcCartItemDisplayExtensions.php:48
filterwoocommerce_cart_ready_to_calc_shippingBaseVersion\Includes\WC\WcNoFilterWorker.php:72
actionwoocommerce_add_to_cartBaseVersion\Includes\WC\WcNoFilterWorker.php:150
actionwoocommerce_after_product_object_saveBaseVersion\Includes\WC\WcProductCustomAttributesCache.php:11
actionadp_force_custom_product_attributes_updateBaseVersion\Includes\WC\WcProductCustomAttributesCache.php:18
Maintenance & Trust

Advanced Dynamic Pricing and Discount Rules for WooCommerce Maintenance & Trust

Maintenance Signals

WordPress version tested6.9.4
Last updatedMar 9, 2026
PHP min version7.1
Downloads1.2M

Community Trust

Rating94/100
Number of ratings119
Active installs20K
Developer Profile

Advanced Dynamic Pricing and Discount Rules for WooCommerce Developer Profile

algol.plus

3 plugins · 121K total installs

74
trust score
Avg Security Score
93/100
Avg Patch Time
571 days
View full developer profile
Detection Fingerprints

How We Detect Advanced Dynamic Pricing and Discount Rules for WooCommerce

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/advanced-dynamic-pricing-for-woocommerce/assets/css//wp-content/plugins/advanced-dynamic-pricing-for-woocommerce/assets/js/
Script Paths
advanced-dynamic-pricing-for-woocommerce/assets/js/frontend/frontend.js
Version Parameters
advanced-dynamic-pricing-for-woocommerce/assets/css/frontend/frontend.css?ver=advanced-dynamic-pricing-for-woocommerce/assets/js/frontend/frontend.js?ver=

HTML / DOM Fingerprints

CSS Classes
wdp-conditions-editorwdp-price-rule-editorwdp-condition-editor-type-selectwdp-rule-bulk-edit-buttonwdp-rule-pricing-type-selectwdp-role-price-matrix-editorwdp-role-price-rowwdp-role-price-column-header+6 more
HTML Comments
<!-- WDP_NOTICE_ACTIVE_PREMIUM_VERSION --><!-- WDP_NOTICE_FREE_VERSION_INACTIVE --><!-- WDP_NOTICE_Upgrade to premium to unlock all features --><!-- WDP_JS_VARS -->
Data Attributes
data-wdp-pricing-rule-iddata-wdp-condition-iddata-wdp-action-iddata-wdp-discount-typedata-wdp-discount-valuedata-wdp-rule-type+6 more
JS Globals
wdp_datawdp_frontend_params
REST Endpoints
/wp-json/wdp-api/v1/rules/wp-json/wdp-api/v1/rules/(?P<id>\d+)/wp-json/wdp-api/v1/conditions/wp-json/wdp-api/v1/actions
Shortcode Output
[wdp_pricing_table][wdp_discount_message][wdp_product_price]
FAQ

Frequently Asked Questions about Advanced Dynamic Pricing and Discount Rules for WooCommerce