WordPress.DB.PreparedSQLPlaceholders.UnescapedLiteral

Unescaped Literal

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

RankPluginScoreErrorsWarningsInstallsUpdatedTop Issue
#1SendPress Newsletters192,2931,4222k+Output is not escaped
#2LearnPress – WordPress LMS Plugin for Create and Sell Online Courses222,3613,38470k+Non-prefixed global variable
#3Fix Alt Text245443461k+Non Singular String Literal Domain
#4PublishPress Revisions: Duplicate Posts, Submit, Approve and Schedule Content Changes2441457310k+Missing Translators Comment
#5Appointment Hour Booking – Booking Calendar252611,25410k+Non-prefixed global variable
#6Product Labels For Woocommerce (Sale Badges)36904810k+Output is not escaped