typecho全部标签列表 - 按文章数量排序

发表于 2014-08-09   |   分类于 笔记

自定义标签数量(就这里面的20),按照文章数量排序:

<?php $this->widget('Widget_Metas_Tag_Cloud', array('sort' => 'count', 'ignoreZeroCount' => true, 'desc' => true, 'limit' => 20))->to($tags); ?>   
<?php while($tags->next()): ?>   
<li><a rel="tag" href="<?php $tags->permalink(); ?>"><?php $tags->name(); ?></a></li>
<?php endwhile; ?>

Typecho留言板读者墙

发表于 2014-06-26   |   分类于 笔记

模板代码

<div id="reader">
<h2 class="module-title"><strong>读者风云榜</strong></h2>
<ul class="fno">
<?php
$period = time() - 999592000; // 時段: 30 天, 單位: 秒
$counts = Typecho_Db::get()->fetchAll(Typecho_Db::get()
->select('COUNT(author) AS cnt','author', 'url', 'mail')
->from('table.comments')
->where('created > ?', $period )
->where('status = ?', 'approved')
->where('type = ?', 'comment')
->where('authorId = ?', '0')
->group('author')
->order('cnt', Typecho_Db::SORT_DESC)
->limit('25')
);
$mostactive = '';
$avatar_path = 'http://cdn.v2ex.com/gravatar/';
foreach ($counts as $count) {
  $avatar = $avatar_path . md5(strtolower($count['mail'])) . '.jpg?s=60';
  $c_url = $count['url']; if ( !$c_url ) $c_url = Helper::options()->siteUrl;
  $mostactive .= "<li><a href='" . $c_url . "' title='" . $count['author'] . " (参与" . $count['cnt'] . "次探讨)' rel='nofollow' target='_blank'><img src='" . $avatar . "' alt='" . $count['author'] . "的照片' class='avatar' /><small>" . $count['author'] . "</small><i>" . $count['cnt'] . "</i></a></li>\n";
}
echo $mostactive; ?></ul> 
<!--end/.reader/--></div>  

CSS样式

#reader {} 
#reader ul {list-style: none;} 
#reader li {padding: 1px 1px 0 0;float: left;height: auto;} 
#reader a {position: relative;float: left;display: block;text-align: center;text-decoration: none;} 
#reader a img{ width: 60px; height:60px;z-index: 0;border: 0;margin: 0;display: block;}  
#reader a small {line-height: 60px; font-size: 12px;padding: 8px 0 ; display: none; position: absolute;bottom: 0px;top:0px; left: 0px;right: 0px;z-index: 1;
background-color:rgba(255,255,255,0.72)!important; background:#fff; filter:alpha(opacity=72);   *background:#fff; *filter:alpha(opacity=72);color: #111;}
#reader a:hover small {display: block;}
#reader a i {font-size: 10px;font-style: normal; width: 18px; height: 18px;line-height: 18px; background-color: red;color: #fff;position: absolute;top: 1px;right: 1px;border: 2px #fff solid; border-radius: 18px;} 
.float-no{zoom: 1; }
.float-no:after{content: "\20"; display: block; height: 0; clear: both; visibility: hidden; }

typecho导航不显示某分类或页面

发表于 2014-06-26   |   分类于 笔记
<?php while ($pages->next()): ?>
<?php while ($pages->next()): ?> //循环语句开始
<?php if ($pages->slug != 'about'): ?> // 记得闭合 if 语句
<?php if (($pages->slug != 'about') && ($pages->slug != 'links')): ?>

博客于我的意义

发表于 2014-06-22   |   分类于 笔记

记录的目的是记忆;出于感触,出自内心。
公开的目的是分享;这必是毫无疑问的,无论是分享生活、技术、音乐、审美或情感。
分享的目的是寻求认可;寻找共鸣者,寻觅存在感。

阅读全文 »

typecho判断是否第一篇文章并个性显示

发表于 2014-05-20   |   分类于 笔记
<?php if (($this->_currentPage == 1) && ($this->sequence == 1)): ?>
    ... //首页第一篇文章
<?php else: ?>
    ... //其它文章
<?php endif; ?>

比如可以用作第一篇全文显示,或者不同样式等..

判断为当前页的第几篇文章,并单独输出代码,可应用于第一篇文章底部广告:

<?php if ($this->sequence == 0): ?>
//需要的插入
<?php endif; ?>

typecho自定义分类、搜索、首页文章数量

