冷轩信 冷轩信

【转】Typecho编写主题functions.php实现文章缩略图

in 冷轩纪 文章转载请注明来源!

其实是这样的:

鉴于官方是在很少人谈论functions.php,所以自己有必要继续写点什么,造福造福大家。本次实现的功能是:通过创建functions.php里面的新函数以获取文章出现的第一张图片,从而给文章附上缩略图,这样就不用使用到typecho的缩略图插件,因为主题集成了,无需外挂插件。

实现原理:

大致是这样的,文章的ID作为参数传给函数,函数通过正则式匹配获取这个id的文章里面出现的图片标签<img>的src地址,从而获取第一张图片,然后输出即可。

实现代码:

一:我在typocho forum里面参考了一下不知道哪个帖子,随便写了

PHP代码

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 ""; //没找到(默认情况下),不输出任何内容 }; }

二:如何调用代码?在index.php里面相关位置调用函数即可

PHP代码


实现效果:

day26-functions-2.png

 

实现效果图(CSS需自己定义)

转自 http://nornor.net/functions-2-thumbnails.htm

我是在仿一个博客主题时搜索typecho的缩略图偶然发现的,比用插件总是要好的

我已经用上了,见 http://222.121xz.com/

文章二维码

扫描二维码,在手机上阅读!

发表新评论
已有 9 条评论
  1. 红酒代理
    红酒代理
    回复

    谢谢博主的分享,东西不错以后常来。

  2. 寒山烟雨
    寒山烟雨
    回复

    这个主题。。。

    1. 冷轩信
      冷轩信本文作者
      回复

      @寒山烟雨 @寒山烟雨
      比你的好看

  3. 东莞桑拿
    东莞桑拿
    回复

    祝博主工作顺利,身体健康。我的几个小站,多多提建议

  4. 聊城网站建设

    一直用WP 感觉十分强大

  5. 箱伴一生
    箱伴一生
    回复

    wp功能是越来越强大了

    1. 冷轩信
      冷轩信本文作者
      回复

      @箱伴一生 @箱伴一生
      额,我说了是typecho的了

  6. maplebeats
    maplebeats
    回复

    手动档路过,wp/ty等等都是浮云

    1. 冷轩信
      冷轩信本文作者
      回复

      @maplebeats @maplebeats
      你厉害


© 2018 由 Typecho 强力驱动.Theme by Yodu
PREVIOUS NEXT
雷姆
拉姆
0:00