安裝
下載Typecho
鏈接:typecho
下載后得到一個壓縮文件,解壓后獲得目錄如下:
將該文件夾改名為blog
並且上傳到/var/www/blog
目錄下:
如下:
修改apache配置
參考:鏈接
執行 Typecho
安裝程序
上面apache配置正確的話,在瀏覽器輸入 http://ip/install.php
或者 http://域名/install.php
就能訪問到安裝程序了:
問題
1、配置數據庫時,報錯
對不起,無法連接數據庫,請先檢查數據庫配置再繼續進行安裝
解決方法:
手動創建數據庫【typecho】即可
底部增加備案號
1、在主題文件夾下 【blog/usr/themes/default】的footer.php 添加代碼:
<?php if($this->options->bei): ?> <div class="blog-text-center"><a href="https://beian.miit.gov.cn/#/Integrated/recordQuery" target="_blank" rel="nofollow"><?php $this->options->bei(); ?></a></div> <?php endif; ?>
2、在主題文件夾下 【blog/usr/themes/default】的function.php 添加代碼: 在
$bei = new Typecho_Widget_Helper_Form_Element_Text('bei', NULL, NULL, _t('工信部備案號'), _t('一般為 蘇ICP備9999999號,留空則不顯示')); $form->addInput($bei->addRule('xssCheck', _t('工信部備案號不能使用特殊字符')));
3、保存后,選擇 【控制台-外觀-設置外觀】 即可找到相應的ICP備案號填寫處:
問題:保存后,過段時間會消失,原因目前未知,以防發生,直接寫死
方法:在主題文件夾下 【blog/usr/themes/default】的footer.php 添加代碼:
<?php _e('<a href="https://beian.miit.gov.cn/#/Integrated/recordQuery">你的備案號</a>'); ?>.
啟用https
參考 :鏈接
申請SSL證書
參考:鏈接
Typecho程序設置
1、登錄【控制台 -> 個人設置 【】-> 個人主頁地址】 改成https的域名:
2、編輯Typecho站點根目錄下的文件config.inc.php加入下面一行配置:
/** 開啟HTTPS */ define('__TYPECHO_SECURE__',true);
注意:Chrome內核的瀏覽器有不安全提示的時候,需要找到主題目錄下面的comments.php文件
再將其中的$this->commentUrl(),替換為:echo str_replace("http","https",$this->commentUrl());最后保存。
更換主題
參考:鏈接
1、下載對應的包,解壓,上傳到 【blog/usr/themes/】
2、登錄后台,【控制台- 外觀 】,點擊啟動即可:
問題:
切換后,點擊博客主頁,報錯,試了幾個主題皆如此,歡迎大佬來解惑!
增加訪客統計
參考:鏈接
下載插件
上傳
將插件上傳導 usr/plugins這個目錄下
啟用插件
1、登陸后台,在“控制台”下拉菜單中進入“插件管理”
2、激活相關插件
更新設置
實現效果:
在背景文件 footer.php 添加:
// 輸出訪問次數: <?php Views_Plugin::theViews(); ?> // 輸出最歡迎文章: <?php Views_Plugin::theMostViewed(); ?>
文章字數統計
在主題包 中的文件functions.php中寫入代碼:
/* 文章字數統計 */ function art_count ($cid){ $db=Typecho_Db::get (); $rs=$db->fetchRow ($db->select ('table.contents.text')->from ('table.contents')->where ('table.contents.cid=?',$cid)->order ('table.contents.cid',Typecho_Db::SORT_ASC)->limit (1)); $text = preg_replace("/[^\x{4e00}-\x{9fa5}]/u", "", $rs['text']); echo '共'.mb_strlen($text,'UTF-8').'字';
在模板 【post.php】中調用:
<li><?php _e('字數: '); ?><?php echo art_count($this->cid); ?></li>
問題:Call to undefined function mb_strlen()
報錯:
方法: 在php 的配置文件php.ini里面的 extension=php_mbstring.dll前面的;去掉
問題:我的php.ini里面TM 沒有 extension=php_mbstring.dll
解決方法:
原因:安裝PHP時未安裝mbstring擴展
1、安裝mbstring擴展:
yum install php-mbstring2、修改php.ini
echo ‘extension=mbstring.so' >>/etc/php.ini echo ‘extension=mbstring.dll' >>/etc/php.ini3、重啟服務
systemctl restart httpd
手機端評論報錯 database query error
解決方法
將MySQL數據庫的 sql-mode='STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION'中的
STRICT_TRANS_TABLES刪掉,然后重啟MySQL服務
具體操作
修改mysql的配置文件 :
vim /etc/my.cnf
sql-mode 字段中去掉 STRICT_TRANS_TABLES,然后重啟服務
我的 mariadb 的 my.cnf 文件中沒有sql-mode,若要永遠修改 sql-mode,直接在
中修改,若沒有,直接添加,保存,重啟服務
參考:鏈接
開啟調試模式
在網站文件 config.inc.php 中添加:
/** 開啟調試模式,錯誤頁面會顯示具體的錯誤內容 */ define('__TYPECHO_DEBUG__', true);
編輯當前外觀時無法寫入
授權即可:
chmod -R 777 /var/www
修改上傳文件的大小
參考:鏈接
1、找到php.ini文件
find / -name '*php.ini*'
2、打開php.ini文件
vim /etc/php.ini
3、修改php.ini文件
upload_max_filesize = 1000M; //設置成你想要的大小 post_max_size = 1000M;
4、重啟服務
systemctl restart php-fpm.service
添加文章目錄
參考:鏈接
功能
就是顯示文章目錄。
本插件的顯隱功能依賴jquery
目前只對h2
和h3
做解析,並且解析出的數量大於3的時候才會放出目錄。
下載
安裝
下載解壓文件將文件夾重命名為 TableOfContents
上傳至 usr/plugins
目錄即可!
啟用
使用OSS儲存Typecho上傳附件
參考:鏈接
下載
安裝
1、解壓插件,將解壓后的文件夾重命名為AliOssForTypecho
2、上傳至 usr/plugins
目錄即可
啟動
配置
注意事項:
1、bucket 權限設置為共有讀
2、網站目錄/usr/uploads 開放權限
設置圖片樣式
參考:鏈接
1、添加水印
參考:鏈接
例子:設置圖片的固定大小,並在圖片走右下方添加水印
?x-oss-process=image/resize,w_600,h_600/watermark,type_ZmFuZ3poZW5naGVpdGk,size_20,text_SGVsbG8gUGFt,color_FFFFFF,shadow_50,t_100,g_se,x_5,y_5
?x-oss-process=image/ :表達添加的參數
resize,w_600,h_600/ :表示設置圖片寬高各600
watermark,type_ZmFuZ3poZW5naGVpdGk,size_20,text_SGVsbG8gUGFt,color_FFFFFF,shadow_50,t_100,g_se,x_5,y_5:設置水印文字為“方正黑體”,大小20,文字為:Hello Pam,水印文字為白色、陰影透明度50、位置在右下、水平邊距5、中線垂直偏移5
插件設置:
也可以添加圖片水印
可參考:
更換編輯器
參考: 鏈接
1、下載
2、上傳
將下載的文件解壓,文件夾重命名為EditorMD
,上傳到Typechousr/plugins/
目錄下
3、開啟
登陸后台,在控制台
下拉菜單中點擊插件
進入插件管理,
找到EditorMD
,點擊啟用
注意:使用 EditorMD 后在設置項中的 接管前台Markdown解析 不建議開啟,開啟后在自定義模板中可能會存在適配問題
在分類后添加文章個數
參考:鏈接
1、找到 sidebar.php
2、替換語句
<?php $this->widget('Widget_Metas_Category_List')->to($categorylist); ?> <?php while($categorylist->next()): ?> <li><a href="<?php $categorylist->permalink(); ?>" title="<?php $categorylist->name(); ?>"><?php $categorylist->name(); ?>(<?php $categorylist->count(); ?>)</a></li> <?php endwhile; ?>
添加網站運行時間
1、添加代碼
在 functions.php 中添加代碼:
// 設置時區 date_default_timezone_set('Asia/Shanghai'); /** * 秒轉時間,格式 年 月 日 時 分 秒 * * @return html */ function getBuildTime(){ // 在下面按格式輸入本站創建的時間 $site_create_time = strtotime('2016-09-22 00:00:00'); $time = time() - $site_create_time; if(is_numeric($time)){ $value = array( "years" => 0, "days" => 0, "hours" => 0, "minutes" => 0, "seconds" => 0, ); if($time >= 31556926){ $value["years"] = floor($time/31556926); $time = ($time%31556926); } if($time >= 86400){ $value["days"] = floor($time/86400); $time = ($time%86400); } if($time >= 3600){ $value["hours"] = floor($time/3600); $time = ($time%3600); } if($time >= 60){ $value["minutes"] = floor($time/60); $time = ($time%60); } $value["seconds"] = floor($time); echo ''.$value['years'].'年'.$value['days'].'天'.$value['hours'].'小時'.$value['minutes'].'分'; }else{ echo ''; } }
2、修改自己的建站日期
$site_create_time = strtotime('2016-09-22 00:00:00');
在需要調用的地方填寫以下代碼:
網站已運行:<?php getBuildTime(); ?>
例如,放在網站底部:
在 footer.php 中添加即可
3、可以修改顯示的內容:
$value['years'].'年'.$value['days'].'天'.$value['hours'].'小時'.$value['minutes'].'分'
4、補充
php中換行:<br />
5、效果:
返回頂部
1、插件下載
鏈接 密碼: dzt6
2、上傳插件
上傳到 博客目錄/usr/plugins
3、后台啟用