发表于 2014-05-07   |   分类于 笔记

自定义分类、标签、搜索、首页等文章分页数量,修改 functions.php 文件:

function themeInit($archive) {
    if ($archive->is('index')) {
        $archive->parameter->pageSize = 10; // 自定义条数
    }
}
或者:
function themeInit($archive) {
    if ($archive->is('category', 'default')) {
        $archive->parameter->pageSize = 10; // 自定义条数
    }
}

Typecho中的is函数

发表于 2014-03-26   |   分类于 笔记

我怀疑下面的内容是我从官方文档抄过来的,嗯,这不重要。
讲真,typeho的这个is函数真的好用,直观的令人发指(褒奖无疑)!

阅读全文 »

typecho单独输出tag链接地址

发表于 2014-03-26   |   分类于 笔记

可以单独输出tag地址,需要修改funcations.php文件

function tags($widget, $split = ',', $default = NULL)
{
    /** 取出tags */
    if ($widget->tags) {
        $result = array();
        foreach ($widget->tags as $tag) {
            $result[] = $tag['permalink'];
        }

        echo implode($split, $result);
    } else {
        echo $default;
    }
}

调用

<?php tags($this); ?>

typecho自定义字段使用说明

发表于 2014-01-26   |   分类于 笔记

用以下方式来调用自定义字段,如果所有文章都包括自定义字段,则不用判断,直接调用:

<?php $this->fields->fieldName(); ?>

如果有些文章没有调用自定义字段,则判断一下,用来调用:

<?php if (isset($this->fields->fieldName)): ?><?php $this->fields->fieldName(); ?><?php endif; ?>

其中fieldName设置为自定义的字段名

通过自定义字段我们可以让我们的文章页模板如虎添翼。让typeho博客变得强大,可以是相册、可以是下载站、可以是小说。

typecho自定义字段完全

abc 替换为你的自定义字段

<?php if (isset($this->fields->abc)): ?>
<?php $this->fields->abc(); ?>
<?php else: ?>
没有设置说明
<?php endif; ?>

说明

<?php if (isset($this->fields->abc)): ?>//如果有abc这个自定义字段
<?php $this->fields->abc(); ?>//输出自定义字段内容
<?php else: ?>//如果没有abc这个自定义字段
没有设置说明//如果没有设置时默认显示的内容
<?php endif; ?>//判断结束

直接输出自定义字段内容

abc 替换为你的自定义字段

<?php if (isset($this->fields->abc)): ?>
<?php $this->fields->abc(); ?>
<?php endif; ?>

通过自定义字段输出幻灯片

'pageSize=6&type=tag', 'slug=abc'
表示输出6条,标签缩略名为abc的内容。(幻灯片需要自行整合焦点图、幻灯片jQuery)
文字内容中自定义字段名为:banner

<ul>
    <?php $this->widget('Widget_Archive@indexfocus', 'pageSize=6&type=tag', 'slug=abc')->to($indexfocus); ?><?php while($indexfocus->next()): ?>
    <li><a href="<?php $indexfocus->permalink(); ?>"><img src="<?php if (isset($indexfocus->fields->banner)): ?><?php $indexfocus->fields->banner(); ?><?php endif; ?>" alt="<?php $indexfocus->title() ?>" /></a></li>
    <?php endwhile; ?>
</ul>

给typecho加上类似CMS焦点图轮播幻灯片功能

发表于 2013-12-26   |   分类于 笔记

如果我们要给自己Typecho加上一个焦点图轮播首先要获得文章图片

阅读全文 »

typehco自定头部header信息义

发表于 2013-12-26   |   分类于 笔记

首页keywords和Description内容:使用这样的代码,可以自定义相关header内容:

<?php if($this->is('index')): ?>
<?php $this->header('description=介绍内容。'); ?>
<?php else: ?>
<?php $this->header(); ?><?php endif; ?>

阅读全文 »

typecho根据TAG调用相关文章

发表于 2013-11-15   |   分类于 笔记

根据TAG调用相关文章:

<?php $this->related(5)->to($relatedPosts); ?>
<ul>
    <?php while ($relatedPosts->next()): ?>
    <li><a href="<?php $relatedPosts->permalink(); ?>" title="<?php $relatedPosts->title(); ?>"><?php $relatedPosts->title(); ?></a></li>
    <?php endwhile; ?>
</ul>
© 2020 Powered by Typecho & Theme Quark