起初是在林木木的博客里看到他寫《已寫完了哪本書》 ,原理我懂,獲取全站所有文章的字數,然后看你字數在哪個區間,便輸出對應字數的書籍,奈何人家使用的是 Hugo,我便問他如果用在 WordPress 上需要如何修改,他給了我 Typecho 的修改版本,具體看《博客全站總字數統計》。又難倒我了,我隨即向 ChatGPT 尋求幫助。
統計所有文章字數,輸出你寫完了那本書
- 代碼來源:詳情
效果

部署
功能代碼
/*
* 已寫完了哪本書?
* 原作者:林木木
* 修改者:胡鶴仙&ChatGPT
*/
function allwords() {
global $wpdb;
$chars = 0;
$results = $wpdb->get_results("SELECT post_content FROM {$wpdb->posts} WHERE post_status = 'publish' AND post_type = 'post'");
foreach ($results as $result) { $chars += mb_strlen(trim($result->post_content), 'UTF-8'); }
if($chars<50000){
echo '全站共 '.$chars.' 字,還在努力更新中..加油!加油啦!';}
elseif ($chars<70000 && $chars>50000){
echo '全站共 '.$chars.' 字,寫完一本埃克蘇佩里的《小王子》了!';}
elseif ($chars<90000 && $chars>70000){
echo '全站共 '.$chars.' 字,寫完一本魯迅的《吶喊》了!';}
elseif ($chars<100000 && $chars>90000){
echo '全站共 '.$chars.' 字,寫完一本林海音的《城南舊事》了!';}
elseif ($chars<110000 && $chars>100000){
echo '全站共 '.$chars.' 字,寫完一本馬克·吐溫的《王子與乞丐》了!';}
elseif ($chars<120000 && $chars>110000){
echo '全站共 '.$chars.' 字,寫完一本魯迅的《彷徨》了!';}
elseif ($chars<130000 && $chars>120000){
echo '全站共 '.$chars.' 字,寫完一本余華的《活著》了!';}
elseif ($chars<140000 && $chars>130000){
echo '全站共 '.$chars.' 字,寫完一本曹禺的《雷雨》了!';}
elseif ($chars<150000 && $chars>140000){
echo '全站共 '.$chars.' 字,寫完一本史鐵生的《宿命的寫作》了!';}
elseif ($chars<160000 && $chars>150000){
echo '全站共 '.$chars.' 字,寫完一本伯內特的《秘密花園》了!';}
elseif ($chars<170000 && $chars>160000){
echo '全站共 '.$chars.' 字,寫完一本曹禺的《日出》了!';}
elseif ($chars<180000 && $chars>170000){
echo '全站共 '.$chars.' 字,寫完一本馬克·吐溫的《湯姆·索亞歷險記》了!';}
elseif ($chars<190000 && $chars>180000){
echo '全站共 '.$chars.' 字,寫完一本沈從文的《邊城》了!';}
elseif ($chars<200000 && $chars>190000){
echo '全站共 '.$chars.' 字,寫完一本亞米契斯的《愛的教育》了!';}
elseif ($chars<210000 && $chars>200000){
echo '全站共 '.$chars.' 字,寫完一本巴金的《寒夜》了!';}
elseif ($chars<220000 && $chars>210000){
echo '全站共 '.$chars.' 字,寫完一本東野圭吾的《解憂雜貨店》了!';}
elseif ($chars<230000 && $chars>220000){
echo '全站共 '.$chars.' 字,寫完一本莫泊桑的《一生》了!';}
elseif ($chars<250000 && $chars>230000){
echo '全站共 '.$chars.' 字,寫完一本簡·奧斯汀的《傲慢與偏見》了!';}
elseif ($chars<280000 && $chars>250000){
echo '全站共 '.$chars.' 字,寫完一本錢鐘書的《圍城》了!';}
elseif ($chars<300000 && $chars>280000){
echo '全站共 '.$chars.' 字,寫完一本張煒的《古船》了!';}
elseif ($chars<310000 && $chars>300000){
echo '全站共 '.$chars.' 字,寫完一本茅盾的《子夜》了!';}
elseif ($chars<320000 && $chars>310000){
echo '全站共 '.$chars.' 字,寫完一本阿來的《塵埃落定》了!';}
elseif ($chars<340000 && $chars>320000){
echo '全站共 '.$chars.' 字,寫完一本艾米莉·勃朗特的《呼嘯山莊》了!';}
elseif ($chars<350000 && $chars>340000){
echo '全站共 '.$chars.' 字,寫完一本雨果的《巴黎圣母院》了!';}
elseif ($chars<400000 && $chars>350000){
echo '全站共 '.$chars.' 字,寫完一本東野圭吾的《白夜行》了!';}
elseif ($chars<1000000 && $chars>400000){
echo '全站共 '.$chars.' 字,寫完一本我國著名的四大名著了!';}
elseif ($chars>1000000){
echo '全站共 '.$chars.' 字,已寫一本列夫·托爾斯泰的《戰爭與和平》了!';}
}
將上述代碼添加到主題文件的 function.php 文件中,并在需要調用的地方添加代碼。
<?php echo allwords(); ?>