WordPress.WP.AlternativeFunctions.curl_curl_init
curl curl init
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 | Added | Updated | Top Issue |
|---|---|---|---|---|---|---|---|---|
| #501 | WP Dynamic Keywords Injector | 34 | 44 | 205 | 1k+ | Nonce verification recommended | ||
| #502 | Insert Headers And Footers | 34 | 83 | 113 | 300k+ | Non-prefixed global variable | ||
| #503 | WP LinkedIn Auto Publish | 34 | 165 | 56 | 8k+ | Output is not escaped | ||
| #504 | WP Notes Widget | 34 | 217 | 36 | 700 | Output is not escaped | ||
| #505 | WP Twitter Feeds | 34 | 202 | 82 | 2k+ | Output is not escaped | ||
| #506 | Ad Widget for WordPress | 35 | 68 | 14 | 2k+ | Output is not escaped | ||
| #507 | Antideo Email Validator | 35 | 38 | 98 | 800 | Missing nonce verification | ||
| #508 | Connect WooCommerce to ActiveCampaign by EqualServing | 35 | 135 | 89 | 1k+ | Text Domain Mismatch | ||
| #509 | WP2Social Auto Publish | 35 | 643 | 215 | 9k+ | Unsafe printing function | ||
| #510 | Movylo Marketing Automation | 35 | 38 | 88 | 700 | error log print r | ||
| #511 | Meta pixel for WordPress | 35 | 90 | 40 | 400k+ | Exception output is not escaped | ||
| #512 | OT Flatsome Vertical Menu | 35 | 126 | 26 | 10k+ | Text Domain Mismatch | ||
| #513 | Paytm Payment Gateway | 35 | 92 | 104 | 3k+ | Missing Arg Domain | ||
| #514 | Accept Cryptocurrencies with Plisio | 35 | 37 | 47 | 1k+ | Text Domain Mismatch | ||
| #515 | Poptin – Email Marketing Automation, Newsletter & Exit Pop Ups, Email Popups | 35 | 168 | 29 | 20k+ | Output is not escaped | ||
| #516 | Publitio | 35 | 47 | 26 | 400 | curl curl setopt | ||
| #517 | SHOPVOTE | 35 | 64 | 58 | 400 | curl curl setopt | ||
| #518 | Sprout Invoices – Client Invoicing & Estimates | 35 | 40 | 1,798 | 1k+ | Non-prefixed hook name | ||
| #519 | WC Moneris Payment Gateway | 35 | 104 | 28 | 900 | Text Domain Mismatch | ||
| #520 | Converter for Media – Optimize images | Convert WebP & AVIF | 35 | 133 | 53 | 500k+ | curl curl setopt | ||
| #521 | Backend Payments for WooCommerce | 35 | 63 | 42 | 900 | Exception output is not escaped | ||
| #522 | Pixel Manager for WooCommerce – Conversion Tracking, Google Ads, GA4, TikTok, Dynamic Remarketing | 35 | 49 | 230 | 50k+ | Non-prefixed hook name | ||
| #523 | Kybernaut IČO DIČ | 35 | 79 | 68 | 3k+ | Missing nonce verification | ||
| #524 | WP Cassify | 35 | 106 | 143 | 800 | Missing nonce verification | ||
| #525 | WP All Import – Property Import for WP Residence | 35 | 41 | 32 | 700 | Output is not escaped | ||
| #526 | WPElemento Importer | 35 | 126 | 123 | 9k+ | Text Domain Mismatch | ||
| #527 | Age Verification for your checkout page. Verify your customer's identity | 36 | 155 | 238 | 500 | Output is not escaped | ||
| #528 | Custom Database Applications by Caspio | 36 | 32 | 63 | 400 | Input is not sanitized | ||
| #529 | Endora | 36 | 53 | 72 | 1k+ | Output is not escaped | ||
| #530 | Optimize Social Share | 36 | 203 | 61 | 3k+ | Unsafe printing function | ||
| #531 | Lara's Google Analytics (GA4) | 36 | 303 | 57 | 9k+ | Unsafe printing function | ||
| #532 | Legal Text Connector of the IT-Recht Kanzlei | 36 | 45 | 46 | 10k+ | Exception output is not escaped | ||
| #533 | Simple Banner – Easily add multiple Banners/Bars/Notifications/Announcements to the top or bottom of your website | 36 | 216 | 50 | 50k+ | Output is not escaped | ||
| #534 | Stripe Tax – Sales tax automation for WooCommerce | 36 | 97 | 61 | 30k+ | Exception output is not escaped | ||
| #535 | Wanderlust OCA para WooCommerce | 36 | 157 | 55 | 500 | Text Domain Mismatch | ||
| #536 | Widget Indicadores Económicos (Chile) | 36 | 53 | 20 | 500 | Output is not escaped | ||
| #537 | Agreeable | 37 | 40 | 67 | 800 | Unsafe printing function | ||
| #538 | Async JavaScript | 37 | 357 | 79 | 70k+ | Unsafe printing function | ||
| #539 | Banhammer – Monitor Site Traffic, Block Bad Users and Bots | 37 | 104 | 174 | 1k+ | Output is not escaped | ||
| #540 | CryptAPI Payment Gateway for WooCommerce | 37 | 187 | 29 | 400 | Text Domain Mismatch | ||
| #541 | Duo Two-Factor Authentication | 37 | 44 | 61 | 3k+ | Missing nonce verification | ||
| #542 | Gmail SMTP | 37 | 84 | 73 | 10k+ | Unsafe printing function | ||
| #543 | Images to WebP | 37 | 39 | 50 | 9k+ | curl curl setopt | ||
| #544 | JS Help Desk – AI-Powered Support & Ticketing System | 37 | 17 | 406 | 7k+ | Missing nonce verification | ||
| #545 | POEditor | 37 | 78 | 140 | 500 | Output is not escaped | ||
| #546 | Piraeus Bank WooCommerce Payment Gateway | 37 | 146 | 104 | 3k+ | Non Singular String Literal Domain | ||
| #547 | Viva Payments – Viva Wallet WooCommerce Payment Gateway | 37 | 33 | 33 | 1k+ | curl curl setopt | ||
| #548 | Hustle – Email Marketing, Lead Generation, Optins, Popups | 37 | 4,874 | 5,942 | 90k+ | Non-prefixed global variable | ||
| #549 | WP-Cron Control | 37 | 54 | 22 | 1k+ | Output is not escaped | ||
| #550 | FundEngine – Donation and Crowdfunding Platform | 37 | 90 | 9 | 1k+ | Exception output is not escaped |