「备忘」Z-BlogPHP 使用随机图片 API 设置缩略图

吐槽/反馈/建议:我的咸鱼心  爱发电-@wdssmq

简述

Z-BlogPHP 接入随机图 API 用于缩略图

代码

/**
 * 提取或者设置图片
 *
 * @param object $article
 * @param string $type   用于决定返回形式
 * @return string imgurl | <img />
 */
function demoAPP_Thumbnail($article, $type = 'imgurl')
{

  $matches = null;
  preg_match_all("/<img[^>]*src=\"([^\"]+)\"[^>]*>/i", $article->Content, $matches);
  if (isset($matches[1]) && count($matches[1]) > 0) {
    $imgurl = $matches[1][0];
  } else {
    $imgurl = demoAPP_setRndImg($article->ID);
    // $imgurl = demoAPP_setRndImgNetwork(); // 在当前需求下此种方式并不科学。可能会被服务方限制
  }
  // 默认返回图片地址
  if ($type == 'imgurl') {
    return $imgurl;
  }
  // 传入任意其他值可返回 <img /> 标签
  $tplImg = '<img src="imgurl" alt="title">';
  return strtr($tplImg, array('imgurl' => $imgurl, 'title' => $article->Title));
}

/**
 * 可直接引用的随机图接口
 *
 * @param string $rndhash 传入一个参数用于防止图片重复
 * @return string
 */
function demoAPP_setRndImg($rndhash)
{
  return "https://picsum.photos/350/260?random={$rndhash}";
}

/**
 * 接口本身返回 json ,需要额外提取图片地址
 *
 * @return string
 */
function demoAPP_setRndImgNetwork()
{
  global $zbp;
  // 失败时的默认图
  $imgurl = "{$zbp->host}zb_users/theme/demoAPP/var/images/no-image.jpg";
  // 接口地址
  $url = "https://api.vvhan.com/api/acgimg?type=json";
  $http = Network::Create();
  $http->open('GET', $url);
  // $http->setTimeOuts(10, 10, 0, 0);
  $http->send();
  // 对抓取内容进行解析
  if ($http->status == 200 && $json = json_decode($http->responseText, true)) {
    // 返回字段以实际接口为准
    $imgurl = $json['imgurl'];
  }
  return $imgurl;
}

模板内调用:

<a href="{$article.Url}" title="{$article.Title}">
{demoAPP_Thumbnail($article,1)}
</a>

推荐

关于 Z-BlogPHP 1.7 缩略图的一些记录_电脑网络_沉冰浮水:

https://www.wdssmq.com/post/20210224481.html

[开发者]正则表达式相关专贴-开发者中心-ZBlogger 技术交流中心:

https://bbs.zblogcn.com/thread-101713.html


爱发电

本文标题:《「备忘」Z-BlogPHP 使用随机图片 API 设置缩略图》作者:沉冰浮水
原文链接:https://www.wdssmq.com/post/20100215532.html
特别注明外均为原创,转载请注明。

分享到微信

扫描二维码

可在微信查看或分享至朋友圈。

相关文章

沉冰浮水 沉冰浮水 发布于 2010-11-05 08:44:35  
https://www.wdssmq.com
哈哈。。本来就很无聊。。
----------
冬天到了,好冷。。。
回复
lovee lovee 发布于 2010-11-04 22:51:42  
#cmt169
真无聊……
回复
沉冰浮水 沉冰浮水 发布于 2010-11-04 17:19:36  
https://www.wdssmq.com
呵呵。和。很损的。。
----------
冬天到了,好冷。。。
回复
囧啊囧 囧啊囧 发布于 2010-11-04 13:38:58  
#cmt167
一九条
。。。
回复
沉冰浮水 沉冰浮水 发布于 2010-02-22 16:15:06  
https://www.wdssmq.com
额。。有可能。。。
回复
梦舞霓裳 梦舞霓裳 发布于 2010-02-22 16:00:01  
#cmt165
你会不会被所有商场设为禁入物品
回复
发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

网站分类

  • 订阅本站的 RSS 2.0 新闻聚合

搜索

本周旧文

近期观影记录:超级马里奥,死侍与金刚狼。。

搬家也告一段落,虽然搬过来的东西还得归置,新衣柜虽说已经散俩月味儿了,但还是不想放衣服进去。

要不我每年汇总整理一次??碎雨集_沉冰浮水_第1页

所以,不带这条的话,2024 年目前只发了 13 条嘟????

VSCode 内 git 操作卡住的时候没办法主动取消一直是个痛点,一般都是推送或拉取,今天连提交都卡了。。

又一个夏天过去了,所以今年也没买防水鞋套;然后天凉了,为了应对踢被子买了睡袋,不知道 1.2 米会不会略窄。。

《五至七时的克莱奥》,2018 年 6 月加入列表,21 年 11 月底发现 B 站上线了这部,直到前几天才看完,还是分两次看的。。接下来有五项是 2019 年的,都是电影 —— 略长的待办列表。。

有用程序自动抓取自己带 tag 的嘟,然后按年备份后从线上删除;刚发现去年的数据有备份但是没删线上??和本地数据对比后发现线上的还少一条,Why??

本质上,每个人需要的是「让自己面临的问题得到解决」的能力。。

这又涉及到直接能力和间接能力,,缺乏直接能力很正常,视情况可以通过学习来掌握直接能力,或者「请」有直接能力的人来帮自己解决。。

缺乏间接能力的情况是真没救,尤其是对「这是**我自己**面临的问题」这一前提没有明确认知的人。。

其实,在认知意义上,焦虑时我知道这种情绪对应「焦虑」这个文法词汇,此外还有「压抑」「悲伤」等等,然而「抑郁」其实是个我认知体系外的词,虽然经常一些情绪感受我找不到对应的语言词汇来表述,却也只能将其实表述为「找不到对应的语言词汇来表述」的某些感受。。

爱发电支持者

最新留言

友情链接