一些常用的typecho调用语法
以下typecho调用语法为博主网络收集而来,很多都是很常用的,可方便大家查看调用。如有错误或者问题,也可以在下方留言一起讨论~
站点名称
<?php $this->options->title() ?>
站点网址
<?php $this->options ->siteUrl(); ?>
站点说明
<?php $this->options->description() ?>
文章/页面的作者
<?php $this->author(); ?>
作者头像
< ?php $this->author->gravatar('40') ?>
上下篇调用代码
<?php $this->thePrev(); ?> <?php $this->theNext(); ?>
判断是否为首页,输出相关内容
<?php if ($this->is('index')): ?>
//是首页输出内容
<?php else: ?>
//不是首页输出内容
<?php endif; ?>
文章/页面评论数目
<?php $this->commentsNum('No Comments', '1 Comment' , '%d Comments'); ?>
截取文章内容显示摘要(350是字符数)
<?php $this->excerpt(350, '.. .'); ?>
调用自定义字段
<?php $this->fields->fieldName ?>
RSS地址
<?php $this->options->feedUrl(); ?>
获取最新评论列表
- <?php $this->widget('Widget_Comments_Recent')->to($comments); ?> <?php while($comments->next()): ?>
- {date} '); ?>
获取标签集合
<?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; ?>
登陆与未登录用户展示不同内容
<?php if($this->user->hasLogin()): ?>
//登陆可见
<?php else: ?>
//未登录和登陆均可见
<?php endif; ?>
自动调用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; ?>
文章内容替换七牛网址
<?php echo $str = str_replace("your.com/usr/uploads","your.qiniu.com/usr/uploads",$this->content); ?>
文章字数统计
在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); ?>
自动调用第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;
}
?>
边栏不显示博主评论
<?php $this->widget('Widget_Comments_Recent','ignoreAuthor=true')->to($comments); ?>
前台登录表单
<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>
......
当然,应该还有很多的调用语法没有收集到,也欢迎大家补充和修正,谢谢。
文章由官网发布,如若转载,请注明出处:https://www.veimoz.com/77
2 条评论
5.2k
发表评论
已有 2 条评论
热门文章
自媒体博客Spimes主题33w 阅读
Spimes主题专为博客、自媒体、资讯类的网站设计....
vCard主题个人简历主题13w 阅读
一款个人简历主题,可以简单搭建一下,具体也比较简单....
Splity博客双栏主题11w 阅读
仿制主题,Typecho博客主题,昼夜双版设计,可....
Spzac个人资讯下载类主题11w 阅读
用于作品展示、资源下载,行业垂直性网站、个人博客,....
热评文章
自媒体博客Spimes主题416 评论
Splity博客双栏主题187 评论
Spzac个人资讯下载类主题89 评论
Splinx博客图片主题35 评论
Spzhi知识付费社区主题34 评论
三栏清新博客S_blog主题30 评论
vCard主题个人简历主题29 评论
Pure轻简主题28 评论
所以这个$this到底是什么
@火喵酱
老哥可以解答一下么qaq,$this不认怎么办,我写了一个php文件但是不能使用类似$this->options->xxx之类的方法,请问怎么解决呀
谢谢老哥