简介:

大家都知道typecho是开源博客,没有开放商店等功能,相当于没有收入,纯属免费开发,所以开发者也不是更新很频繁,所以有很多我们刚需的内容没有添加,现在我就自己添加一些自己喜欢的功能和修改自己喜欢的后台界面,下面会把var核心文件的每一处修改标注,admin文件的修改基本是样式问题,就不具体描述。目前已添加置顶和浏览量,最好配合本博客主题使用。

链接:

具体的代码更新请关注我的博客

图片:

修改:

修改一

根据样式问题删掉部分

var/Widget/Users/Profile.php的个人资料删掉

修改二 (添加置顶文章)

1、在var/Widget/Contents/Post文件夹的Recent.php

源代码:

$this->db->fetchAll($this->select()->where('table.contents.status = ?', 'publish')->where('table.contents.created < ?', $this->options->time)->where('table.contents.type = ?', 'post')->order('table.contents.created', Typecho_Db::SORT_DESC)->limit($this->parameter->pageSize), array($this, 'push'));

修改后

$this->db->fetchAll($this->select()->where('table.contents.status = ?', 'publish')->where('table.contents.created < ?', $this->options->time)->where('table.contents.type = ?', 'post')->order('table.contents.order', Typecho_Db::SORT_DESC)->order('table.contents.created', Typecho_Db::SORT_DESC)->limit($this->parameter->pageSize), array($this, 'push'));

2、在var/Widget/Contents/Post文件夹的Edit.php,发布文章函数writePost(),添加oder

 $contents = $this->request->from('password', 'allowComment','allowPing', 'allowFeed', 'slug', 'tags', 'text', 'order', 'visibility');

3、在var/Widget/Archive.php的execute()函数末尾修改为

 $select->order('table.contents.order', Typecho_Db::SORT_DESC, 'table.contents.created', Typecho_Db::SORT_DESC)->page($this->_currentPage, $this->parameter->pageSize);

4、typecho的默认数据库函数不支持两个order by查询,所以我们修改它,找到var/Typecho/Db/Query.php,修改order函数

    public function order($orderby, $sort = Typecho_Db::SORT_ASC){if (func_num_args() > 2) {$this->_sqlPreBuild['order'] = ' ORDER BY ' . $this->filterColumn($orderby) . (empty($sort) ? null : ' ' . $sort) . ',' . $this->filterColumn(func_get_arg(2)) . (empty(func_get_arg(3)) ? null : ' ' . $sort);} else {$this->_sqlPreBuild['order'] = ' ORDER BY ' . $this->filterColumn($orderby) . (empty($sort) ? null : ' ' . $sort);}return $this;}

5、界面设置置顶,在admin/write-post.php在标签后面添加即可

<section class="typecho-post-option"><label for="order" class="typecho-label"><?php _e('置顶');?></label><p><select id="order" name="order" class="w-100"><option value="0" <?php if ($post->order == '0' || !$post->order): ?>selected<?php endif;?>><?php _e('否');?></option><option value="1" <?php if ($post->order == '1'): ?> selected<?php endif;?>><?php _e('是');?></option></select></p>
</section>

修改三 (浏览量)

1、在var/Widget/Abstract/Contents.php 的select()函数添加’table.contents.views’字段

public function select(){return $this->db->select('table.contents.cid', 'table.contents.title', 'table.contents.slug', 'table.contents.created', 'table.contents.views', 'table.contents.authorId','table.contents.modified', 'table.contents.type', 'table.contents.status', 'table.contents.text', 'table.contents.commentsNum', 'table.contents.order','table.contents.template', 'table.contents.password', 'table.contents.allowComment', 'table.contents.allowPing', 'table.contents.allowFeed','table.contents.parent')->from('table.contents');}

2、在var/Widget/Archive.php的singleHandle 添加浏览加1;

 //浏览+1if ('post' == $this->parameter->type) {if (isset($this->request->cid)) {$cid = $this->request->cid;$views = Typecho_Cookie::get('extend_contents_views');if (empty($views)) {$views = array();} else {$views = explode(',', $views);}if (!in_array($cid, $views)) {$row = $this->db->fetchRow($this->db->select('views')->from('table.contents')->where('cid = ?', $cid));$this->db->query($this->db->update('table.contents')->rows(array('views' => (int) $row['views'] + 1))->where('cid = ?', $cid));array_push($views, $cid);$views = implode(',', $views);Typecho_Cookie::set('extend_contents_views', $views);}}}

3、使用方法,跟其他变量一样使用

$this->views()

