之前介绍过本站点进行的一些美化操作,最近开始搭建Typecho
博客,在这里记录一些Plug-and-Play
的函数或者模块,以便于其他博客的复用。
5 统计文章总数、分类总数、评论总数、页面总数
1 2 3 4 5 |
<?php Typecho_Widget::widget('Widget_Stat')->to($stat); ?> <li>文章总数:<?php $stat->publishedPostsNum() ?>篇</li> <li>分类总数:<?php $stat->categoriesNum() ?>个</li> <li>评论总数:<?php $stat->publishedCommentsNum() ?>条</li> <li>页面总数:<?php $stat->publishedPagesNum() ?>个</li> |
4 获取指定文章
如文章cid
已知,那么可以这样:
$post = $this->widget('Widget_Archive@post', 'type=post', 'cid=1');
$post->title();
3 隐藏边栏某一类的文章
比如我想隐藏want_to_watch
分类下的文章:
1 2 3 4 5 6 7 8 9 |
<?php $this->widget('Widget_Contents_Post_Recent','pageSize=15')->to($recent); ?> <?php while($recent->next()): ?> <?php if("$recent->category" != "want_to_watch"): ?> <li><i class="fa fa-file-o fa-fw"></i><a href="<?php $recent->permalink();?>" title="<?php $recent->title();?>"><?php $recent->title();?></a></li> <?php endif;?> <?php endwhile; ?> |
2 使用自定义字段
Typecho
中的自定义字段使用非常方便,只需要在文章发布页面中填入字段以及相应的值,在想要使用的地方直接输入:
<?php $this->fields->字段名();?>
即可。
如果是在模版中加入自定义字段,需要在主题的function.php中,找到themeFields函数,然后类似下面这样:
1 2 3 4 5 6 7 8 9 10 11 |
function themeFields($layout) { $thumb = new Typecho_Widget_Helper_Form_Element_Text('thumb', NULL, NULL, _t('自定义缩略图'), _t('在这里填入一个图片 URL 地址, 以添加本文的缩略图,若填入纯数字,例如 <b>3</b> ,则使用文章第三张图片作为缩略图(对应位置无图则不显示缩略图),留空则默认不显示缩略图')); $thumb->input->setAttribute('class', 'w-100'); $layout->addItem($thumb); $catalog = new Typecho_Widget_Helper_Form_Element_Radio('catalog', array(true => _t('启用'), false => _t('关闭')), false, _t('文章目录'), _t('默认关闭,启用则会在文章内显示“文章目录”(若文章内无任何标题,则不显示目录)')); $layout->addItem($catalog); } |
具体见:
文章目录[隐藏] 1.在主题里面添加函数2.引用Typecho文章自定义字段3.在主题里面实现引用例子4.代码说明 Typecho在主题模板functions.php里面添加下面1.代码,你就会发现你...
时间:2021/4/8 分类:建站教程 人气:8 评论:0
文章目录[隐藏] 二、functions/themeConfig() 方法三、通过 themeConfig($form) 扩展主题配置1、增加 input 及值的获取2、增加 textarea3、增加...
时间:2021/4/8 分类:建站教程 人气:8 评论:0
1 获取指定类别的文章列表信息
目前正在搭建瀑布流页面,想把<movie>
类别下的文章拿出来,用的字段有“标题
”、“链接
”、“缩略图
”、“描述
”
第一种方式:
1 |
<?php $this->widget('Widget_Archive@index', 'pageSize=50&type=category', 'mid=3')->parse(' html code'); ?> |
此时会循环读取某一类的文章,其中pageSize
表示取的文章数量,mid
表示某个类别,比如我这里movie
是3。在写html
时,如果我们想取该文章的某个字段,可以直接使用{字段名}
即可。比如年份{year}
,具体的字段见:
文章目录[隐藏] 成员属性$this->options$this->db;$this->user;$this->request;$this->request;栈属性成员函...
时间:2021/4/7 分类:建站教程 人气:13 评论:0
不过第一种方式我没找到调用自定义字段的方式,遂放弃第一种,改用第二种。
第二种方式:
1 2 3 4 |
<?php $this->widget('Widget_Archive@index', 'pageSize=100&type=category', 'mid=3')->to($categoryPosts); ?> <?php while($categoryPosts->next()): ?> html code <?php endwhile; ?> |
这里注意一下,Widget_Archive@index
中@
后面的index
需要指定一个没有使用过的名字才可以。其他同第一种方法。
如果我们想要统计某个年份的数量,不能直接使用$yearss=$categoryPosts->year();
,而是需要用$yearss="$categoryPosts->year"
代替。下面是实现效果:
厉害
aaa终于找到
博主你好,请问在您这边注册的用户可以自由换头像嘛?我用的是和你一样的主题,方便的话可以加一个友链嘛?www.geshifu0.com
看看
看看
给我看看 为为为
牛啊师兄
看看