当前位置: 首页 > typecho > 正文

最近许童鞋联系我,问我主题做好了没,才想起有个半成品没做完。赶紧打开我的tp站,以默认主题为模版进行修改移植,目前为止,已经完成了70%吧,算是很欣慰的,能按时完成定制。

废话不多说,主题制作过程中想到继续沿用缩略图这个功能,但是php程序比asp要简单,不需要插件实现,可以直接使用相关函数代码。百度了下,发现“老蒋部落”的文章很合我胃口:传送门

虽然很直白,但是用起来还是需要写技术,我这里重新总结下方法:

  1. function thumb($cid) {
  2.   if (emptyempty($imgurl)) {
  3.     $rand_num = 9; //随机图片数量,根据图片目录中图片实际数量设置
  4.       if ($rand_num == 0) {
  5.         $imgurl = “/usr/themes/simpage/random/0.jpg”;
  6.         //如果$rand_num = 0,则显示默认图片,须命名为”0.jpg”,注意是绝对地址
  7.       }else{
  8.         $imgurl = “/usr/themes/simpage/random/”.rand(1,$rand_num).“.jpg”;
  9.         //随机图片,须按”1.jpg”,”2.jpg”,”3.jpg”…的顺序命名,注意是绝对地址
  10.       }
  11.     }
  12.   $db = Typecho_Db::get();
  13.   $rs = $db->fetchRow($db->select(‘table.contents.text’)
  14.   ->from(‘table.contents’)
  15.   ->where(‘table.contents.type = ?’, ‘attachment’)
  16.   ->where(‘table.contents.parent= ?’, $cid)
  17.   ->order(‘table.contents.cid’, Typecho_Db::SORT_ASC)
  18.   ->limit(1));
  19.   $img = unserialize($rs[‘text’]);
  20.   if (emptyempty($img)){
  21.     echo $imgurl;
  22.     }
  23.   else{
  24.     echo .$img[‘path’];
  25.   }
  26. }

使用上面的代码,添加到主题的 functions.php 中,建议添加到所有函数的最下面。将 simpage 修改成你自己的主题目录名称即可。最后那段 echo ”.$img[‘path’]; 中的连续单引号里面可以填写绝对地址,林三这里留空则显示相对地址,显示的是图片的地址。

最后调用这段代码来使用缩略图:<?php echo thumb($this->cid); ?> ,这代码只负责显示缩略图的地址,需要加上图片标签<img src=”图片地址” />来显示图片,祝你好运!欢迎留言。

PS:tp定制移植演示网站地址为 https://tp.maosay.com 欢迎参观交流~

Typecho调用文章第一张图为缩略图教程:目前有6 条评论

  1. 地板
    青山

    这款主题也好喜欢,有没有wp版的呢

    2019-03-23 下午8:49 回复
    • LinSan

      以后会有,愿望要一个一个的实现嘛~

      2019-03-23 下午8:50 回复
  2. 板凳
    佐语先森

    林老师是准备一网打尽哇。

    2019-04-04 上午9:07 回复
  3. 沙发
    荆棘谷的青山

    大佬,话说图片长宽如何定义? :?:

    2019-05-25 下午4:39 回复
    • LinSan

      这是通过css来写的,不需要通过函数。也可以直接写到html代码中哟。

      2019-06-04 上午9:18 回复

发表评论

快捷键:Ctrl+Enter