WordPress.NamingConventions.PrefixAllGlobals.DynamicHooknameFound

Dynamic hook name

The plugin invokes a hook name built from a variable or expression that Plugin Check cannot verify as plugin-prefixed.

medium weight

Why It Shows Up

Plugin Check found a dynamic hook name such as a variable, array value, or concatenated expression. Static analysis cannot prove the final hook name starts with the plugin's namespace.

Why It Matters

Dynamic hook names can be valid, but unclear naming makes collisions and unexpected integrations harder to reason about across WordPress, themes, and other plugins.

How to Fix

  • Prefer a literal hook name with the plugin prefix when the hook is part of the plugin's public API.
  • If the hook must be dynamic, keep a fixed plugin-prefixed base before the variable portion.
  • Document public dynamic hooks so integrators know the expected final hook names.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#901Merge + Minify + Refresh3378264k+date date
#902Mollie Payments for WooCommerce3370123100k+Dynamic hook name
#903Molongui Post Contributors: Multi-Role Contributor Attribution33240162400Output is not escaped
#904More Types33227198800Non-prefixed global variable
#905Notification Master – Real-Time WordPress Notifications With Email, SMS, Webhooks & More332932151k+Text Domain Mismatch
#906Podcast Subscribe Buttons33552395k+Text Domain Mismatch
#907Post Lists View Custom334621502k+Missing Arg Domain
#908Frisbii Pay33912921k+Non-prefixed global variable
#909ShopPress – Shop Builder for Elementor and WooCommerce3311879500Non-prefixed global variable
#910Slider Path for Elementor33329100700Text Domain Mismatch
#911Social Rocket – Social Sharing Plugin331,0162551k+Unsafe printing function
#912Spin Wheel – Interactive spinning wheel that offers coupons33680313500Unsafe printing function
#913Multi-Carrier EasyPost Shipping Methods & Address Validation for WooCommerce3342469400Non Singular String Literal Domain
#914Multi-Carrier Shippo Shipping Rates & Address Validation for WooCommerce33411733k+Non Singular String Literal Domain
#915Product Addons for Woocommerce – Product Options with Custom Fields3312411430k+Output is not escaped
#916Min Max Control – Min Max Quantity & Step Control for WooCommerce339621510k+Non-prefixed global variable
#917Hyyan WooCommerce Polylang Integration331412208k+Nonce verification recommended
#918Mercado Pago payments for WooCommerce3361463100k+Short PHP open tag found
#919PDF Invoices Italian Add-on for WooCommerce333252005k+Non Singular String Literal Domain
#920WP MyLinks333542061k+Text Domain Mismatch
#921Paymattic – Secure, Simple Payment & Donation with Subscription Payments, Recurring Donations, Customer Management335383k+Direct Query
#922WP-UserOnline3311116110k+Output is not escaped
#923AyeCode Connect3417825310k+Nonce verification recommended
#924BoldGrid Easy SEO – Simple and Effective SEO3414910440k+Text Domain Mismatch
#925CM Search And Replace – Optimize content edits with a powerful search and replace tool342861112k+Output is not escaped
#926CSS JS Manager, Async JavaScript, Defer Render Blocking CSS34761061k+Input is not validated
#927Document Library Lite34149854k+Text Domain Mismatch
#928Easy Social Sharing34162401k+Non-prefixed global variable
#929Essential Classy Addons for Elementor – 150+ Widgets, Templates & Performance Tools34278186500Output is not escaped
#930Meta for WooCommerce3466186400k+Non-prefixed hook name
#931Flash Toolkit3415824210k+Non-prefixed global variable
#932Weight Based Shipping Table Rate for WooCommerce – Flexible Shipping34124156100k+Nonce verification recommended
#933Forms: 3rd-Party Integration342341125k+Output is not escaped
#934Inavii Social Feed – Live Social Proof Gallery345321809k+Text Domain Mismatch
#935Kadence WooCommerce Email Designer34119230100k+Non-prefixed global variable
#936Team Members Profile – Employee Directory & Staff Showcase3433990600Output is not escaped
#937Payoneer Checkout34168415k+Exception output is not escaped
#938Redirection34322942m+Non-prefixed class
#939Abandoned Cart Reports For WooCommerce341331632k+Output is not escaped
#940BjornTech PayPal POS integration for WooCommerce3468182700Non-prefixed hook name
#941Simple Discount Rules for Woocommerce341752145k+Nonce verification recommended
#942Product Tabs for WooCommerce341969310k+Text Domain Mismatch
#943WP Maps – Google Maps,OpenStreetMap,Mapbox,Store Locator,Listing,Directory & Filters3421945360k+wp function not compatible with requires wp
#944WP Mail Logging3476258300k+Nonce verification recommended
#945LightStart – Maintenance Mode, Coming Soon and Landing Page Builder3442312400k+Request data is not unslashed
#946WP Random Post Thumbnails34420261k+Text Domain Mismatch
#947WP Ultimate Post Grid34114744k+Missing direct file access protection
#948Absolute Addons For Elementor3586286400Non-prefixed global variable
#949Basic Google Maps Placemarks35189803k+Output is not escaped
#950bbPress Notify (No-Spam)3562662k+wp function not compatible with requires wp