WordPress.DB.PreparedSQLPlaceholders.QuotedSimplePlaceholder

Quoted Simple Placeholder

A SQL query is built in a way that Plugin Check cannot verify as safely prepared.

critical weight

Why It Shows Up

The scan found missing, incorrect, quoted, unsupported, or mismatched SQL placeholders around `$wpdb->prepare()` usage.

Why It Matters

Broken preparation can leave dynamic SQL values unsafe or make queries behave differently than intended.

How to Fix

  • Keep placeholders in the SQL string and pass dynamic values as separate arguments.
  • Use the placeholder that matches the value type.
  • Do not quote placeholders manually, and use allowlists for identifiers or SQL fragments.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#201Calculator Builder – Create an Online Calculator39162211k+Non-prefixed global variable
#202Image CAPTCHA for Contact Form 7 and WPForms by HookAndHook (DSGVO/GDPR)39284580k+Missing nonce verification
#203WP Most Popular3950352k+Output is not escaped
#204Random Banner40591251k+Output is not escaped
#205Zippy4043319k+Output is not escaped
#206OSS Aliyun4119403k+Request data is not unslashed
#207Companion Revision Manager – Revision Control4218284k+Unsafe printing function
#208Custom Taxonomy Order42205650k+Output is not escaped
#209User Role Editor43117145700k+Output is not escaped
#210Tabby Checkout4733464k+Non-prefixed class
#211Secondary Product Image for WooCommerce4925292k+Output is not escaped
#212Multiple Post Thumbnails53251820k+Output is not escaped
#213Classic Editor and Classic Widgets63184120k+Nonce verification recommended
#214WP REST API Controller648228k+Nonce verification recommended
#215Cognito Forms751342k+wp function not compatible with requires wp
#216Simple Taxonomy Ordering7571020k+Direct Query
#217Discounts Per Payment Method on WooCommerce80881k+Missing Translators Comment