人工智能正在改变内容创作和用户交互的方式。将 ChatGPT 或其他大语言模型集成到 WordPress 中,可以实现文章自动摘要、SEO 标题生成、智能客服、内容翻译、甚至自动配图描述等功能。OpenAI 提供了完善的 API 接口,WordPress 的 HTTP API 可以轻松调用这些接口,把 AI 能力融入到网站的工作流中。

OpenAI API 的基础调用 是集成的第一步。你需要先在 OpenAI 官网注册账号并获取 API Key。在 WordPress 中,使用 wp_remote_post 函数发送请求到 OpenAI 的聊天补全接口:

function call_chatgpt_api($prompt, $model = 'gpt-3.5-turbo', $max_tokens = 500) {
    $api_key = '你的 OpenAI API Key';
    $response = wp_remote_post('https://api.openai.com/v1/chat/completions', array(
        'headers' => array(
            'Authorization' => 'Bearer ' . $api_key,
            'Content-Type' => 'application/json',
        ),
        'body' => json_encode(array(
            'model' => $model,
            'messages' => array(
                array('role' => 'system', 'content' => '你是一个专业的 WordPress 内容助手。'),
                array('role' => 'user', 'content' => $prompt),
            ),
            'max_tokens' => $max_tokens,
            'temperature' => 0.7,
        )),
        'timeout' => 60,
    ));
    
    if (is_wp_error($response)) {
        return 'API 请求失败:' . $response->get_error_message();
    }
    
    $body = wp_remote_retrieve_body($response);
    $data = json_decode($body, true);
    return $data['choices'][0]['message']['content'] ?? '无法获取响应';
}

自动生成文章摘要 是一个典型应用。在文章发布时,如果用户没有填写摘要,可以调用 AI 自动生成:

add_action('save_post', 'auto_generate_excerpt_with_ai', 10, 3);
function auto_generate_excerpt_with_ai($post_id, $post, $update) {
    if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return;
    if ($post->post_type !== 'post') return;
    if (!empty($post->post_excerpt)) return; // 已有摘要则不生成
    
    $content = wp_strip_all_tags($post->post_content);
    if (strlen($content) < 100) return;
    
    $prompt = "请为以下文章生成一段 150 字左右的中文摘要,要求简洁明了,突出核心观点:\n\n" . substr($content, 0, 2000);
    $excerpt = call_chatgpt_api($prompt);
    
    if (!empty($excerpt) && strpos($excerpt, 'API 请求失败') === false) {
        wp_update_post(array(
            'ID' => $post_id,
            'post_excerpt' => sanitize_text_field($excerpt),
        ));
    }
}

AI 生成 SEO 标题和描述 是另一个高价值应用。在文章保存时,让 AI 根据内容生成多个候选标题和 Meta 描述,供编辑选择:

function generate_seo_suggestions($content) {
    $prompt = "根据以下文章内容,生成 5 个吸引眼球的 SEO 标题(60 字以内)和 3 个 Meta 描述(160 字以内),以 JSON 格式返回:\n\n" . substr($content, 0, 3000);
    $result = call_chatgpt_api($prompt, 'gpt-3.5-turbo', 800);
    return json_decode($result, true);
}

智能客服机器人 是 AI 与 WordPress 集成的另一个热门方向。你可以创建一个 REST API 端点,接收用户的问题,调用 ChatGPT 回答,然后返回给前端。为了让 AI 回答更准确,可以给它提供网站的背景知识,比如产品信息、常见问题、帮助文档等:

add_action('rest_api_init', 'register_chatbot_endpoint');
function register_chatbot_endpoint() {
    register_rest_route('ai/v1', '/chat', array(
        'methods' => 'POST',
        'callback' => 'handle_chatbot_request',
        'permission_callback' => '__return_true',
    ));
}

function handle_chatbot_request($request) {
    $question = sanitize_text_field($request->get_param('question'));
    if (empty($question)) {
        return new WP_REST_Response(array('error' => '请输入问题'), 400);
    }
    
    // 加载网站知识库
    $knowledge = get_website_knowledge_base();
    $prompt = "你是一个网站客服助手。根据以下知识库回答用户的问题。如果知识库中没有相关信息,请礼貌地告知用户并建议联系人工客服。\n\n知识库:\n" . $knowledge . "\n\n用户问题:" . $question;
    
    $answer = call_chatgpt_api($prompt, 'gpt-3.5-turbo', 300);
    return new WP_REST_Response(array('answer' => $answer), 200);
}

AI 自动生成特色图片的 Alt 文本 也是一个小但实用的功能。上传图片时,让 AI 分析图片内容(需要配合视觉模型)或根据上下文生成 Alt 描述,提升无障碍访问体验。

成本控制 是 AI 集成中需要注意的问题。OpenAI API 按 Token 计费,建议:

  • 使用 gpt-3.5-turbo 而不是 gpt-4(成本相差 10 倍以上)

  • 限制 max_tokens 避免过长的输出

  • 在用户端添加频率限制,防止滥用

  • 考虑使用缓存,相同输入不重复调用 API

  • 使用 Redis 缓存 AI 生成的结果,相同文章不重复生成

本地化部署替代方案 如果不想依赖 OpenAI,也可以考虑使用本地部署的开源模型,比如通过 Ollama 运行 Llama 3 或 Qwen 模型,然后用 WordPress 调用本地 API 端点。本地部署虽然需要一定的硬件资源,但没有 API 费用,数据也完全在本地,隐私性更好。

AI 与 WordPress 的集成正在快速发展。从内容创作到用户服务,AI 可以大幅提升效率。从一个小功能开始尝试,逐步探索更多应用场景,是引入 AI 能力的最佳路径。