Typecho调用文章第一张图作为缩略图以及随机缩略图调用
如今我们博客主题都比较喜欢自带缩略图的那种,单纯的文件文章列表不是那么流行。如果在制作Typecho模板主题的时候,如何调用Typecho缩略图呢?常规是这样设置的,直接自定义一个图片作为缩略图,但是这样的办法会比较麻烦,每次都需要单独做一张图。其次就是直接调用文章中的图片作为缩略图,但是有些文章没有图就没有办法显示出来。
那最为常规的办法就是如果文章中有图片的就以第一张图片作为缩略图,如果没有图片就直接以默认的随机图片作为缩略图显示,这样就更加省心。
第一、脚本内容
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | function thumb( $cid ) { if ( empty ( $imgurl )) { $rand_num = 10; //随机图片数量,根据图片目录中图片实际数量设置 if ( $rand_num == 0) { $imgurl = "随机图片存放目录/0.jpg" ; //如果$rand_num = 0,则显示默认图片,须命名为"0.jpg",注意是绝对地址 } else { $imgurl = "随机图片存放目录/" .rand(1, $rand_num ). ".jpg" ; //随机图片,须按"1.jpg","2.jpg","3.jpg"...的顺序命名,注意是绝对地址 } } $db = Typecho_Db::get(); $rs = $db ->fetchRow( $db ->select( 'table.contents.text' ) ->from( 'table.contents' ) ->where( 'table.contents.type = ?' , 'attachment' ) ->where( 'table.contents.parent= ?' , $cid ) ->order( 'table.contents.cid' , Typecho_Db::SORT_ASC) ->limit(1)); $img = unserialize( $rs [ 'text' ]); if ( empty ( $img )){ echo $imgurl ; } else { echo '你的博客地址' . $img [ 'path' ]; } } |
根据上面的内容自己修改。然后将代码添加到当前主题Functions.php 文件中。
第二、调用代码
1 | <?php echo thumb( $this ->cid); ?> |
在模板缩略图位置调用即可。
标签:
Typecho
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!