test8
function custom_tool_run() {
check_ajax_referer(‚custom_tool_run_nonce‘, ’nonce‘);
$input = isset($_POST[‚input‘]) ? sanitize_text_field($_POST[‚input‘]) : “;
if (empty($input)) {
wp_send_json_error([‚error‘ => ‚Invalid input‘]);
wp_die();
}
$basePrompt = setPrompt($input);
$titlesModel = createTitlesModel([‚title1‘, ‚title2‘]);
$jsonModel = modelToJson($titlesModel);
$optimizedPrompt = $basePrompt . „. Please provide a response in a structured JSON format that matches the following model: “ . $jsonModel;
$geminiResponse = generate_response_with_gemini($optimizedPrompt);
if (!$geminiResponse) {
wp_send_json_error([‚error‘ => ‚Invalid API response‘]);
wp_die();
}
$jsonObjects = extractJson($geminiResponse);
if (!$jsonObjects) {
wp_send_json_error([‚error‘ => ‚Failed to parse JSON from API response‘]);
wp_die();
}
wp_send_json_success($jsonObjects);
wp_die();
}
add_action(‚wp_ajax_custom_tool_run‘, ‚custom_tool_run‘);
add_action(‚wp_ajax_nopriv_custom_tool_run‘, ‚custom_tool_run‘);