WordPress.DB.PreparedSQL.InterpolatedNotPrepared

Interpolated SQL is not prepared

Variables are interpolated into a SQL string before the query is prepared.

critical weight

Why It Shows Up

The scan found dynamic values placed directly inside SQL, often through string interpolation, before `$wpdb->prepare()` can safely bind them.

Why It Matters

Preparing a query after unsafe interpolation does not reliably protect the dynamic value.

How to Fix

  • Replace interpolated variables with placeholders.
  • Pass each dynamic value as a separate `$wpdb->prepare()` argument.
  • Use allowlists for SQL identifiers and directions that cannot be represented as normal values.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#1201Disclaimer Popup37313531k+Text Domain Mismatch
#1202Donation Block For PayPal3723106600Input is not validated
#1203Easy Testimonial Slider and Form3714144700Request data is not unslashed
#1204Excerpt Editor37170142500Unsafe printing function
#1205Exploit Scanner37251308k+Non-prefixed global variable
#1206GHL Gravity Bridge – Send Gravity Forms leads to GHL CRM3759269600Direct Query
#1207GoPay for WooCommerce37661031k+Non-prefixed global variable
#1208Gutena Forms – Contact Form, Survey Form, Feedback Form, Booking Form, and Custom Form Builder378311320k+SQL query is not prepared
#1209HandL UTM Grabber / Tracker373114610k+Missing nonce verification
#1210Language Switcher37811051k+Missing Translators Comment
#1211LearnPress – Course Review37674320k+Output is not escaped
#1212List category posts371611780k+Output is not escaped
#1213Media Sweep – WordPress Media Cleaner37561371k+Interpolated SQL is not prepared
#1214CrawlWP SEO – Instant Search Engine Indexing & SEO Performance Monitor37479040k+Dynamic hook name
#1215My Post Order37100114400Output is not escaped
#1216NextGEN Scroll Gallery3733281k+Output is not escaped
#1217Ninja Van (MY)37212581k+Non-prefixed global variable
#1218Sendle Shipping Plugin379164800wp function not compatible with requires wp
#1219Oliver POS – WooCommerce POS for iPhone, iPad & Android3715242800Interpolated SQL is not prepared
#1220WP All Export – Order Export for WooCommerce371091114k+Text Domain Mismatch
#1221PayU CommercePro Plugin372187k+error log error log
#1222Phoenix Media Rename3718010450k+Output is not escaped
#1223PNG to JPG3713017310k+Interpolated SQL is not prepared
#1224Poptics – Popup Builder, Email Opt-ins, Exit-Intent & WooCommerce Popups Sales3759642k+SQL query is not prepared
#1225Quentn WP374251500Nonce verification recommended
#1226Ryviu – Review Importer & Product Reviews3772951k+Output is not escaped
#1227Lightbox slider – Responsive Lightbox Gallery37361733k+Non-prefixed global variable
#1228Tracking Script Manager3782572k+Non Singular String Literal Domain
#1229UsersWP – Social Login37299912k+Text Domain Mismatch
#1230ValidateCertify Free37123971k+Text Domain Mismatch
#1231Conditional Discounts for WooCommerce – A simple yet complete woocommerce dynamic pricing plugin3799339k+Text Domain Mismatch
#1232Wordable – Export Google Docs to WordPress3747632k+Output is not escaped
#1233Fix Media Library3753711k+Output is not escaped
#1234WP Flow Plus37175146800Output is not escaped
#1235Persistent Login373381086k+Unsafe printing function
#1236Special Text Boxes3738422k+Direct Query
#1237TopNewsWp – Display Tikcer News, RSS Feed Widget and Many More3787859800Output is not escaped
#1238XT Visitor Counter37177527k+Output is not escaped
#1239Zoho Marketing Automation37241941k+Non-prefixed global variable
#1240Action Scheduler389213420k+Exception output is not escaped
#1241Advanced 301 and 302 Redirect38813391k+Non-prefixed global variable
#1242Advanced Media Offloader3857935k+error log error log
#1243Alphabetic Pagination38144117500Unsafe printing function
#1244Automatic Post Tagger385923072k+Output is not escaped
#1245Bot Block – Stop Spam Referrals in Google Analytics382842600Output is not escaped
#1246BuddyPress Follow38114671k+Text Domain Mismatch
#1247Cache Warmer38322191k+Interpolated SQL is not prepared
#1248CC Child Pages38631529k+Non-prefixed global variable
#1249Certificate Verification3833401k+Output is not escaped
#1250Database for Contact Form 738341287k+Missing nonce verification