Typecho后台自定义仪表盘,简化站长操作

很多Typecho站长每天登录后台,第一眼看到的是默认仪表盘:只有“欢迎”“最近评论”等少量信息,想查服务器状态、待审评论或草稿,还得来回点菜单。**通过自定义仪表盘,可以把高频操作入口集中到首页,减少跳转,让日常维护更顺手。** 下面从零开始,讲清楚怎么改、改哪里、怎么验证。 ## 先确认环境和要改的文件 动手前需要满足两个条件:Typecho已经安装并能正常登录后台;你拥有服务器文件管理权限,比如宝塔面板文件管理器或SSH工具。本文以Typecho 1.2.x常见结构为例,不同版本路径可能略有差异,建议先备份。 需要修改的核心文件是当前启用主题的`functions.php`,路径通常在: ``` /var/www/html/usr/themes/你的主题名/functions.php ``` 如果使用宝塔面板,可以在“网站 → 根目录 → usr → themes → 当前主题”找到。**改之前先复制一份`functions.php`并重命名为`functions.php.bak`,出错时可快速还原。** ## 给仪表盘挂载自定义面板 Typecho后台仪表盘是通过插件钩子`adminDashboard`来扩展的,我们可以在主题的`functions.php`里注册一个简易面板。打开`functions.php`,在文件末尾`?>`之前(如果没有`?>`就直接追加)加入以下代码: ```php function theme_dashboard_panel() { $db = Typecho_Db::get(); $prefix = $db->getPrefix(); // 统计待审评论数 $waiting = $db->fetchRow($db->select(array('COUNT(cid)' => 'num')) ->from('table.comments') ->where('status = ?', 'waiting')); // 统计草稿数 $drafts = $db->fetchRow($db->select(array('COUNT(cid)' => 'num')) ->from('table.contents') ->where('status = ?', 'draft') ->where('type = ?', 'post')); echo '
'; echo '

站点概览

'; echo '

待审评论:' . intval($waiting['num']) . ' 条

'; echo '

草稿文章:' . intval($drafts['num']) . ' 篇

'; echo '
'; } Typecho_Plugin::factory('admin/dashboard.php')->dashboard = 'theme_dashboard_panel'; ``` 这段代码做了两件事:查询`table.comments`中状态为`waiting`的评论数量,以及`table.contents`中状态为`draft`的文章数量,然后用一个提示框输出到仪表盘。**如果你只想显示其中一项,把对应的查询和输出行删掉即可。** 保存文件后,刷新后台首页。如果页面顶部出现“站点概览”面板,说明挂载成功。若出现空白或报错,优先检查`functions.php`是否有多余空格或缺少分号。 ## 让面板更实用:加入快捷入口 只显示数字还不够,可以把常用操作做成链接。把上面`echo`部分替换为: ```php echo ''; ``` 这里用`Typecho_Common::url()`生成后台地址,比手写路径更稳妥。**路径中的`manage-comments.php`、`write-post.php`是Typecho后台固定入口,不要改成其他名字。** 保存后刷新,仪表盘应出现三个可点击链接。 ## 容易踩坑的几个地方 **第一,不要直接改后台核心文件。** 有些教程让你改`admin/dashboard.php`,升级Typecho后会被覆盖。优先通过主题`functions.php`或独立插件实现。 **第二,数据库前缀不是固定的。** 代码里用`$db->getPrefix()`自动获取前缀,不要硬编码`typecho_`,否则换了前缀就查不到数据。 **第三,权限和缓存问题。** 如果保存后没变化,先强制刷新浏览器(Ctrl+F5),再检查宝塔面板是否开启了PHP缓存或OPcache,必要时重启PHP服务。 **第四,代码位置要正确。** 钩子注册语句必须放在函数定义之后,否则会提示函数未定义。 ## 怎么验证改对了 验证分三步:登录后台首页,确认面板文字和数字正常显示;点一下“审核待审评论”链接,能跳到评论管理页;再点“写新文章”,能进入撰写页面。**如果数字明显不对,可以手动去评论列表核对待审数量,确认查询条件是否写错。** 确认无误后,把`functions.php`的备份文件保留在本地,方便下次升级主题时对照。如果后续想恢复默认,把备份文件覆盖回去即可。 ## 常见疑问 **改完后台白屏怎么办?** 立即用备份的`functions.php.bak`覆盖原文件,然后逐段检查新加代码,常见原因是漏了分号或引号不匹配。 **能不能显示服务器CPU或内存?** 可以,但需要PHP有执行`shell_exec`等函数的权限,且不同服务器环境差异大,建议先确认空间商是否允许,再考虑用`exec('free -m')`等方式获取。 **这些改动会影响前台吗?** 不会。钩子只在后台仪表盘触发,前台页面不受影响。 **升级Typecho后自定义会丢吗?** 如果代码写在主题`functions.php`里,升级Typecho核心通常不影响;但升级或切换主题时,需要重新把代码加回新主题的`functions.php`。 Typecho后台自定义仪表盘并不复杂,核心就是利用钩子往首页插入自己的信息块。先完成基础面板,再按需加链接和统计项,就能让后台首页更贴合自己的维护习惯。改完后记得验证链接和数字,并保留备份,后续升级才不慌。
分享到:
上一篇
Typecho静态页面生成,无需动态查询数据库
下一篇
Typecho文章定时发布,计划任务配置
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意