Typecho 幻灯片代码,焦点图轮播

No Reply , Posted in 代码 on September 23, 2014

首先,让typecho可以调文章中的第一张图或者附件图片

function img_postthumb($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));

   preg_match_all("/\]*>/i", $rs['text'], $thumbUrl);  //通过正则式获取图片地址
   $img_src = $thumbUrl[1][0];  //将赋值给img_src
   $img_counter = count($thumbUrl[0]);  //一个src地址的计数器

   switch ($img_counter > 0) {
       case $allPics = 1:
           echo $img_src;  //当找到一个src地址的时候,输出缩略图
           break;
       default:
           echo "http://baidu.com/404";  //没找到(默认情况下),不输出任何内容
   };
}

请添加到你模版文件夹中的【functions.php】文件中,直接往文件后面空白处插

然后,让typecho单独调用一个分类或者标签的文章列表

<ul>
<?php $this->widget('Widget_Archive@indexfocus', 'pageSize=6&type=tag', 'slug=focus')->to($indexfocus); ?><?php while($indexfocus->next()): ?> 
    <li><a href="<?php $indexfocus->permalink(); ?>" target="_blank"><img src="<?php echo img_postthumb($indexfocus->cid,4); ?>" alt="<?php $indexfocus->title() ?>" /><strong><?php $indexfocus->title() ?></strong></a></li>
<?php endwhile; ?> 
</ul>

标签: cms, 幻灯