summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorKurococ Liu <21096362+KurococLiu@users.noreply.github.com>2022-10-23 12:58:52 +0800
committerKurococ Liu <21096362+KurococLiu@users.noreply.github.com>2022-10-23 12:58:52 +0800
commitf142d61f01fc57cf7befe2cc71cc8a3f8b0fdc82 (patch)
tree6242be98d3fa0303dea38168558b8fd4ab65c04f /libs
parentd9e677d6cd90b9c868d505f5177868090dbf1842 (diff)
:newspaper: Add: 加入preconnect、字数统计,Readme新增公益CDN名单
Diffstat (limited to 'libs')
-rw-r--r--libs/Matcha.php36
-rw-r--r--libs/Options.php12
2 files changed, 47 insertions, 1 deletions
diff --git a/libs/Matcha.php b/libs/Matcha.php
index 1ec3c39..fd6135b 100644
--- a/libs/Matcha.php
+++ b/libs/Matcha.php
@@ -12,6 +12,7 @@ class Matcha
* 包括 css 引用、标题
*/
public static function head() {
+ Matcha::preconnect();
Matcha::linkCSS();
Matcha::iconfont();
Helper::options()->customHead();
@@ -68,7 +69,32 @@ class Matcha
echo '" />';
}
}
-
+
+ /**
+ * 输出 preconnect 标签
+ */
+ public static function preconnect() {
+ if(isset(Helper::options()->StaticCDN) && Helper::options()->StaticCDN!='local'){
+ if(Helper::options()->StaticCDN=='bytedance'){
+ $src_link = array(
+ '//lf3-cdn-tos.bytecdntp.com/',
+ '//lf9-cdn-tos.bytecdntp.com/',
+ '//lf26-cdn-tos.bytecdntp.com/',
+ );
+ }
+ elseif(Helper::options()->StaticCDN=='cdnjs'){
+ $src_link = array(
+ '://cdnjs.cloudflare.com/',
+ );
+ }
+ echo '<!-- 预连接 -->';
+ foreach($src_link as $value){
+ echo '<link rel="preconnect" href="'.$value.'" />';
+ }
+
+ }
+ }
+
/**
* 引用 iconfont
*/
@@ -290,6 +316,14 @@ class Matcha
*/
static public function footerInfo()
{
+ //字数统计
+ if (Helper::options()->EnableWordsCounter=='able') {
+
+ echo '<br />';
+ echo '一共书写了';
+ WordsCounter_Plugin::allOfCharacters();
+ echo '字';
+ }
//备案号
if (Helper::options()->icpNum!='') {
echo '<br />';
diff --git a/libs/Options.php b/libs/Options.php
index fde322b..04384c0 100644
--- a/libs/Options.php
+++ b/libs/Options.php
@@ -133,6 +133,18 @@ function themeConfig($form) {
')
);
$form->addInput($EnableBusuanzi->addRule('required', _t('此处必须设置')));
+ //启用字数统计
+ $EnableWordsCounter = new Typecho_Widget_Helper_Form_Element_Radio('EnableWordsCounter', array(
+ 'able' => _t('启用'),
+ 'disable' => _t('停用'),
+ ),
+ 'able',
+ _t('是否启用 <a rel="nofollow" target="_blank" href="https://github.com/elatisy/Typecho_WordsCounter">字数统计</a> 功能'),
+ _t('
+ <a rel="nofollow" target="_blank" href="https://github.com/elatisy/Typecho_WordsCounter">字数统计</a>是一个基于WordsCounter插件统计全站字数的,<b>默认启用</b>
+ ')
+ );
+ $form->addInput($EnableWordsCounter->addRule('required', _t('此处必须设置')));
/**
* 自定义 & 开发者设置