众所周知,WordPress会自动把文章标题作为URL尾部的一部分,这对于英文标题来说没有什么影响,但是对于我们中文标题文章来说,就显得过于臃肿,而且不利于SEO,这时就需要对文章URL进行单独编辑。其实,Wordpress有庞大的开发者社群,陆续有大牛开发了除了很多的自动翻译中文文章标题为英文URL的插件,十分实用。大致有以下几款插件可供选择:Pinyin Slug、Pinyin SEO、Pinyin Permalinks (拼音链接)、wp-slug-translate、WP Slug Baidu Translate、Pinyin Slugs、Wenprise 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插件!!!