纯代码实现WordPress文章标题自动拼音别名

虫子君
虫子君
虫子君
652
文章
278
评论
2020年2月18日10:02:07 评论 451 2560字阅读8分32秒

WordPress这个程序在国内依照目前的趋势来看,是与日俱增的一种状态,主要是因为WordPress这个程序功能不断的完善下,也在不停的增加更多的新的功能和新的钩子。这样一来,WordPress就变得更加的灵活,几乎可以说每个人都可以不用学习就能够轻松拥有一个属于自己的博客或者是新闻平台。因为WordPress在学着变得更加的简单、好用。同时经过这些年的发展以后,WordPress不再是“外国程序”而给天朝用户造成水土不服的错觉。

因为,WordPress这个程序在不断优化的同时也似乎在某一天突然意识到,其实在遥远的东方“中国”也拥有很多用户,所以WordPress的技术团队,似乎对WordPress这个程序的里三层外三层都改了一次,至少在中国运行起来不再容易受到限制。比如字体方面,现在WordPress的字体已经沿用本地字体,默认还是微软雅黑。或者是其他系统默认的字体。换句话说,WordPress已经开始使用系统字体,或者远程下载字体。

速度方面有优化的同时,功能方面也是越来越完善,虽然被很多国内用户诟病说体积臃肿,所有的功能都是堆叠上去,但似乎WordPress的效率运行并没有我们想象中的低,因为目前国内一个1g1h的服务器只要一百多块钱,不管是学生党还是作为一个长期自媒体工作的老鸟,都可以享受这个系统带来的便捷性。

国内使用WordPress的用户越来越多,除了是因为WordPress的易用性,还有就是WordPress强有力的应用商店的强大扩展性了。通过插件,可以令WordPress变成您想要的任何一个网站的后台。似乎可以实现你所能够想象中的任何一个功能。

纯代码实现WordPress文章标题自动拼音别名

比如当我们写完博客以后,默认我们国内的用户使用的伪静态为“HTTPS://chonzi.com/%post_id%.html”这样我们所有的文章名称都是以数字来命名的,另外一些强迫症的朋友一直都想要文章的id实现连续,可以说在WordPress这个环境下,文章ID无法真正完全连续。所以退而求其次,如果将文章的连接ID变成拼音的是不是会更好一点。

对于实现WordPress文章标题自动拼音别名的方法蛮多的,插件类的这里有一大堆,当然我一个都没有用过,因为虫子君是一个喜欢简短url的用户,所以并没有使用拼音别名的方法,如果您喜欢不妨下载我说的这几个插件。

一、wordpress标题自动生成英文别名的插件:

1、PinYin Slug 插件

据说是月光博客开发的WordPress中文标题转换拼音插件。这个插件启用后,发布文章的“文章缩略名(Post Slug)”会自动变成文章标题的汉语拼音,例如,如果你发布一篇文章,标题是“中文拼音”,通常情况下WordPress会自动产生一个缩略名%e4%b8%ad%e6%96%87%e6%8b%bc%e9%9f%b3,如果你启用了“中文标题转换拼音插件”,则文章缩略名会变成zhongwenpinyin。这个缩写是在保存文章的时候产生的,因此你在发布文章前还可以对其进行修改,或者直接发布。这个插件对于以前已经存在的文章标题缩写是无效的,只对新文章有效,你可以通过删除旧文章后发布一篇新文章来自动产生这个拼音缩写。

除此之外,还有下面几款插件,大家可以根据插件的更新频率和自己的喜好在后台选择安装即可。

 

2、Pinyin Slugs

3、Wenprise Pinyin Slug

4、Wizhi Optimization

5、MZSlugs Translator

纯代码实现WordPress文章标题自动拼音别名

 

二、wordpress标题自动生成英文别名的代码:

将以下任意一段代码添加到WordPress主题目录下的functions.PHP文件中,在最后一个?>标签前新添如下代码并保存。如果没有?>标签,则直接加到最后面。

1、使用百度翻译的代码:

对于在天朝以内的用户,虫子君个人建议是使用百度翻译的代码,因为除了支持国货之外,还有一个层面就是百度的产品其实非常优秀。其次百度的服务器在国内比微软的坑会稳定一点。

// 自动生成英文别名 - 百度版 
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 ( emptyempty( $wp_http_get->errors ) ) { 
 if ( ! emptyempty( $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 );

2、使用微软翻译的代码:

// 自动生成英文别名 - 微软版 
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 ( emptyempty( $wp_http_get->errors ) ) { 
 if ( ! emptyempty( $wp_http_get['body'] ) ) { 
 preg_match('/"TranslatedText":"([^"]+)/i', $wp_http_get['body'], $trans_result); 
 $trans_title = $trans_result[1]; 
 return $trans_title; 
 } 
 } 
 return; 
}
继续阅读
  • 欢迎来“给我投稿”网友会因为你的帮助而感激。
  • 文章链接:https://chonzi.com/9158.html

您必须才能发表评论!