首页
微语
统计
友链
留言
memos
圈子
图床
推荐
相册
网站监控
VPS监控
Search
1
实现typecho微信时光机功能的图文教程
45,107 阅读
2
为Typecho添加webp解析
43,168 阅读
3
emlog数据成功迁移到typecho
26,688 阅读
4
Memos备忘录,记录瞬间想法
25,610 阅读
5
Jasmine - 简约、美观的博客主题
24,305 阅读
手机达人
免费资源
电脑网络
娱乐休闲
网站建设
威言威语
Typecho
Emlog
WordPress
服务器
主题
插件
排行榜    
登录
/
注册
Search
标签搜索
wordpress
发布
插件
免费
教程
typecho
EMlog
PHP
代码
CSS
华为
图片
代码修改
安装
评论
手机
诺基亚
微信
文章
智能
Chen'mo
累计撰写
1,266
篇文章
累计收到
374
条评论
首页
栏目
手机达人
免费资源
电脑网络
娱乐休闲
网站建设
威言威语
Typecho
Emlog
WordPress
服务器
主题
插件
页面
微语
统计
友链
留言
memos
推荐
相册
网站监控
VPS监控
搜索到
1
篇与
的结果
2021-02-06
给typecho主题增加一个热门文章排行榜
教程简介今天欣赏我的网站的时候总感觉侧边栏上缺了一点什么,突然我就灵光一闪,不如加个热门文章排行榜,没事还能关心关心自己的文章到底哪个受欢迎。空想不做不是我的性格,既然想到了,那我们就要实现,但是我对这个typecho的api实在是不了解,所以说在查了大量资料和文章之后,终于写出来了。我就直接贴我写好的代码了啊,也不讲过程,因为过程不重要,结果才是最重要的。/*热门文章*/ function HotPosts() { $archive = Typecho_Widget::widget('Widget_Archive'); $hotNums = 5; //热门文章数 $minViews = 10; //最低阅读量 $db = Typecho_Db::get(); $select = $db->select()->from('table.contents') ->where('table.contents.type = ?', 'post') ->where('table.contents.status = ?', 'publish') ->limit($hotNums); $select->order("table.contents.views", Typecho_Db::SORT_DESC); if ($minViews > 0) { $select->where('table.contents.views >= ?', $minViews); } $rows = $db->fetchAll($select); foreach ($rows as $row) { $HostPostList[] = $archive->filter($row); } return $HostPostList; } 把这个代码放到主题目录下的functions.php就行了,主题和主题应该不一样吧,没有functions.php的话就放到sidebar.php要是连sidebar.php都没有,那么我建议使用Cuckoo主题。然后我们放好函数之后,就可以把它加到侧边栏了,我们在sidebar.php合适的位置加入以下代码,你们别照扒,安装自己主题的样式来。<?php $HotPosts = HotPosts();?> <?php if (!$this->is('single') && count($HotPosts) > 1): ?> <div class="mdui-card sidebar-info mdui-shadow-10"> <ul class="mdui-list"> <div class="sidebar-reply-title">热门文章</div> <li class="mdui-divider mdui-m-y-0"></li> <?php foreach ($HotPosts as $v) {?> <a title="<?=$v['title'];?>" href="<?=$v['permalink'];?>"> <li class="mdui-list-item mdui-ripple sidebar-reply-list"><div class="sidebar-reply-text"><?=$v['title'];?></div></li> <li class="mdui-divider"></li> </a> <?php }?> </ul> </div> <?php endif;?> 因为我的文章页面已经有猜你喜欢这个栏目了,所以说在文章界面是不显示热门文章这个栏目的。如果想让他在任何界面都显示,可以写成下面这样<?php $HotPosts = HotPosts();?> <?php if (count($HotPosts) > 1): ?> <div class="mdui-card sidebar-info mdui-shadow-10"> <ul class="mdui-list"> <div class="sidebar-reply-title">热门文章</div> <li class="mdui-divider mdui-m-y-0"></li> <?php foreach ($HotPosts as $v) {?> <a title="<?=$v['title'];?>" href="<?=$v['permalink'];?>"> <li class="mdui-list-item mdui-ripple sidebar-reply-list"><div class="sidebar-reply-text"><?=$v['title'];?></div></li> <li class="mdui-divider"></li> </a> <?php }?> </ul> </div> <?php endif;?> 大功告成保存好了之后回到网站看一看,如果有不太满意的地方还可以微调,修改显示文章数量和最低的浏览量可以安装注释来修改。
2021年02月06日
4,285 阅读
0 评论
0 点赞