对于使用/%%.html这种形式的博客网站,前面我们提到了文章自动拼音别名的插件,但是插件多了严重影响wordpress性能,特别是现在wordpress系统臃肿的今天,更是严重,少一个插件少一些负担!而且拼音插件生成的又长可读性也低,这时我们就想到了其他的方法!

wordpress代码自动生成文章英文别名详细教程

这不,有网友麦田里的一根葱分享了两段代码,通过百度翻译和微软翻译文章,是不是很棒?

就是这么干脆面!!!话不多说,直接上代码:

// 英文别名 - 百度版
function bymt_slug_auto_translate( $title ) {
    $wp_http_get = wp_safe_remote_get( 'http://fanyi.baidu.com/v2transapi?from=zh&to=en&transtype=trans&query=' . $title );
    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;
}
add_filter( 'sanitize_title', 'bymt_slug_auto_translate', 1 );

2333,那些装插件的岂不是要笑cry~

更新啦!!!

既然有了百度版,那么就有微软版,继续上代码:

// 自动生成英文别名 - 微软版
function bymt_slug_auto_translate( $title ) {
    $wp_http_get = wp_safe_remote_get( 'http://api.microsofttranslator.com/v2/ajax.svc/TranslateArray2?appId=%22TKT68kjRgkUbVtIKst6Vo0Hxnb6g2f0K3tUMyn1gZ7nc*%22&from="zh"&to="en"&options={}&texts=["' . $title . '"]' );
    if ( empty( $wp_http_get->errors ) ) {
        if ( ! empty( $wp_http_get['body'] ) ) {
            preg_match('/"TranslatedText":"([^"]+)/i', $wp_http_get['body'], $trans_result);
            $trans_title = $trans_result[1];
            return $trans_title;
        }
    }
    return;
}

怎么样?还不试试看?