About Hitokoto

一言网(Hitokoto.cn)创立于 2016 年,隶属于萌创 Team,目前网站主要提供一句话服务。
动漫也好、小说也好、网络也好,不论在哪里,我们总会看到有那么一两个句子能穿透你的心。我们把这些句子汇聚起来,形成一言网络,以传递更多的感动。如果可以,我们希望我们没有停止服务的那一天。
简单来说,一言指的就是一句话,可以是动漫中的台词,也可以是网络上的各种小段子。
或是感动,或是开心,有或是单纯的回忆。来到这里,留下你所喜欢的那一句句话,与大家分享,这就是一言存在的目的。

自己的 WordPress 已经用了很多了,如下图所示,在首页每次刷新都会出现新的个性签名。

WordPress集成Hitokoto一言语句功能

部署接口

根据张戈介绍的代码,将其命名为 index.php,然后上传到网站根目录下的 hitokoto 文件夹(这个自己随机定义)。
其中为了更快的提取,将其中的 $file 改成了 CDN 的地址,并将 hitokoto.txt 上传至 CDN 中。

<?php
//获取句子文件的绝对路径
$file = file('//cdn.***.com/hitokoto.txt');
 
//随机读取一行
$arr  = mt_rand( 0, count( $file ) - 1 );
$content  = trim($file[$arr]);

//编码判断,用于输出相应的响应头部编码
if (isset($_GET['charset']) && !empty($_GET['charset'])) {
    $charset = $_GET['charset'];
    if (strcasecmp($charset,"gbk") == 0 ) {
        $content = mb_convert_encoding($content,'gbk', 'utf-8');
    }
} else {
    $charset = 'utf-8';
}
header("Content-Type: text/html; charset=$charset");
 
//格式化判断,输出 js 或纯文本
if ($_GET['format'] === 'js') {
    echo "function hitokoto(){document.write('" . $content ."');}";
} else {
    echo $content;
}

把 hitokoto.txt 词库上传到和 index.php 同级目录,比如 hitokoto 文件夹内。
词库下载

PS1:默认的编码是 ANSI,可根据网站编码另存为 UTF-8 或 GBK 的文件格式。
PS2:由于主题样式的限制,最好控制语句在 20 个字符串以内,所以使用 Numbers 或 EXCEL 来筛选一下:
WordPress集成Hitokoto一言语句功能
筛选方法很简单,只需要在 B 列输入=len(A2)然后自动填充 B 列即可。最好根据长度排序,将需要控制的长度删除即可。也可以通过 CSS 来控制,但这样就会造成语句不完整了。
现在,浏览器访问 http://你的域名/hitokoto/ 就可以看到输出内容了。

博客集成

部署方法也是非常简单,将下面两行代码添加到博客你想显示的位置即可:

<script type="text/javascript" src="//你的域名/hitokoto/?format=js&charset=utf-8"></script><div id="hitokoto"><script>hitokoto()</script></div>

部署完成之后,前台刷新应该就可以看到效果了,每次刷新都会随机展示一言经典句子。如果你有新的句子,也只要编辑 hitokoto.txt 文件加入即可。

© 声明:本站原创文章采用BY-NC-SA创作共用协议,转载时请标明本文地址;非原创(转载)文章版权归原作者所有。

RECENT POSTS

数据库查询次数:9次,页面生成时间:0.028秒。