WordPress.WP.AlternativeFunctions.curl_curl_multi_getcontent
curl curl multi getcontent
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 |
|---|---|---|---|---|---|---|---|---|
| #1 | Realtyna Organic IDX plugin + WPL Real Estate | 18 | 930 | 3,636 | 2k+ | Non-prefixed global variable | ||
| #2 | WP Email Template | 19 | 344 | 345 | 2k+ | Exception output is not escaped | ||
| #3 | Razorpay for WooCommerce | 20 | 975 | 859 | 100k+ | Non-prefixed function | ||
| #4 | Razorpay Quick Payments | 21 | 399 | 63 | 2k+ | Exception output is not escaped | ||
| #5 | Professional Social Sharing Buttons, Icons & Related Posts – Shareaholic | 21 | 327 | 181 | 10k+ | Output is not escaped | ||
| #6 | WP Compress – Instant Performance & Speed Optimization | 21 | 3,367 | 3,253 | 10k+ | Non Singular String Literal Domain | ||
| #7 | WP-Lister Lite for eBay | 21 | 6,696 | 5,128 | 2k+ | Output is not escaped | ||
| #8 | SNS Count Cache | 22 | 918 | 120 | 7k+ | Non Singular String Literal Domain | ||
| #9 | Tracking and Consent Manager – WP Full Picture | 23 | 1,280 | 3,223 | 3k+ | Non-prefixed global variable | ||
| #10 | InfiniteWP Client | 23 | 2,287 | 1,811 | 200k+ | Exception output is not escaped | ||
| #11 | Link Whisper Free | 23 | 3,926 | 5,402 | 30k+ | Text Domain Mismatch | ||
| #12 | Security Plugin, Firewall & Malware Scanner with Auto Removal | 23 | 1,204 | 789 | 40k+ | Output is not escaped | ||
| #13 | W3 Total Cache | 23 | 307 | 678 | 900k+ | Non-prefixed global variable | ||
| #14 | Advanced iFrame | 24 | 887 | 1,120 | 40k+ | Non-prefixed global variable | ||
| #15 | Backuply – Backup, Restore, Migrate and Clone | 24 | 711 | 556 | 600k+ | Non-prefixed global variable | ||
| #16 | Spam protection, Honeypot, Anti-Spam by CleanTalk | 24 | 817 | 1,125 | 200k+ | Missing nonce verification | ||
| #17 | Easy Optimizer – PageSpeed, Cache & Core Web Vitals (Unused CSS, Delay JS, Lazy Load) | 24 | 194 | 514 | 500 | Direct Query | ||
| #18 | MxChat – AI Chatbot & Content Generation for WordPress | 24 | 3,455 | 1,491 | 2k+ | Text Domain Mismatch | ||
| #19 | BerqWP – All-In-One Optimization for Core Web Vitals, Cache, CDN, Images, CSS & JavaScript | 25 | 203 | 547 | 4k+ | Non-prefixed global variable | ||
| #20 | Tamara Checkout | 25 | 601 | 228 | 2k+ | Exception output is not escaped | ||
| #21 | Super Page Cache – Cloudflare Cache, Page Speed & Core Web Vitals | 25 | 143 | 357 | 60k+ | Input is not sanitized | ||
| #22 | Maven Algolia | 28 | 148 | 89 | 6k+ | Non Singular String Literal Domain | ||
| #23 | Total Upkeep – WordPress Backup Plugin plus Restore & Migrate by BoldGrid | 35 | 49 | 584 | 50k+ | Non-prefixed global variable | ||
| #24 | Converter for Media – Optimize images | Convert WebP & AVIF | 35 | 130 | 53 | 500k+ | curl curl setopt | ||
| #25 | HHG for TranslatePress | 84 | 43 | 18 | 900 | curl curl setopt |