也想出现在这里?联系我们
您好!欢迎来到模板下载吧!本站资源24小时自动发货,请放心选购,一次付费,终身下载,售后请提交工单!

wordpress 获取文章内所有图片

半岛未凉°【美工/技术】 2017-04-09 快速入门 2439 已收录 本文共1924个字,预计阅读需要5分钟。
  • 文章介绍
  • 快速入门
  • 增值服务

在制作wordpress主题过程中,有遇见想要自动获取文章内所有图片的情况,一开始没有思路,后来,想起大前段的xiu主题貌似就拥有这样的功能,经过维维大神的扣扯后,现在模板下载吧拿来分享哈,绝笔可用的嚎!

wordpress 获取文章内所有图片

将代码插入functions.php

  1. function hui_get_thumbnail( $single=true, $must=true ) {  
  2.     global $post;  
  3.     $html = '';  
  4.     if ( has_post_thumbnail() ) {  
  5.         $domsxe = simplexml_load_string(get_the_post_thumbnail());  
  6.         $src = $domsxe->attributes()->src;  
  7.         $src_array = wp_get_attachment_image_src(hui_get_attachment_id_from_src($src), 'thumbnail');  
  8.         $html = sprintf('<li><img src="%s" /></li>', $src_array[0]);  
  9.     } else {  
  10.         $content = $post->post_content;  
  11.         preg_match_all('/<img.*?(?: |//t|//r|//n)?src=[/'"]?(.+?)[/'"]?(?:(?: |//t|//r|//n)+.*?)?>/sim', $content, $strResult, PREG_PATTERN_ORDER);  
  12.         $images = $strResult[1];  
  13.         $counter = count($strResult[1]);  
  14.         $i = 0;  
  15.         foreach($images as $src){  
  16.             $i++;  
  17.             $src2 = wp_get_attachment_image_src(hui_get_attachment_id_from_src($src), 'thumbnail');  
  18.             $src2 = $src2[0];  
  19.             if( !$src2 && true ){  
  20.                 $src = $src;  
  21.             }else{  
  22.                 $src = $src2;  
  23.             }  
  24.             $item = sprintf('<li><img src="%s" /></li>', $src);  
  25.             if$single){  
  26.                 return $item;  
  27.                 break;  
  28.             }  
  29.             $html .= $item;  
  30.             if(  
  31.                 ($counter >= 4 && $counter < 8 && $i >= 4) ||  
  32.                 ($counter >= 8 && $i >= 8) ||  
  33.                 ($counter > 0 && $counter < 4 && $i >= $counter)  
  34.             ){  
  35.                 break;  
  36.             }  
  37.         }  
  38.     }  
  39.     return $html;  
  40. }  
  41. function hui_get_attachment_id_from_src ($link) {  
  42.     global $wpdb;  
  43.     $link = preg_replace('/-/d+x/d+(?=/.(jpg|jpeg|png|gif)$)/i', ''$link);  
  44.     return $wpdb->get_var("SELECT ID FROM {$wpdb->posts} WHERE guid='$link'");  
  45. }  

以上代码规则可根据自己实际要求来修改

前端调用

  1. <?php echo hui_get_thumbnail(false,true);?>  
温馨提示:本文最后更新于2019年3月19日,已超过 2 年没有更新,如果文章内容或图片资源失效,请留言反馈,模板下载吧会及时处理,谢谢!

上一篇:

下一篇:

wordpress 获取文章内所有图片:等您坐沙发呢!
大牛,别默默的看了,快来点评一下吧!:)。

您必须登录后才能发表评论哦!:)

站内登录 QQ登录 微博登录
wordpress自适应高级图片shejigh主题

Hi, 如果你对这款模板有疑问,可以跟我联系哦!

联系作者

模板下载吧,累计帮助1000+用户成功建站,为草根创业提供助力!

立刻开启你的建站之旅
现在加入模板下载吧,注册一个账号
  • 模板下载吧拥有海量网站模板及源码,站长亲测干净无后门。

  • 注册即能下载免费模板栏目资源,帮您更快的完成网站建设。

  • 每日更新模板资源,每日精品推荐,及时获取最新模板资源流行去向。

  • 完美的售后服务,帮助草根站长、企业等成功建站。

  • 将您最爱的资源收藏,建立自己的资源库,并与朋友分享。