// AJAX 处理函数 function query_coursehero_ajax_handler() { if (isset($_POST['url'])) { $url = sanitize_text_field($_POST['url']); // 构建 Python 脚本路径 $python_script_path = get_template_directory() . '/scripts/coursehero_query.py'; // 使用 shell_exec 调用 Python 脚本并传递 URL 参数 $output = shell_exec("python3 " . escapeshellarg($python_script_path) . " " . escapeshellarg($url)); if ($output) { // 清理返回路径,确保路径指向 PDF 文件 $pdf_path = trim($output); $pdf_url = content_url('themes/url-input-theme/scripts/query_result.pdf'); // 返回 PDF 文件的 URL wp_send_json_success(['pdf_url' => $pdf_url]); } else { wp_send_json_error(['message' => '无法从 Course Hero 获取数据']); } } else { wp_send_json_error(['message' => '未提供网址']); } } add_action('wp_ajax_query_coursehero', 'query_coursehero_ajax_handler'); add_action('wp_ajax_nopriv_query_coursehero', 'query_coursehero_ajax_handler');