WordPress.WP.AlternativeFunctions.curl_curl_setopt
curl curl setopt
The plugin uses raw cURL functions instead of the WordPress HTTP API.
Why It Shows Up
Plugin Check found `curl_*` calls in plugin code.
Why It Matters
The WordPress HTTP API handles transports, proxies, SSL behavior, filters, and host compatibility more consistently than raw cURL.
How to Fix
- Replace simple cURL requests with `wp_remote_get()` or `wp_remote_post()`.
- Handle `WP_Error`, status codes, timeouts, and response body parsing explicitly.
- If a bundled library uses cURL internally, keep it isolated and avoid passing unchecked user input into requests.
Affected Plugins
| Rank | Plugin | Score | Errors | Warnings | Installs | Updated | Top Issue |
|---|---|---|---|---|---|---|---|
| #301 | WP Twitter Auto Publish | 33 | 442 | 171 | 4k+ | Output Not Escaped | |
| #302 | Website Monetization by MageNet | 33 | 60 | 87 | 20k+ | Output Not Escaped | |
| #303 | CM Search And Replace – Optimize content edits with a powerful search and replace tool | 34 | 286 | 111 | 2k+ | Output Not Escaped | |
| #304 | Datafeedr API | 34 | 307 | 48 | 6k+ | Output Not Escaped | |
| #305 | Import XML and RSS Feeds | 34 | 260 | 85 | 2k+ | Unsafe Printing Function | |
| #306 | MailChimp Forms by MailMunch | 34 | 116 | 94 | 10k+ | Output Not Escaped | |
| #307 | Meta pixel for WordPress | 34 | 91 | 38 | 400k+ | Exception Not Escaped | |
| #308 | المنتور فارسی | 34 | 52 | 50 | 40k+ | curl curl setopt | |
| #309 | Tidio – Live Chat & AI Chatbots | 34 | 52 | 19 | 80k+ | curl curl setopt | |
| #310 | MailerLite – WooCommerce integration | 34 | 64 | 36 | 30k+ | Output Not Escaped | |
| #311 | Kybernaut IČO DIČ | 34 | 82 | 98 | 3k+ | Missing | |
| #312 | Insert Headers And Footers | 34 | 83 | 113 | 300k+ | Non Prefixed Variable Found | |
| #313 | WP LinkedIn Auto Publish | 34 | 165 | 56 | 8k+ | Output Not Escaped | |
| #314 | WP Twitter Feeds | 34 | 202 | 82 | 2k+ | Output Not Escaped | |
| #315 | Connect WooCommerce to ActiveCampaign by EqualServing | 35 | 135 | 89 | 1k+ | Text Domain Mismatch | |
| #316 | WP2Social Auto Publish | 35 | 643 | 215 | 9k+ | Unsafe Printing Function | |
| #317 | LiteSpeed Cache | 35 | 286 | 893 | 7m+ | Non Prefixed Variable Found | |
| #318 | OT Flatsome Vertical Menu | 35 | 126 | 26 | 10k+ | Text Domain Mismatch | |
| #319 | Paytm Payment Gateway | 35 | 92 | 104 | 3k+ | Missing Arg Domain | |
| #320 | Recurio – Ultimate Subscription for WooCommerce | 35 | 41 | 300 | 1k+ | Direct Query | |
| #321 | Sprout Invoices – Client Invoicing & Estimates | 35 | 40 | 1,798 | 1k+ | Non Prefixed Hookname Found | |
| #322 | Converter for Media – Optimize images | Convert WebP & AVIF | 35 | 133 | 53 | 500k+ | curl curl setopt | |
| #323 | Pixel Manager for WooCommerce – Conversion Tracking, Google Ads, GA4, TikTok, Dynamic Remarketing | 35 | 49 | 229 | 50k+ | Non Prefixed Hookname Found | |
| #324 | WPElemento Importer | 35 | 126 | 123 | 9k+ | Text Domain Mismatch | |
| #325 | Optimize Social Share | 36 | 203 | 61 | 3k+ | Unsafe Printing Function | |
| #326 | Legal Text Connector of the IT-Recht Kanzlei | 36 | 45 | 46 | 10k+ | Exception Not Escaped | |
| #327 | Simple Banner – Easily add multiple Banners/Bars/Notifications/Announcements to the top or bottom of your website | 36 | 216 | 50 | 50k+ | Output Not Escaped | |
| #328 | SuperFaktura WooCommerce | 36 | 60 | 115 | 2k+ | Recommended | |
| #329 | Async JavaScript | 37 | 357 | 79 | 70k+ | Unsafe Printing Function | |
| #330 | Banhammer – Monitor Site Traffic, Block Bad Users and Bots | 37 | 104 | 174 | 1k+ | Output Not Escaped | |
| #331 | Duo Two-Factor Authentication | 37 | 44 | 61 | 3k+ | Missing | |
| #332 | Gmail SMTP | 37 | 84 | 73 | 10k+ | Unsafe Printing Function | |
| #333 | Images to WebP | 37 | 39 | 50 | 9k+ | curl curl setopt | |
| #334 | JS Help Desk – AI-Powered Support & Ticketing System | 37 | 12 | 405 | 8k+ | Missing | |
| #335 | Piraeus Bank WooCommerce Payment Gateway | 37 | 146 | 104 | 3k+ | Non Singular String Literal Domain | |
| #336 | Viva Payments – Viva Wallet WooCommerce Payment Gateway | 37 | 33 | 33 | 1k+ | curl curl setopt | |
| #337 | Hustle – Email Marketing, Lead Generation, Optins, Popups | 37 | 4,874 | 5,942 | 90k+ | Non Prefixed Variable Found | |
| #338 | WP-Cron Control | 37 | 54 | 22 | 1k+ | Output Not Escaped | |
| #339 | Zakeke Interactive Product Designer for WooCommerce | 37 | 186 | 178 | 2k+ | Recommended | |
| #340 | SoftTech-IT bKash, Rocket, Nagad | 38 | 164 | 81 | 6k+ | Text Domain Mismatch | |
| #341 | Country Code Selector | 38 | 91 | 20 | 1k+ | Unsafe Printing Function | |
| #342 | imoje | 38 | 62 | 160 | 2k+ | Recommended | |
| #343 | Leaflet Map | 39 | 59 | 32 | 30k+ | Output Not Escaped | |
| #344 | Virusdie | One-click website security | 39 | 149 | 66 | 2k+ | Output Not Escaped | |
| #345 | WP All Import – Job Listing Import for WP Job Manager | 40 | 35 | 27 | 2k+ | Output Not Escaped | |
| #346 | Heroic Favicon Generator | 41 | 104 | 7 | 6k+ | Output Not Escaped | |
| #347 | Gateway zibal for Woocommerce | 44 | 70 | 24 | 5k+ | Text Domain Mismatch | |
| #348 | Export Import Menus | 46 | 23 | 28 | 10k+ | Missing | |
| #349 | Gateway AqayePardakht for Woocommerce | 47 | 72 | 23 | 4k+ | Text Domain Mismatch | |
| #350 | Instamojo for WooCommerce | 48 | 72 | 44 | 5k+ | Text Domain Mismatch |