对于使用/%postname%.html这种形式的wordpress博客网站,前面我们提到了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;
}
怎么样?还不试试看?



最新评论