WordPress.DB.PreparedSQL.NotPrepared

SQL query is not prepared

A database query includes dynamic data without using `$wpdb->prepare()` or an equivalent safe pattern.

critical weight

Why It Shows Up

The scan found a SQL string passed to `$wpdb` where variables appear to be interpolated or concatenated directly.

Why It Matters

Unprepared SQL can allow SQL injection when user-controlled values reach the query.

How to Fix

  • Move dynamic values into placeholders such as `%s`, `%d`, `%f`, or `%i` where supported.
  • Pass the values as separate arguments to `$wpdb->prepare()`.
  • For table names, column names, and sort directions, use strict allowlists instead of raw user input.

Affected Plugins

RankPluginScoreErrorsWarningsInstallsAddedUpdatedTop Issue
#1751YayMail – WooCommerce Email Customizer5116378850k+Non-prefixed global variable
#1752Disable Comments – Remove Comments & Stop Spam [Multi-Site Support]5217571m+Non-prefixed global variable
#1753Post Notification by Email5236131k+Output is not escaped
#1754SKU Generator for WooCommerce5229122k+Output is not escaped
#1755Stealth Publish52722900Missing nonce verification
#1756Maps Plugin using Google Maps for WordPress – WP Google Map5364310k+Missing nonce verification
#1757LearnPress – bbPress Integration5319142k+Output is not escaped
#1758Customizable Post Listings544213700Deprecated parameter: the_author parameter 1
#1759Cyr-To-Lat541648300k+Dynamic hook name
#1760Expanding Archives543793k+Output is not escaped
#1761Extended User Search In WP-Admin541417900SQL query is not prepared
#1762Helpie FAQ — Accordion, Docs & Knowledge Base5496899k+Nonce verification recommended
#1763MOBILOOK — Mobile View & Mobile‑Friendly Test548201k+Missing nonce verification
#1764AI Agent by SiteGround542861m+Exception output is not escaped
#1765Easy Quotes551131700Direct Query
#1766Enhanced Category Pages5523252k+Direct Query
#1767Go Live Update Urls55114990k+Non-prefixed hook name
#1768Fast Page & Post Duplicator55122550k+Direct Query
#1769AI Copilot – ChatGPT Chatbot & AI Engine for Post Automation5665201k+Text Domain Mismatch
#1770Replace Protected Password56618600Input is not sanitized
#1771Internal Link Juicer: SEO Auto Linker for WordPress57126190k+Database parameter is not escaped
#1772iZooto – Web Push Notifications5726251k+wp function not compatible with requires wp
#1773Longer Permalinks5727218k+Missing Arg Domain
#1774Ultimate Member – Terms & Conditions571994k+Output is not escaped
#1775Filter Orders by Product for WooCommerce579214k+Nonce verification recommended
#1776BCM Duplicate Menu588114k+Nonce verification recommended
#1777HAL5810624500Text Domain Mismatch
#1778Age Gator59915400Direct Query
#1779Custom API for WP59173161k+wp function not compatible with requires wp
#1780Live Copy Paste for Elementor – Cross Domain Copy Paste & Page Duplicator598146k+Missing direct file access protection
#1781Leadpages6045310k+Direct Query
#1782WPB Popup for Contact Form 7 – Showing Contact Form 7 Popup on Button Click602296k+Output is not escaped
#1783WPSSO Schema Product Metadata for WooCommerce603323500Missing Translators Comment
#1784PW WooCommerce Copy Coupon6115171k+Text Domain Mismatch
#1785AAM Protected Media Files621310600Direct Query
#1786Add Meta Tag Keywords626151k+Missing nonce verification
#1787Contact Form 7 – Blacklist Unwanted Email621611400Missing direct file access protection
#1788FluentPlayer – Video Player With Forms & Lead Capture6224421k+Missing Translators Comment
#1789Import entries for Gravity Forms62626600Input is not validated
#1790Woo Product Remover6223141k+SQL query is not prepared
#1791WP Category Sort621522500Text Domain Mismatch
#1792Automatic Featured Images from Videos6313137k+Missing direct file access protection
#1793IndexNow Plugin631491100k+error log error log
#1794MooWoodle – WordPress Moodle LMS Integration, Sell Moodle Courses via WooCommerce631045800No Caching
#1795Hide Posts6386420k+Direct Query
#1796Collapsing Archives643693k+date date
#1797JTL-Connector for WooCommerce6471661k+Direct Query
#1798Email Tracker65254800SQL query is not prepared
#1799Bitrix24652810600Text Domain Mismatch
#1800SQL Buddy – Database Management Made Easy6512165k+SQL query is not prepared