WordPress.WP.AlternativeFunctions.curl_curl_exec
curl curl exec
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 |
|---|---|---|---|---|---|---|---|---|
| #601 | Bookero.pl – system rezerwacji online | 82 | 12 | 7 | 1k+ | curl curl setopt | ||
| #602 | Japanese Proofreading Preview | 82 | 11 | 5 | 400 | Nonce verification recommended | ||
| #603 | HHG for TranslatePress | 84 | 43 | 18 | 800 | curl curl setopt | ||
| #604 | Getnet Argentina para WooCommerce | 86 | 14 | 9 | 500 | Text Domain Mismatch | ||
| #605 | WP YouTube Live | 86 | 28 | 24 | 1k+ | Non-prefixed function | ||
| #606 | ImageKit – URL based image manipulation and optimization | 87 | 47 | 42 | 1k+ | Non-prefixed global variable | ||
| #607 | Genesis Blocks | 88 | 154 | 9 | 40k+ | Offloaded Content | ||
| #608 | External files in Media Library | 90 | 16 | 68 | 400 | Direct Query | ||
| #609 | Include Mastodon Feed | 90 | 11 | 3 | 800 | Non-prefixed global variable | ||
| #610 | getLaw WP API Client | 91 | 11 | 4 | 600 | curl curl setopt | ||
| #611 | IndieAuth | 92 | 30 | 27 | 400 | Missing direct file access protection | ||
| #612 | WP Force SSL & HTTPS SSL Redirect | 92 | 18 | 21 | 90k+ | Non-prefixed global variable | ||
| #613 | Drag and Drop File Upload for Elementor Forms | 94 | 29 | 1 | 1k+ | curl curl setopt |