WordPress自动翻译中文文章标题为英文URL链接的wp slug translate插件的完美替代方案Wenprise Pinyin Slug

众所周知,WordPress会自动把文章标题作为URL尾部的一部分,这对于英文标题来说没有什么影响,但是对于我们中文标题文章来说,就显得过于臃肿,而且不利于SEO,这时就需要对文章URL进行单独编辑。其实,Wordpress有庞大的开发者社群,陆续有大牛开发了除了很多的自动翻译中文文章标题为英文URL的插件,十分实用。大致有以下几款插件可供选择:Pinyin SlugPinyin SEOPinyin Permalinks (拼音链接)wp-slug-translateWP Slug Baidu TranslatePinyin SlugsWenprise Pinyin Slug等,其中最出名的莫过于wp slug translate,但是也已经是N多年没有更新了,自从去年微软下架在线自动翻译的免费API接口,它也彻底凉凉了。翻译成拼音URL的插件仍旧可以正常使用,但是翻译成英文的插件已经无法正常工作了。于是,后来出现了利用百度翻译API实现无插件的自动翻译别名的方法,即在当前主题的 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 );

这种代码的方法很好的实现了无插件的自动翻译中文标题为英文URL,但是也有一个非常严重的缺点,那就是任何人每次打开每篇文章都会自动调用一次百度翻译API,这极大了加重了服务器的负荷,造成了不必要的系统资源浪费,而且对百度翻译API接口频繁调用,后果可能就是百度屏蔽此类方式的调用,甚至直接关闭API调用接口,那么就得不偿失了。后来,就有国内大牛开发了另一款Wordpress插件WP Slug Baidu Translate,中文名叫“百度翻译别名”,实现调用百度翻译API的方式自动翻译文章标题为英文URL,使用非常方便。这插件本来中间好长时间没有更新,但是今年作者又进行了更新,鉴于百度在国内的稳定服务,所以还是非常推荐大家使用。

1、Pinyin Slugs

Pinyin Slugs插件(也称”SO Pinyin Slugs”)是一款可以自动把中文固定链接自动转换为拼音的wordpress插件,无需要再手动修改固定链接URL,只需要几秒钟(会受网速或服务器影响),插件就会自动翻译好,其中标题中的标点符号、空格会自动被“-”替换。插件不会影响已经发布文章的固定链接和手动编辑的固定链接,十分人性化,懒人必备。但需要注意的是如果修改文章标题,固定链接会自动更新转换,如果链接已经被搜索引擎收录,务必要手动编辑固定链接。

使用教程

1、在后台搜索SO Pinyin Slugs安装,或点击前往下载SO Pinyin Slugs插件

2、安装成功后,在后台——插件——已安装插件列表中启用插件即可,发布文章时就要自动把中文固定链接转换为拼音:

插件设置

插件提供了一个简单的设置,就是自定义拼音链接长度,防止长标题导致的拼音URL过长,在后台——设置——SO Pinyin Slugs可设置:

2、WP Slug Baidu Translate

百度别名翻译插件,当输入和编辑文章、页面标题时,通过百度翻译自动将别名翻译成英文。

(1)固定链接使用“%postname%”设置的情况下可以使用。

(2)上传文件夹“wp-slug-baidu-translate”到“/wp-content/plugins/”目录。

(3)在仪表盘插件菜单中激活该插件。

(4)在仪表盘设置中设置APPID和密匙。

更新历史:

1.1 更新日期:2019年01月31日

  • 新增编辑文章自动翻译标题别名
  • 修正写文章不自动翻译标题为别名
  • 改进百度翻译API请求HTPS

3、Wenprise Pinyin Slug(推荐)

Wenprise Pinyin Slug也称“别名转拼音|英文”,自动转换 WordPress 中的中文文章别名、分类项目别名、图片文件名称为汉语拼音或英文翻译,功能齐全,一个插件一次解决拼音和英文翻译,英文翻译跟WP Slug Baidu Translate一样,都是调用百度翻译API接口,推荐使用!

插件的主要功能

  • 转换文章别名为拼音或英文翻译,支持快速编辑时转换
  • 转换分类目录、标签或自定义分类法别名为拼音或英文翻译,支持快速编辑时转换
  • 当别名为英文,或手动设置了中文别名时,保持原样
  • 转换中文图片名为拼音或英文翻译
  • 支持自定义转换方式为全拼或第一个字母
  • 支持设置拼音之间的间隔字符
  • 支持截取转换后的拼音或英文翻译为设置的长度
  • 支持古腾堡编辑器

插件支持繁体中文吗?

经测试,插件是支持繁体中文的。

为什么需要这个插件?

当 URL 中出现中文时,中文部分会被自动转码,不知道的人看起来就是一团乱码,缺乏可读性。虽然有些浏览器可以在地址栏中显示中文,复制分享给别人的时候,URL 中文部分显示的也是被转码后的代码。

不同的操作系统环境,FTP 传输工具使用的文件名编码不同,迁移服务器时,如果文件名编码发生了变换,中文文件名很可能会变成乱码,导致文件不能访问。

什么情况下使用这个插件?

如果你的站点是给客户用的,建议使用这个插件,因为他们很可能不会意识到在 URL 和文件名中使用中文的问题。此插件可以自动帮他们处理。

如果站点是你自己用的,并且你是一个细心的人,发布内容时,会手动编辑别名和文件名,这个插件对你来说就是多余的。不需要安装。

更新历史:

1.4.0 添加百度翻译 API,如果选择不使用或者翻译失败,则使用拼音转换的方式生成别名,则使用拼音转换的方式生成别名;

1.3.1  插件列表添加设置链接;

1.3.0 支持古腾堡编辑器;

1.2.2长度限制默认设置为空,为空时,不截取转换后的别名;

1.2.1 Bugfix 1.2 增加转换别名字符长度限制;

1.1.3 添加 PHP 版本检查;

1.1.2 解决更新分类时,别名不能转拼音的 Bug;

1.1 增加设置项,可以设置是否启用分隔符、分隔符样式以及转换方式,全拼或者第一个字母;

1.0 第一个版本,支持文章别名、分类项目别名、和图片文件名的自动转换。

综合以上比较,SO Pinyin Slugs将中文标题自动转换为拼音URL;WP Slug Baidu Translate功能简单,利用百度翻译API实现中文标题自动转换为英文URL;Wenprise Pinyin Slug是三款插件中功能最强大的插件,既能将中文标题自动转换为拼音URL,也能自动转换为英文URL,集SO Pinyin Slugs和WP Slug Baidu Translate插件功能于一身。所以,一灯强烈推荐您使用Wenprise Pinyin Slug插件!!!

发表评论

电子邮件地址不会被公开。 必填项已用*标注