menu Hello World
首页  »  学习记录  »  Typecho常用函数
Typecho常用函数
2022-05-11   学习记录   暂无评论   35 次阅读

Typecho常用函数:

1、网站名称

<?php $this->options->title() ?>

2、网站网址

<?php $this->options ->siteUrl(); ?>

3、站点说明

<?php $this->options->description() ?>

4、文章完整路径和标题

<?php $this->archiveTitle(' &raquo; ', < span class="string">'', ' | '); ?><?php $this ->options->title(); ?>

5、模板地址

<?php $this->options->themeUrl(); ?>

6、导入模板文件夹内的php文件

<?php $this->need('.php'); ?>

7、输出文章或单页面的作者

<?php $this->author(); ?>

8、输出作者gravatar头像

//此处是输出完整的 img 标签,40 是头像的宽高

< ?php $this->author->gravatar('40') ?>

9、作者文章列表链接

//Typecho支持多用户博客时,按作者获取该作者文章连接

<?php $this->author->permalink (); ?>

10、作者个人主页链接

//Typecho 支持多用户博客,此处输出作者个人主页地址

<?php $this->author->url(); ?>

11 、作者的邮箱地址

<?php $this->author->mail(); ?>

12、上一篇与下一篇调用代码

// 上一篇

<?php $this->thePrev(); ?>

// 下一篇

<?php $this->theNext(); ?>

13、typecho中is语法是否为首页并输出相关内容

<?php if ($this->is('index')): ?>

// 首页输出内容

<?php elseif ($this->is('category')): ?>

// 按照分类输出内容

<?php else: ?>

// 不是首页、分类输出内容

<?php endif; ?>

14、获取文章或页面评论数

<?php $this->commentsNum('No Comments', '1 Comment' , '%d Comments'); ?>

15、截取文章指定字数(可用于首页显示文章摘要)

// 截取350字并以"..."结尾

<?php $this->excerpt(350, '...'); ?>

16、调用自定义字段

<?php $this->fields->fieldName ?>

17、获取 RSS 地址

<?php $this->options->feedUrl(); ?>

18、获取最新文章

<?php $this->widget('Widget_Contents_Post_Recent', 'pageSize=8&type=category')->parse('<li><a href="{permalink}">{title}</a></li>'); ?>

19、获取分类名称,不带链接

// 不带连接的获取分类

<?php $this->category(',', false); ?>

// 获取所有分类

<?php $this->widget('Widget_Metas_Category_List')->listCategories('wrapClass=widget-list'); ?>

// 自定义分类

<?php $category = NULL; $this->widget('Widget_Metas_Category_List')->to($category); ?>

<?php while ($category->next()): ?>

<a class="list-group-item list-group-item-action" title="<?php $category->description(); ?>" href="<?php $category->permalink(); ?>"><?php $category->name(); ?></a>

<?php endwhile; ?>

20、获取文章分类列表

<?php $this->widget('Widget_Metas_Category_List')->parse('<li><a href="{permalink}">{name}</a> ({count})</li>'); ?>

21、获取某分类下的POST文章

// 注意参数 mid=1

<?php $this->widget('Widget_Archive@index', 'pageSize=8&type=category', 'mid=1')

->parse('<li><a href="{permalink}" title="{title}">{title}</a></li>'); ?>

22、获取最新评论列表

<?php $this->widget('Widget_Comments_Recent')->to($comments); ?>

<?php while($comments->next()): ?>

    <li>
        <a href="<?php $comments->permalink(); ?>">

           <?php $comments->author(false); ?>

        </a>: <?php $comments->excerpt(50, '...'); ?>

    </li>

<?php endwhile; ?>

23、首页获取限制条数的最新文章(可用于置顶操作类)

<?php while ($this->next()): ?>

<?php if ($this->sequence <= 3): ?>

    //这里编写html逻辑

<?php endif; ?>

<?php endwhile; ?>

24、获取访客最新评论,只显示访客评论不显示博主自己发的评论

<?php $this->widget('Widget_Comments_Recent','ignoreAuthor=true')->to($comments); ?>

    <?php while($comments->next()): ?>

    <li><a href="<?php $comments->permalink(); ?>"><?php $comments->author(false); ?></a>: <?php $comments->excerpt(50, '...'); ?></li>

<?php endwhile; ?>

25、文章按时间归档

<?php
     $this->widget('Widget_Contents_Post_Date', 'type=month&format=F Y')->parse('<li><a href="{permalink}">{date}</a></li>');
?>

26、获取标签云

// 输出标签云

<?php $this->widget('Widget_Metas_Tag_Cloud', 'sort=mid&ignoreZeroCount=1&desc=0&limit=30')->to($tags); ?>

<?php if($tags->have()): ?>

<ul class="tags-list">

<?php while ($tags->next()): ?>

    <li><a href="<?php $tags->permalink(); ?>" rel="tag" class="size-<?php $tags->split(5, 10, 20, 30); ?>" title="<?php $tags->count(); ?> 个话题"><?php $tags->name(); ?></a></li>

<?php endwhile; ?>

<?php else: ?>

    <li><?php _e('没有任何标签'); ?></li>

<?php endif; ?>

</ul>

// 输出随机颜色标签云

<?php $this->widget('Widget_Metas_Tag_Cloud', 'ignoreZeroCount=1&limit=30')->to($tags); ?>

<ul class="tags-list">

<?php while($tags->next()): ?>

    <li><a style="color: rgb(<?php echo(rand(0, 255)); ?>, <?php echo(rand(0,255)); ?>, <?php echo(rand(0, 255)); ?>)" href="<?php $tags->permalink(); ?>" title='<?php $tags->name(); ?>'><?php $tags->name(); ?></a></li>

<?php endwhile; ?>

</ul>

本篇文章采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 许可协议进行许可。

转载或引用本文时请遵守许可协议,注明出处。

发表评论
暂无评论
textsms
account_circle
email
link