明月登楼

Typecho 那些事儿(上)
Typecho是一个简单,轻巧的博客程序。基于PHP,使用多种数据库(Mysql,PostgreSQL,SQLit...
扫描右侧二维码阅读全文
22
2018/03

Typecho 那些事儿(上)

Typecho是一个简单,轻巧的博客程序。基于PHP,使用多种数据库(Mysql,PostgreSQL,SQLite)储存数据。在GPL Version 2许可证下发行,是一个开源的程序,目前使用SVN来做版本管理。Typecho的前身是Magike,一个开源博客程序,由Typecho项目的发起人70开发的。该团队的最初形成,是在wordcamp china的活动上,后来有更多成员加入了这个项目,之后改名为Typecho。

typecho官方读法

typeecho这两个单词合起来的读法,读音:太拍~扣

10000040.jpg

 常量

用于改变typecho的功能或者自定义一些功能

1、TYPECHO_DEBUG

做第三方开发必须打开的,报错信息会更加详细,方便找到开发错误点。

用法

config.inc.php最后面插入define('__TYPECHO_DEBUG__', true);

2、TYPECHO_ADMIN_DIR

后台路径定义,用于修改程序后台地址,提高安全性。

用法

typecho默认后台地址是admin,如果我们想改成typecho-admin,那么首先登陆服务器把admin文件夹名字改成typecho-admin。然后在config.inc.php找到define('__TYPECHO_ADMIN_DIR__', '/admin/');将其中的admin改成typecho-admin即可。

3、TYPECHO_UPLOAD_DIR

TYPECHO_UPLOAD_URL可以单独定义一个不在typecho下的附件上传地址

存储到这里有什么用呢?

config.inc.php最后面插入

define('__TYPECHO_UPLOAD_DIR__', '/www/static');
define('__TYPECHO_UPLOAD_URL__', 'https://xxxxx.upyun.com');

你可以给他单独一个反向代理,就是cdn,七牛,又拍云等cdn可以访问到的地址,然后通过反向代理把你这个路径抓取的,抓取过去后,你那前面的展示地址就可以换成你的cdn地址了,比如上述代码中https://xxxxx.upyun.com

4、TYPECHO_SECUER

当你用https的时候typecho会自动识别的,但是因为大家的环境千差万别,会有识别错误的情况,比如你https都布置好了,但是程序依旧只会加载http的,所以该常量的作用就是强制程序使用https,解决识别错误的情况。

用法

config.inc.php最后面插入define('__TYPECHO_SECUER__', true);

5、TYPECHO_GRAVATR_PREFIX

Typecho 用的GRAVATR的公共头像地址,GRAVATR的服务器在美国,虽然它在全世界做镜像,但是在国内依旧很慢。然后发现有国内有很多人为其做反向代理,把头像缓存到本地,来提高速度,以前大家可能会使用插件来替换 Typecho 的GRAVATR的默认地址,实际上不需要,我们用这个常量就可以了,比如我们替换成https://gravatar.cat.net/avatar/

用法

config.inc.php最后面插入define('__TYPECHO_GRAVATR_PREFIX__', 'https://gravatar.cat.net/avatar');
这样一来typecho就会替换成https://gravatar.cat.net/avatar/渠道的头像地址。【有些模板可能不支持】

皮肤

1、引用皮肤其他部分比如headerfooter时用$this->need('xxx'),而不是用php的require,includ,因为this need时typecho本身的方法,他会去做一些判断,文件,路径,是否存在等等。

2、head末尾别忘加$this->header(),body末尾别忘加$this->footer(),主要用于插件引用前端资源,比如js。

3、单独自定义皮肤

  • 给某个分类自定义皮肤

在模板文件夹下,建立文件夹category,然后在里面放置一个php文件,名字为分类缩略名.php,然后里面的内容就是你想要自定义的皮肤。

  • 给某个独立页面自定义皮肤

在模板文件夹下,建立文件夹page,然后在里面放置一个php文件,名字为缩略名.php,然后里面的内容就是你想要自定义的皮肤。

  • 给某篇文章自定义皮肤

在模板文件夹下,建立文件夹post,然后在里面放置一个php文件,名字为文章id.php,然后里面的内容就是你想要自定义的皮肤。

4、为皮肤定制自定义变量

Typecho 内置的东西,可以在制作模板的时候为每个文章定义好一个自定义字段,方便模板去调用。

用法

functions.php中加入下面代码

function themeFields($layout) {
    $thumb = new Typecho_Widget_Helper_Form_Element_Text('thumb', NULL, NULL, _t('自定义缩略图'), _t('输入缩略图地址(仅文章有效)'));
    $layout->addItem($thumb);
}
原文链接:【《Typecho 那些事(上)》观后感
最后修改:2018 年 03 月 23 日 03 : 16 PM
如果觉得我的文章对你有用,请随意赞赏

发表评论

22 条评论

  1. 一起八吧

    想当年很喜欢typecho的简书主题,还折腾过一段时间,现在都荒废了

    1. 明月登楼
      @一起八吧

      呵呵,其实折腾外观啥的一般都坚持不久的!还是专注于内容比较好!

  2. 日本地铁

    登楼兄的站还真多!技术分享不错哈。

    1. 明月登楼
      @日本地铁

      呵呵,都是瞎折腾的!主要是为了体验 Typecho 才有这个站的!

  3. 梁兴健

    typecho的读法。。。。自己读给自己听还行,但是跟别人交流起来的话感觉有点别扭,不想wordpress那样容易让人听懂
    A:你博客用啥程序?
    B:太拍扣
    。。。

    1. 明月登楼
      @梁兴健

      哈哈,这个要理解一下了!毕竟 Typecho 是一群纯“理科”们搞出来的东西,名字坑定是无法“文艺”了!

  4. 成公笔记

    不愿折腾了就想用个简单的,能表达的就行,typecho满足了很多人的最基本需求。

    1. 明月登楼
      @成公笔记

      是的,Typecho更适合专注于内容的!

  5. 狂放

    自定义字段厉害了,WP里面要无数行代码。(感觉ty的代码更优雅啊)

    1. 明月登楼
      @狂放

      是的!这点 Typecho 确实好牛逼的样子!

  6. 米粒博客

    访问过用这个程序做的博客,都是比较快!

    1. 明月登楼
      @米粒博客

      是的,那速度真的是没的说了!

  7. 陈鑫威博客

    太拍~扣OωO

    1. 明月登楼
      @陈鑫威博客

      哈哈,我也是才知道原来是这样发音的!

  8. 羊毛

    听说最近typecho诈尸了?

    1. 明月登楼
      @羊毛

      啥意思?怎么了?・_・?

  9. 懿古今

    都是直接记成类型输出,type echo 中间的e合并

    1. 明月登楼
      @懿古今

      呵呵,这样也可以的!

  10. 古汐

    感觉好多博客系统都换成了Typecho....

    1. 明月登楼
      @古汐

      呵呵,简单速度快!

  11. 薅羊毛

    这辈子用不上了 博主的广告去哪了

    1. 明月登楼
      @薅羊毛

      呵呵,谷歌AdSense广告太不稳定了!