typecho是一款不错的轻量化博客系统,圈子里也拥有众多爱好者。博客除了后台的发布功能之外,最重要的算得上是博客的外观了,别人的制作的主题可能有时候不怎么符合自身需求或者使用习惯。这时候就有必要了解一下主题小修改或者进行一下个性化的改造。以满足自身需求。

文章title设置

实现方法一

博客首页 —> 博客名称 - 博客描述 归档页面 —> XXXX/XX - 博客名称 文章页面 —> 文章标题 - 博客名称 独立页面 —> 页面标题 - 博客名称 分类页面 —> 分类名称 - 博客名称 标签页面 —> 标签 - 博客名称

PLAINTEXT
<title>
<?php if($this->is('index')): ?><?php $this->options->title(); ?>-<?php $this->options->description(); ?>
<?php elseif($this->is('archive')): ?><?php $this->archiveTitle('/','',' - '); ?><?php $this->options->title(); ?>
<?php else: ?><?php $this->archiveTitle('','',' - '); ?><?php $this->options->title(); ?><?php endif; ?>
</title>
点击展开查看更多

实现方法二

博客首页 —> 博客名称 独立页面 —> 页面标题 - 博客名称 分类页面 —> 分类名称 - 博客名称 标签页面 —> Tag: 标签 - 博客名称 存档页面 —> 存档: XXXX年XX月 - 博客名称 其它(日志页)—> 页面标题

PLAINTEXT
<title>
<?php if ($this->is('index')){$this->options->title();}
elseif($this->is('page')){$this->archiveTitle('','',' - ');$this->options->title();}
elseif($this->is('category')){$this->archiveTitle('','',' - ');$this->options->title();}
elseif($this->is('tag')){$this->archiveTitle('','Tag: ',' - ');$this->options->title();}
elseif($this->is('archive')){$this->archiveTitle('年','存档: ','月 - ');$this->options->title();}
else{$this->archiveTitle('','','');}?>
</title>
点击展开查看更多

默认的实例

PLAINTEXT
<?php $this->archiveTitle('',  '',  ' - ');  ?><?php $this->options->title();  ?>-<?php $this->options->description();  ?>
点击展开查看更多

相关文章调用

PLAINTEXT
<?php $this->related(5)->to($relatedPosts); ?>
<?php if ($relatedPosts->have()): ?>
<?php while ($relatedPosts->next()): ?>
<li>
<a href="<?php $relatedPosts->permalink(); ?>" title="<?php $relatedPosts->title(); ?>"><?php $relatedPosts->title(); ?></a> <small class="info"><strong><?php $relatedPosts->author(); ?></strong> post in<?php $this->date('Y-m-d H:i:s'); ?></small>
</li>
<?php endwhile; ?>
<?php else : ?>
<li>No Related Post</li>
<?php endif; ?>
点击展开查看更多

输出Tags

PLAINTEXT
<?php $this->widget('Widget_Metas_Tag_Cloud') ->parse('<span class="tagcloud"><a href="{permalink}">{name}</span></a>'); ?>
点击展开查看更多

分页只显示新文章、旧文章

PLAINTEXT
<?php $this->pageLink('? 新文章','prev'); ?>
<?php $this->pageLink('旧文章 ?','next'); ?>
点击展开查看更多

测边栏每月归档后面显示文章数

PLAINTEXT
<?php $this->widget('Widget_Contents_Post_Date', 'type=month&format=Y年m月')
->parse('<li><a href="{permalink}">{date}</a> <span id="ignore">({count})</span></li>'); ?>
点击展开查看更多

复制文章时带版权

实例一

PLAINTEXT
<script type="text/javascript">
    function copy_code(text) {
        if (window.clipboardData) {
        window.clipboardData.setData("Text", text)
            alert("已经成功复制到剪贴板!");
        } else {
        var x=prompt('你的浏览器可能不能正常复制\n请你手动进行:',text);
        }
        //return false;
    }
</script>
点击展开查看更多

实例二

