function generar_respuesta_gpt($mensaje) { $api_key = "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"; // $url = "https://api.openai.com/v1/chat/completions"; $data = array( "model" => "gpt-4", "messages" => array( array("role" => "system", "content" => "Eres un asistente útil."), array("role" => "user", "content" => $mensaje) ), "temperature" => 0.7 ); $options = array( "http" => array( "header" => "Content-Type: application/json\r\n" . "Authorization: Bearer " . $api_key . "\r\n", "method" => "POST", "content" => json_encode($data) ) ); $context = stream_context_create($options); $response = file_get_contents($url, false, $context); if ($response === FALSE) { echo json_encode(["error" => "Error al conectar con OpenAI"]); exit; } $decoded_response = json_decode($response, true); if (!isset($decoded_response['choices'][0]['message']['content'])) { echo json_encode(["error" => "No se pudo obtener una respuesta válida."]); exit; } header('Content-Type: application/json'); // IMPORTANTE: Forzar respuesta JSON echo json_encode(["respuesta" => $decoded_response['choices'][0]['message']['content"]]); exit; } // Crear endpoint en WordPress function chatbot_gpt_shortcode() { if (!isset($_GET['mensaje'])) { echo json_encode(["error" => "No se recibió un mensaje."]); exit; } $mensaje = sanitize_text_field($_GET['mensaje']); generar_respuesta_gpt($mensaje); } add_action('init', function() { if (isset($_GET['mensaje'])) { chatbot_gpt_shortcode(); exit; } });