WordPress 自动翻译文章标题为英文

采用百度翻译的翻译API,将中文的文章标题自动翻译为英文。

经过测试,适用于WordPress内置的文章类型以及bbPress、BuddyPress、WooCommerce、DW Question Answer等插件添加的自定义文章类型。

DW Question Answer 的问题测试:

72

bbPress 的帖子测试:

73

BuddyPress 和 WooCommerce 就没有什么测试的必要了。

代码如下,添加到当前主题的 functions.php 文件即可:

function translate_chinese_post_title_to_en_for_slug( $title ) {
    /*
    transtype:
    trans
    realtime
     */
    $translation_render = 'http://fanyi.baidu.com/v2transapi?from=zh&to=en&transtype=realtime&simple_means_flag=3&query='.$title;
    $wp_http_get = wp_safe_remote_get( $translation_render );
    if ( empty( $wp_http_get->errors ) ) { 
        if ( ! empty( $wp_http_get['body'] ) ) {
            $trans_result = json_decode( $wp_http_get['body'], true );
            $trans_title = $trans_result['trans_result']['data'][0]['dst'];
            return $trans_title;
        }
    }
    return $title;} add_filter( 'sanitize_title', 'translate_chinese_post_title_to_en_for_slug', 1 );

百度翻译API的来源是 Chorme+F12:

71

不保证这个API持久有效,不过嘛,应该是妥妥的,即使没有返回,也会按照原来的标题生成文章的SLUG的。


版权声明:本文来源于互联网,如有侵权,请联系下方邮箱,一个工作日删除!