Hay miles de razones que pueden permitir que una verificación SSL falle. A partir de demasiadas redirecciones a .ini
files / setups o simplemente faltan certificados o subdominios. En cualquier caso, deberá buscar el motivo para eso y solucionarlo . No hay no a su alrededor.
Pero para temporalmente solucionar el problema (digamos que necesita desarrollar más su código y corregir el error de SSL más adelante), puede usar un filtro:
add_filter( 'https_ssl_verify', '__return_false' );
A medida que ejecuta esto durante una solicitud remota, debe ajustarlo en una devolución de llamada adjunta a un filtro que se activa durante dicha solicitud HTTP. Asegúrese de verificar si realmente está eliminando la verificación para el caso correcto , y asegúrese de ejecutar esto solo una vez para no dejar de tener otras solicitudes.
add_filter( 'http_request_args', function( $params, $url )
{
// find out if this is the request you are targeting and if not: abort
if ( 'foo' !== $params['foo'] )
return $params;
add_filter( 'https_ssl_verify', '__return_false' );
return $params;
}, 10, 2 );
Si se trata de un complemento distribuido públicamente, es posible que desee adjuntarlo a una opción simple que el usuario puede activar o desactivar. También puede probar la solicitud verificada primero y, en caso contrario, (y si el usuario ha optado por una solicitud sin firmar), cambie a una solicitud potencialmente insegura.
Regla de oro:
No nunca realice una solicitud no segura hasta que su usuario haya aceptado
hazlo y conoce los riesgos.