魔改typecho系统函数和typecho后台界面相关推荐

  1. easybuy源码_EasyBuy 易买网购物系统,前台和后台界面,流畅清晰 Java Develop 238万源代码下载- www.pudn.com...

    文件名称: EasyBuy下载 收藏√  [ 5  4  3  2  1 ] 开发工具: Java 文件大小: 4544 KB 上传时间: 2013-02-26 下载次数: 2 提 供 者: 李辉媛 ...

  2. 魔众客服系统 v1.3.0 后台界面升级,事件驱动增强

    魔众客服系统是一个支持电脑.手机端的在线客服系统,可以让企业轻松拥有自己的在线客服系统 魔众客服系统发布v1.3.0版本,新功能和Bug修复累计13项,后台界面升级,事件驱动增强. 2022年03月1 ...

  3. 魔众网盘系统 v1.2.0 后台界面优化,系统常规升级

    魔众网盘系统提供了一套在线网盘管理系统,支持多用户.分享等功能,支持多种云存储,帮您快速搭建一套公私兼备的网盘系统 魔众网盘系统发布v1.2.0版本,新功能和Bug修复累计10项,后台界面优化,系统常 ...

  4. 魔改Win11 系统焕然一新,颜值和性能飙升

    尽管 Win10 身上也有很多遗憾,可随着 Win11 的到来,这些矛盾点似乎一下子全都转移到后者身上了.无论是拉胯的性能,还是各种神奇的"习惯改造". 俗话说,哪里有不满哪里就有 ...

  5. 10.25 ib api 自定义魔改日记

    1.通过ibapi 下 EClient 和 EWrapper 创建新SimpleClient()类,其中EClient负责 connet()链接tws 发送req____ 请求,EWrapper负责 ...

  6. 关于Typecho的主题魔改记录

    本站使用handsome主题魔改的折腾过程 本文记录博主在使用该款主题时进行的一系列魔改,也就是你现在看到的一系列效果 本站[http://www.cyz4531.top]使用的是handsome主题 ...

  7. Typecho 免费“魔改官方”模板

    这一款主题是基于官方提供的默认模板进行二次魔改,相较于默认模板外观存在很大的改观. 这款主题样式非常的简单,外观也非常简约,没有那么多的各种特效. 重要提示:禁止修改删除版权信息(前台的主题版权信息可 ...

  8. 一款无惧“魔改”的设计系统开源了,已支持字节跳动4000多个项目

    对设计师和前端开发来说,个性化设计和高效的实现往往难以兼得: 视觉上的个性化设计往往意味着开发要对设计系统的组件库进行各种魔改和封装,对程序员来说,不仅开发成本高,后期维护也比较困难. 现在,一款名为 ...

  9. 信创终端之Linux桌面系统:原生桌面 vs 定制魔改

    一.Linux查看版本 查看Linux内核版本命令 1.cat /proc/version 2.uname -a 查看Linux发行版本 lsb_release -a cat /etc/issue 查 ...

最新文章

  1. 每日一篇——lodash—array——differenceBy
  2. Android 无法监听安装,Android关于apk安装成功广播监听
  3. java quartz timer_Java定时器Quartz和Timer
  4. php 文档转html格式文件,php学习笔记之将word文档转化为HTML文件
  5. view 注册服务器,view服务器ip地址
  6. python将txt转json_Python控制乐高EV3,以及VSCODE环境配置
  7. 01-python中字符串的常见操作
  8. python导入包的输入法_python 模块和包的导入
  9. 又一个时代结束了!Adobe宣布在2020年彻底停止Flash更新
  10. springboot集成quartz完成定时任务
  11. EDA365_skill2.5百度网盘资源
  12. ACM顽固错误之WA——常见掉坑点
  13. Evaluate the standards between the Top Five through ratings of transferred players on whoscored.com
  14. 用python画皮卡丘代码-用python画一只可爱的皮卡丘
  15. 杂散发射干扰和阻塞干扰
  16. Quant面试好题汇总
  17. 02:一文全解:利用谷歌深度学习框架Tensorflow识别手写数字图片(初学者篇)
  18. 一个显示农历的日历小程序
  19. Adobe Photoshop CC制作logo
  20. Robot Framework应用——Mac环境下Robot Framework的安装及简单实用

热门文章

  1. Scratch(三十四):古诗大作战
  2. sudo pip install -i https://pypi.douban.com/simple --user MySQL-python报错‘my_config.h‘ file not found
  3. 记一次清理360U盘安全保护.exe病毒
  4. 计算机辅助设计课程设计评分标准,计算机辅助设计课程设计报告 - 图文
  5. 禅道项目管理工具部署
  6. 多叉树 转换为二叉树 算法
  7. 国产单片机IO口模拟IrDA1.0协议
  8. 恒指期货布林带的实战指标应用
  9. Icepak 电池包热分析_51CAE_新浪博客
  10. 图像课设Huffman编码