0°

{教程}WP获取文章第一张图片链接地址




各有所需,最近在改造壁纸网站,遇见个难题与琐事,作为一个壁纸站,我想要的是封面与内容符合,不想因为封面难看不点进去,从而错失其他9张美图,然后我就一张图一篇页面,点进去绝不会有第二张出现,一个是想直达,另外一个是不错失其他图。

这个利用WordPress做壁纸下载比较麻烦,在我上传了几个小时后,下载链接必须手动复制图片地址,非常非常的麻烦,有上千张图需要我一个一个的复制.jpg地址进a href内,挺麻烦。月宅太懒没办法,于是动手写个直接获取图片下载地址,无需手动,让程序自动完成。我只需要上传一张图而已。就这么简单。

成果

随便找到一张壁纸图,下方就会出现一个下载按钮,这个按钮与下载的地址是自动生成,无需人为干预,仅需要我上传图,程序即可完成壁纸下载的工作。

可见下载的地址与图片地址符合,download标签我尚未赋值,于是乎直接写了这中文,要是不懒的话,会输出一下图片名字。


教程

现在我们来完成这一动作

首先需要打开你的functions.php文件加入以下代码

//获取文章中第一张图片的路径并输出
function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){ 
$first_img = "/images/moeik.png";
}//这里moeik.png为没有文章图时则输出默认的备用图
return $first_img;
}

接下来是如何调用输出地址,这个地址各有所需自己用,你可以如下图直接显示在文章中,也可以按需自取,比如我的是套在下载内。

用法:

 这个名字自己随便取,我只是为了标准命名。

echo catch_that_image();

再者

catch_that_image()

「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
站点出售中https://ikmoe.com/announcement/20357.html
4 条回复 A 作者 M 管理员
  1. ty路过

  2. 如果有 Typecho 的教程就好了,个人也想弄一个有图片的主题

  3. 这个猛

    签到成功!签到时间:21:05:33 GMT+0800 (中国标准时间)每日打卡,生活更精彩哦~

  4. 签到成功!签到时间:下午6:06:31每日打卡,生活更精彩哦~

欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论