Typecho中常用的调用函数

30次阅读
2024年06月13日 14:02:17

共计 3250 个字符,预计需要花费 9 分钟才能阅读完成。

最近在折腾Typecho主题,博主也不太懂PHP,所以只好收集一堆Typecho的调用函数,这里记录一下,以便日后翻查,当然,如果能帮助到别人就更好了。话说Typecho的函数类似于js的调用方法,玩过js的人一看就明白。

1、站点名称

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

2、站点网址

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

3、完整路径标题

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

4、站点说明

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

5、模板文件夹地址

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

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

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

7、文章或者页面的作者

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

8、作者头像

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

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

9、该文作者全部文章列表链接

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

10、该文作者个人主页链接

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

11 、该文作者的邮箱地址

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

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

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

13、判断是否为首页,输出相关内容

<?php if ($this->is(‘index’)): ?>
//首页输出内容
<?php else: ?>
//不是首页输出内容
< span><?php endif; ?>

14、文章或页面,评论数目

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

15、截取部份文章(首页每篇文章显示摘要),350是字数

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

16、增强版文章截取

<?php
preg_match_all('/<p>.*?<\/p>/im', $this->content, $m);
if(count($m[0])>0){
    if(strlen($m[0][0])<200){
        $result = $m[0][0].$m[0][1];
    } else {
        $result = $m[0][0];
    }
    $result =  preg_replace("/<[img|IMG].*?src=[\'|\"](.*?)[\'|\"].*?[\/]?>/","",$result); #注释这一行可让摘要中带图片
    echo $result;
} else{
    $this->excerpt(300, '...');
}
?>

17、调用自定义字段

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

18、RSS地址

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

19、获取最新评论列表

<?php $this->widget('Widget_Comments_Recent')->to($comments); ?> <?php while($comments->next()): ?>
{date}
'); ?>

20、获取标签集合

<?php $this->widget('Widget_Metas_Tag_Cloud', 'ignoreZeroCount=1&limit=28')->to($tags); ?>
<?php while($tags->next()): ?>
<a href="<?php $tags->permalink(); ?>" class="size-<?php $tags->split(5, 10, 20, 30); ?>"><?php $tags->name(); ?></a>
<?php endwhile; ?>

21、展示不同内容

登陆与未登录用户展示不同内容

<?php if($this->user->hasLogin()): ?>
//登陆可见
<?php else: ?>
//未登录和登陆均可见
<?php endif; ?>

22、自动调用img字段

自动调用img字段内容,如果没有,去文章搜索第1个图片。

<?php if (array_key_exists('img',unserialize($this->___fields()))): ?><?php $this->fields->img(); ?><?php else: ?><?php
preg_match_all("/\<img.*?src\=(\'|\")(.*?)(\'|\")[^>]*>/i", $this->content, $matches);
$imgCount = count($matches[0]);
if($imgCount >= 1){
$img = $matches[2][0];
echo <<<Html
{$img}
Html;
}
?><?php endif; ?>

23、文章字数统计

functions.php中写入代码:

function  art_count ($cid){
$db=Typecho_Db::get ();
$rs=$db->fetchRow ($db->select ('table.contents.text')->from ('table.contents')->where ('table.contents.cid=?',$cid)->order ('table.contents.cid',Typecho_Db::SORT_ASC)->limit (1));
echo mb_strlen($rs['text'], 'UTF-8');
}

在模板中调用:

<?php echo art_count($this->cid); ?>

24、自动调用第1个文章图片

<?php
preg_match_all("/\<img.*?src\=(\'|\")(.*?)(\'|\")[^>]*>/i", $this->content, $matches);
$imgCount = count($matches[0]);
if($imgCount >= 1){
    $img = $matches[2][0];
echo <<<Html
     <p class="post-images">
      <a href="{$this->permalink}" title="{$this->title}">
       <img src="{$img}" alt="{$this->title}">
      </a>
     </p>
Html;
}
?>

25、边栏不显示博主评论

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

26、前台登录表单

<form action="<?php $this->options->loginAction()?>" method="post" name="login" rold="form">
<input type="hidden" name="referer" value="<?php $this->options->siteUrl(); ?>">
<input type="text" name="name" autocomplete="username" placeholder="请输入用户名" required/>
<input type="password" name="password" autocomplete="current-password" placeholder="请输入密码" required/>
<button type="submit">登录</button>
</form> 
正文完
 0
鹿泽
版权声明:本站原创文章,本文由 鹿泽 于 2024年6月13日 14:02:17 发表,共计 3250 字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
本站所有文章,如无特殊说明或标注,均为本站原创发布。任何在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。
如若本站内容侵犯了原著者的合法权益,可联系我们邮箱:526009505@qq.com进行处理。
最新文章
什么是关键词堆砌?关键词堆砌的位置和坏处有哪些?

什么是关键词堆砌?关键词堆砌的位置和坏处有哪些?

关键字堆砌是一种常见的SEO操作手法,但这其实是低端的SEO行为,对网站排名的帮助微乎其微。想要从本质上解决网...
网站降权的特征判断及恢复

网站降权的特征判断及恢复

网站降权是指搜索引擎对网站评定的级别下降,是搜索引擎对网站进行的一种处罚方式。通常多为网站自身作弊导致的,改正...
seo还好做吗?网站seo具体怎么做优化?

seo还好做吗?网站seo具体怎么做优化?

网站SEO要怎么做优化?新手都会有这样的疑问。下面笔者将通过10年的SEO经验,做出一个详细的解答。 很多人问...
怎么防止优化好的网络推广公司排名忽然下降?

怎么防止优化好的网络推广公司排名忽然下降?

当我们优化我们的网站时,有时我们发现我们优化好的关键词的网络推广公司排名突然变得不稳定。为何会这样?我们能设法...
解读BaiduSpider与站点死链

解读BaiduSpider与站点死链

大家对死链越来越关注,毕竟死链直接关系到网站的抓取收录和流量转化。于是我们整合了之前的内容,又专门对Baidu...