无意中看到一个哥们弄了一个一言API,我借用一下,拿来当作毒鸡汤使了.原文:
搭建
新建一个dujitang.php
文档,内容如下:
<?php
header("Content-type: text/html; charset=utf-8");
$path = dirname(__FILE__);
if (isset($_GET['type']) && !empty($_GET['type'])) {
$type = $_GET['type'];
$file = file($path."/".$type.".txt");
} else {
$file = file($path."/dujitang.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';
}
if ($_GET['encode'] === 'js') {
echo "function dujitang(){document.write('" . $content ."');}";
} else {
echo $content;
}
?>
然后再到PHP文档同目录下新建一个dujitang.txt文档,里面放你收集的毒鸡汤,一行一个.同时可以建立多个文本库,在使用的时候用参数调用.
调用方法
请求地址为:https: //your-domain/dujitang.php?type=dujitang&encode=js
参数:
`type`:指定文本库文件名,无参数时默认为'dujitang.txt'
`encode`:赋值为'js'时返回js代码,否则返回文本
- 示例1:
请求地址:https: //your-domain/dujitang.php
返回dujitang.txt
文本库内随机语句。 - 示例2:
请求地址:https: //your-domain/dujitang.php?type=dujitang
返回dujitang.txt
文本库内随机语句。 - 示例3:
请求地址:https: //your-domain/dujitang.php?encode=js
返回dujitang.txt
文本库内随机语句,返回形式为js代码。 - 示例4:
请求地址:https: //your-domain/dujitang.php?type=dujitang&encode=js
返回dujitang.txt
文本库内随机语句,返回形式为js代码。
应用到handsome主题
修改handsome
主题的index.php
文件,路径为Typecho根目录/usr/themes/handsome/index.php
;大概在45-56行左右,原代码为:
echo '加载中……';
echo '<script>
$.ajax({
type: \'Get\',
url: \'https://v1.hitokoto.cn/\',
success: function(data) {
//data = JSON.parse(data);
var hitokoto = data.hitokoto;
$(\'.indexWords\').text(hitokoto);
}
});
</script>';
方法一:使用JS调用
替换成:
echo '加载中……';
echo '<script>
$.post("https://你的域名/dujitang.php", function(dujitang) {
$(".indexWords").html(dujitang);
});
</script>';
方法二:使用PHP调用
这个我没试,不知道样式会不会有所改变.
<?php $hitokoto = file_get_contents('https://your-domain/dujitang.php'); ?>
<?php echo $hitokoto; ?>
进阶玩法
搭建独立的鸡汤页面
新建一个index.php
,放在和dujitang.php
同一目录,内容如下:
<html>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>毒鸡汤 - 壮士可要来一碗!</title>
<link href="min.css" rel="stylesheet">
</head>
<body>
<div class="top-wrap" style="position: absolute; top: 1vh;width: 100%;z-index: 999">
<div class="container">
<div class="row" style="margin-top: 30px;">
<div class="col">
<div class="float-right" style="padding-top: 0px;">
<a class="btn btn-primary btn-filled btn-xs" href="https://mrx.la" >My Blog</a>
</div>
</div>
</div>
</div>
</div>
<div class="main-wrapper" style="position: relative; top: -6vh;">
<div class="container main-sentence justify-content-center text-center">
<span id="sentence" style="font-size: 2rem;">
<!-- 这里是输出的“一言”句子 -->
<script type="text/javascript" src="jitang.php?encode=js&type=dujitang"></script>
<p class="content"><script>dujitang()</script></p>
<!-- 这里是输出的“一言”句子 -->
</span>
</div>
</div>
<div class="foot-1" style="position: absolute; bottom: 7vh;width: 100%;">
<div class="container">
<div class="row">
<div class="col text-center">
<span class="btn btn-primary btn-filled btn-xs">
<a onclick="
location.reload()
">扶我起来,我还能喝!</a>
</span>
</div>
</div>
</div>
</div>
<div class="foot-2" style="position: absolute; bottom: 2vh;width: 100%;">
<div class="container">
<div class="row">
<div class="col text-center">
By <a target="_blank" href="https://mrx.la">Mr.X</a>
</div>
</div>
</div>
</div>
</body>
</html>
新建一个min.css
,放在index.php
同目录即可
CSS太大,我打个包