Typecho折腾小笔记

一、使Typecho支持emoji表情

Typecho默认不支持emoji表情,其实不是程序的锅,而是由于编码的问题,只需要将默认的数据库编码utf8修改为utf8mb4即可,当然别忘了,utf8mb4编码只有在PHP5.5以后才支持。——挨踢路

1.修改数据库编码

进入phpMyAdmin(4.8.5),选择您的数据库,操作 -> 排序规则,选择utf8mb4_general_ci ,勾选更改所有表排序规则,执行,操作完成。?
20190227105757.png

附上SQL语句

alter table typecho_comments convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_contents convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_fields convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_metas convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_options convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_relationships convert to character set utf8mb4 collate utf8mb4_general_ci;
alter table typecho_users convert to character set utf8mb4 collate utf8mb4_general_ci;

2.修改数据库配置文件

编辑网站配置文件config.ini.php,修改charset的值为utf8mb4

/** 定义数据库参数 */
$db = new Typecho_Db('Pdo_Mysql', '********');
$db->addServer(array (
  'host' => 'localhost',
  'user' => '***********',
  'password' => '*********',
  'charset' => 'utf8mb4',//请修改此处
  'port' => '*******',
  'database' => '********',
), Typecho_Db::READ | Typecho_Db::WRITE);
Typecho_Db::set($db);

二、Typecho开启SSL启用全站https留下的坑

1.链接替换

当你以为更换完后台地址为HTTPS就搞定的时候,是否考虑到,之前引用的图片等链接还是HTTP呢?那就来试试这款插件吧,能省不少事
【插件】Typecho全站HTTPS URL替换利器

2.配置修改

除了替换链接,还建议在网站配置文件config.ini.php中添加一下代码,完全开启HTTPS

/** 开启HTTPS */
define('__TYPECHO_SECURE__',true);

三、文章页面截图功能禁用后优化

因为未启用页面截图分享功能时,系统依然会自动生成二维码,属于白白消耗资源,浪费几十到一百多毫秒的时间。
找到Handsome主题下libs\Content.php文件,只需修改function returnSharePostDiv($obj)函数,找到以下代码:

        $notice = _mt("扫描右侧二维码阅读全文");
        $image = THEME_URL.'libs/GetCode.php?type=url&content='.$url;
        return <<<EOF
        <style>
        
        .mdx-si-head .cover{
            object-fit: cover;
            width: 100%;
            height: 100%
        }
        
</style>
<div class="mdx-share-img" id="mdx-share-img"><div class="mdx-si-head" style="background-image:url({$headImg})"><p>{$author}</p><span>{$title}</span></div><div 
class="mdx-si-sum">{$expert}</div><div class="mdx-si-box"><span>{$notice}</span><div class="mdx-si-qr" id="mdx-si-qr"><img 
src="{$image}"></div></div><div class="mdx-si-time">{$day}<br><span 
class="mdx-si-time-2">{$year}</span></div></div>
EOF;

然后用下面的代码将其替换掉,大功告成。

        $options = mget();
        if (@in_array("sreenshot",$options->featuresetup) && $obj->is("post")){
            $notice = _mt("扫描右侧二维码阅读全文");
            $image = THEME_URL.'libs/GetCode.php?type=url&content='.$url;
            return <<<EOF
            <style>

            .mdx-si-head .cover{
                object-fit: cover;
                width: 100%;
                height: 100%
            }
                
</style>
<div class="mdx-share-img" id="mdx-share-img"><div class="mdx-si-head" style="background-image:url({$headImg})"><p>{$author}</p><span>{$title}</span></div><div 
class="mdx-si-sum">{$expert}</div><div class="mdx-si-box"><span>{$notice}</span><div class="mdx-si-qr" id="mdx-si-qr"><img 
src="{$image}"></div></div><div class="mdx-si-time">{$day}<br><span 
class="mdx-si-time-2">{$year}</span></div></div>
EOF;
        }    
Vultr注册就送$50,可开日本/新加坡等机房,【点击注册】。
最后修改:2019 年 04 月 09 日 12 : 53 AM
如果觉得我的文章对你有用,请随意赞赏

发表评论

4 条评论

  1. Paul

    留个脚印

    1. 松鼠大大
      @Paul

      午好,
      午餐,就决定把你抓去煲汤喝,诶嘿嘿

  2. 测试

    我们一起嘤嘤嘤

    1. 松鼠大大
      @测试

      很皮呀,小兄弟(☆ω☆)?