PLAINTEXT
< script type = "text/javascript" >
    document.body.oncopy = function () {
        setTimeout(function () {
            var text = clipboardData.getData("text");
            if (text) {
                text = text +
                    "\r\n本篇文章来源于<?php $this->options->title(); ?>|<?php $this->options->siteUrl(); ?>,原文链接:" +
                    location.href;
                clipboardData.setData("text", text);
            }
        }, 100)
    } <
    /script
点击展开查看更多

标签云

PLAINTEXT
<?php $this->widget('Widget_Metas_Tag_Cloud', 'ignoreZeroCount=1&limit=20′)->to($tags); ?>
<?php while($tags->next()): ?>
<a href=”<?php $tags->permalink(); ?>”><?php $tags->name(); ?></a>
<?php endwhile; ?>
点击展开查看更多

最新文章

PLAINTEXT
<?php $this->widget('Widget_Contents_Post_Recent')->to($post); ?>
<?php while($post->next()): ?>
<a href=”<?php $post->permalink(); ?>” title=”<?php $post->title(); ?>”>
<?php $post->title(25, '…'); ?></a>
<?php endwhile; ?>
点击展开查看更多

相关内容

PLAINTEXT
<?php $this->related(5)->to($relatedPosts); ?>
<?php while ($relatedPosts->next()): ?>
<a href=”<?php $relatedPosts->permalink(); ?>” title=”
<?php $relatedPosts->title(); ?>”><?php $relatedPosts->title(); ?></a>
<small><strong><?php $relatedPosts->author(); ?></strong> post in
<?php $this->date('Y-m-d H:i:s'); ?></small>
<?php endwhile; ?>
点击展开查看更多

日期归档显示统计数量

PLAINTEXT
<?php $this->widget('Widget_Contents_Post_Date', 'type=month&format=F Y')->parse('<li><a href=”{permalink}”>{date}</a> ({count})</li>'); ?>
点击展开查看更多

友情链接 要安装插件

PLAINTEXT
<?php PageToLinks::output('links', 'h3', 'ul'); ?>
点击展开查看更多

头部关键信息

PLAINTEXT
<?php $this->keywords('_'); ?> //关键词
<?php $this->options->title(); ?> //站点名称
<?php $this->options->description(); ?> //站点描述
<?php $this->archiveTitle(); ?> //标题
<?php $this->options->themeUrl('ie.css'); ?> //模板路径
<?php $this->options->siteUrl(); ?> //主页网址
<?php $this->options->feedUrl(); ?>
<?php $this->options->commentsFeedUrl(); ?>
<?php $this->pageNav(); ?> //分页
<?php $this->options->generator(); ?> //版本号
点击展开查看更多

文章页面相关参数调用

PLAINTEXT
<?php $this->title(); ?> //标题
<?php $this->category(','); ?> //分类
<?php $this->tags(', ', true, ''); ?> //标签
<?php $this->date('F jS, Y') ?> //时间
<?php $this->content(); ?> //内容
<?php $this->thePrev('&laquo; %s', ''); ?> //上一篇
<?php $this->theNext('%s &raquo;', ''); ?> //下一篇
点击展开查看更多

全部文章列表代码

PLAINTEXT
<?php $this->widget('Widget_Contents_Post_Recent', 'pageSize=10000')->parse('<li>{year}-{month}-{day} : <a href="{permalink}">{title}</a></li>'); ?>
点击展开查看更多

全部标签集列表

PLAINTEXT
<?php $this->widget('Widget_Metas_Tag_Cloud')
     ->to($taglist); ?><?php while($taglist->next()): ?>
<li><a href="<?php $taglist->permalink(); ?>" title="<?php $taglist->name(); ?>"><?php $taglist->name(); ?></a></li>
<?php endwhile; ?>
点击展开查看更多

全部日志数量

PLAINTEXT
<?php $stat = Typecho_Widget::widget('Widget_Stat') ;echo ".$stat->PublishedPostsNum."; ?>
点击展开查看更多

评论输出

PLAINTEXT
<?php $comments->author(true); ?>//输出评论人昵称,参数true为带链接的,false为不带链接的;
//ps.其实还有一个参数,类型也是布尔,作用是是否带noFollow
<?php $comments->excerpt(18, '...'); ?>//输出评论摘要,第一个参数是要截取的长度,第二个是截取后的字符串;
<?php $comments->permalink(); ?>//获取当前评论链接,木有参数;
<?php $comments->title(); ?>//获取当前评论标题,同样木有参数;
<?php $comments->dateWord(); ?>//输出词义化日期,就是输出“3小时前”、“三天前”之内的;
<?php $comments->gravatar(); ?>//调用gravatar输出用户头像,有两个参数,第一个是头像尺寸,默认是32,第二个是默认输出
点击展开查看更多

Typecho文章标题字数限制

PLAINTEXT
<?php $this->widget('Widget_Contents_Post_Recent')->to($post); ?>
<?php while($post->next()): ?>
<li><a href="<?php $post->permalink(); ?>"><?php $post->title(25, '...'); ?></a></li>
<?php endwhile; ?>
点击展开查看更多

侧栏评论忽略博主评论

PLAINTEXT
<?php $this->widget('Widget_Comments_Recent','ignoreAuthor=true')->to($comments); ?>
点击展开查看更多

调用某分类文章,pageSize是数量,mid是分类号

PLAINTEXT
<?php $this->widget('Widget_Archive@index', 'pageSize=6&type=category', 'mid=1')
   ->parse('<li><a href="{permalink}">{title}</a></li>'); ?>
点击展开查看更多

typecho自动显示摘要

PLAINTEXT
<?php $this->excerpt(180); ?>
点击展开查看更多

分离文章的评论和引用通告

打开模板的 comments.php 文件,找到通篇的核心语句

PLAINTEXT
<?php $this->comments()->to($comments); ?>
点击展开查看更多

这条语句控制着评论的类型,他的参数如下

PLAINTEXT
<?php $this→comments()→to($comments); ?>  显示全部(默认) 
<?php $this→comments('comment')→to($comments); ?>  只显示 comment 
<?php $this→comments('trackback')→to($trackbacks); ?>  只显示 trackback 
<?php $this→comments('pingback')→to($pingbacks); ?>  只显示 pingback 
点击展开查看更多

为了分开,我们开始对 comments.php 做如下修改,首先只显示评论

PLAINTEXT
<?php $this->comments('comment')->to($comments); ?>
<?php if ($comments->have()) : ?>
 <ol>
 <?php while ($comments->next()) : ?>
 <li id="<?php $comments->theId() ?>">
  <div class="comment_data">
   <?php $comments->gravatar(32, '', '', 'avatar'); ?>
   <span><?php $comments->author() ?></span> Says:<br />
   <?php $comments->date('F jS, Y'); ?> at <?php $comments->date('h:i a'); ?>
  </div>
  <div class="comment_text"><?php $comments->content() ?></div>
 </li>
 <?php endwhile; ?>
 </ol>
<?php endif; ?>
点击展开查看更多

然后输出 pingback,pingback 并不需要那么多的展示内容,假设只展示标题和日期

PLAINTEXT
<?php $this->comments('pingback')->to($pingbacks); ?><!-- 关键 -->
<?php if ($pingbacks->have()) : ?>
 <h3>Pingbacks</h3>
 <ol>
 <?php while ($pingbacks->next()) : ?>
  <li id="<?php $pingbacks->theId() ?>">
   <?php $pingbacks->author() ?> <?php $pingbacks->date('F jS, Y'); ?>
  </li>
 <?php endwhile; ?>
 </ol>
<?php endif; ?>
点击展开查看更多

版权声明

作者: JunYan`Blog

链接: https://www.jinjun.top/posts/8877/

许可证: CC BY-NC-SA 4.0

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License. Please attribute the source, use non-commercially, and maintain the same license.

评论

开始搜索

输入关键词搜索文章内容

↑↓
ESC
⌘K 快捷键