教程
教程重新触发失败的翻译

重新触发失败的翻译

每当翻译失败时(由于 API 离线、使用了无效的 API 密钥、额度耗尽等原因),您可以仅针对该条目和语言重新触发翻译,避免为已成功的翻译消耗 API 额度。

您会注意到,翻译失败的条目/语言会在列表页面的 Polylang 编辑图标上以黄色背景高亮显示:

失败翻译的 Polylang 编辑图标显示黄色背景
失败翻译的 Polylang 编辑图标显示黄色背景

您还可以筛选以仅显示有失败翻译的条目(仅限文章和媒体列表页面):

筛选以仅显示有失败翻译的条目
筛选以仅显示有失败翻译的条目

筛选这些条目后,您可以轻松一次性重新运行所有条目的翻译。

筛选以仅显示有失败翻译的条目
筛选以仅显示有失败翻译的条目

最后,执行 Gato Translate (Custom) 批量操作并选择 Process failed translations only 选项,以重新运行失败的翻译:

在「Gato Translate (Custom)」设置页面中选择「Process failed translations only」选项
在「Gato Translate (Custom)」设置页面中选择「Process failed translations only」选项

如果使用 WP-CLI,可以通过 --process-failed 参数重新触发失败的翻译。

提示

识别失败的翻译

如果您希望了解翻译失败的原因,可以进行排查。

当翻译失败时,插件菜单中会显示 🔴 Error 通知徽章。

通知徽章
通知徽章

进入 Logs 菜单项,在 query-execution 条目下,您将看到错误信息。可能是一种或多种语言的翻译失败了。

在以下截图中,由于 ChatGPT 返回的翻译数量少于预期,德语翻译失败了:

德语翻译失败
德语翻译失败

在这种情况下,由于 API 端点离线,所有翻译均失败了:

所有翻译均失败
所有翻译均失败

在此情况下,由于多种问题的综合影响,意大利语和西班牙语的翻译失败了:

意大利语和西班牙语翻译失败
意大利语和西班牙语翻译失败

通过日志信息可以识别失败的语言,从而仅针对这些语言重新运行翻译,避免不必要地消耗 API 额度。

避免重新翻译文章别名

如果失败的翻译是仅针对内容的文章更新,且您已经运行了 Replace internal links 操作,则可能希望避免重新翻译文章别名,以免指向该文章的链接失效。

为此,请在自定义设置中取消勾选 Translate custom post slugs? 选项:

取消勾选「Translate custom post slugs?」选项
取消勾选「Translate custom post slugs?」选项

切换到更好的模型

如果翻译因模型不够可靠而失败,可以切换到更好的模型。

例如,以下错误信息:

The API for provider 'ChatGPT' returned an array with a lower number of translations than the number of strings to translate  

……最有可能在使用 ChatGPT-5 mini 时出现,而使用 ChatGPT-5 或更好的模型则不会出现。

重新触发翻译时,您可以切换到这些更好的模型之一。

切换到「ChatGPT-5.1 (Thinking)」模型
切换到「ChatGPT-5.1 (Thinking)」模型