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
#1301wpsection771315543k+Non-prefixed global variable
#1302AffiliateWP – Affiliate QR Codes783281k+Text Domain Mismatch
#1303AffiliateWP – Allow Own Referrals783710600Text Domain Mismatch
#1304AWP Classifieds781193k+Output is not escaped
#1305One Time Login787840k+Nonce verification recommended
#1306PiWeb Min/Max Quantity & Minimum Order Limits for WooCommerce7841700Nonce verification recommended
#1307WooCommerce Square78626680k+Non-prefixed hook name
#1308AffiliateWP – Affiliate Info792771k+Text Domain Mismatch
#1309AffiliateWP – Force Pending Referrals793512500Text Domain Mismatch
#1310AffiliateWP – WooCommerce Redirect Affiliates792771k+Text Domain Mismatch
#1311Related Products Manager for WooCommerce799431k+Non-prefixed global variable
#1312Notifima – WooCommerce Stock Manager, Inventory Management, Waitlist79121423k+Text Domain Mismatch
#1313WP Last Modified Info79453240k+Short PHP open tag found
#1314ShopEngine Gutenberg WooCommerce Builder Blocks Addon – All in One WooCommerce Solution804247353k+Non-prefixed global variable
#1315Bricksable for Bricks Builder8017610k+Post Not In exclude
#1316wModes – Catalog Mode, Product Pricing, Enquiry Forms & Promotions | for WooCommerce80465900Non-prefixed global variable
#1317SureMail – SMTP and Email Logs Plugin with Amazon SES, Postmark, and Other Providers804565200k+Non-prefixed hook name
#1318Melapress File Monitor8016905k+Non-prefixed global variable
#1319Product Feed PRO for WooCommerce by AdTribes – Product Feeds for WooCommerce80944580k+Non-prefixed hook name
#1320ElasticPress81136558k+Non-prefixed hook name
#1321Fullwidth Templates for Any Theme & Page Builder81122320k+Non-prefixed constant
#1322OG — Better Share on Social Media81145130k+Non-prefixed hook name
#1323Pagebar2811937900Non-prefixed global variable
#1324Orphans8114350k+Dynamic hook name
#1325Appointment Bookings for Zoom GoogleMeet and more – Wappointment8122521k+Non-prefixed class
#1326Free Shipping Bar for WooCommerce815212k+Non-prefixed global variable
#1327Bulk Order Form for WooCommerce81898900Non-prefixed hook name
#1328Hostinger Tools8213223m+wp function not compatible with requires wp
#1329Max Addons for Bricks Builder836291k+Post Not In exclude
#1330Photospace Responsive Gallery8311514900Text Domain Mismatch
#1331Lightweight Sidebar Manager83133680k+Non-prefixed class
#1332Better Post & Filter Widgets for Elementor847273k+slow db query tax query
#1333Floating Button – Easily Create Sticky, Fixed & Floating Buttons8461844k+Non-prefixed global variable
#1334Web Stories84126360k+Non-prefixed global variable
#1335WPB Accordion Menu – Collapsible Vertical Sidebar Menu – WooCommerce Category Accordion – Mobile Menu8455910k+Non-prefixed hook name
#1336Astra Widgets861015200k+Missing direct file access protection
#1337Shoppable Images (Lookbook) for WooCommerce8621316k+Missing direct file access protection
#1338Modern Cart – WooCommerce Side Cart & Popup Cart8689550k+Non-prefixed global variable
#1339WC MyParcel Belgium8634079600Text Domain Mismatch
#1340WPUpper Share Buttons864744k+Dynamic hook name
#1341CookieYes – Cookie Banner for Cookie Consent (Easy to setup GDPR/CCPA Compliant Cookie Notice)8712911m+Non-prefixed global variable
#1342Image Optimization – Compress Images and Convert to WebP or AVIF8715241m+Missing Translators Comment
#1343Bulk Page Generator and Mass Page Builder – Page Generator8726874k+Non-prefixed global variable
#1344Content Control – The Ultimate Content Restriction Plugin! Restrict Content, Create Conditional Blocks & More882011640k+Non-prefixed hook name
#1345301 Redirects – Redirect Manager88671300k+Non-prefixed global variable
#1346FlexMeeting – Webinar & Meeting Plugin for Jitsi Meet886181k+Nonce verification recommended
#1347Archivarix External Images Importer898351k+Non-prefixed global variable
#1348Bit Flows: AI Agent Automation & Integrations for Forms, CRM, eCommerce, Google Sheets, and More8913202k+wp function not compatible with requires wp
#1349LH Copy Media File89215800wp function not compatible with requires wp
#1350seQura892231k+Non-prefixed global variable