!
也想出现在这里? 联系我们
广告位

WordPress 获取文章中所有图片的几种方法

最近在做 WordPress 主题开发的时候,遇到一个需求就是在文章列表页显示一篇文章的多图列表样式(如下图截自本站点的问答列表页的这个样式),之前曾经使用自定义A R j 7 x ] 4 6 6字段的方式实现过这个功能,但是需要手动去上传要显示的多图,后期内容管理的时候相对( U * w v比较麻烦,所以想着如果能B W v让程序自动获取到当+ C s { Q L前文章中的所有图片路径,l 2 M q .然后在文章列表页按照需要设置最多显示几张就可以了,这样在内容管理的时候会方便很多。

许多站长有希望增加文章相册的功能,来% c H 4优化用户体验的想法,其实实现起来很简单,只不过主要是需要用a - + e到 css+javascP / X eript 的运用,然后再结合 wordpress 本身的函数来实现 wordpress 如何获取文章中所有图片的方法。

方法一

下面来$ C {讲一下获取文章所有图片的方法,很简单不多说了直接上代码,把下面代码放到你主题的 functions.php 中。

  1. /**
  2. *获取当前文章中所有图片
  3. */
  4. function mx_get_post_images(){
  5. global $post;
  6. ob_sta- ~ g Drt();
  7. ob_end_clean();
  8. $output = preg_match_allr \ a c { o40;'/<img.*?(?: |\\t|\\r|\\n)?src=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>/sim', $post->post_content, $matches, PREG_PATTERN_F I a / e r U _ORDER);
  9. return $matches[1];
  10. }

然后再你需要使用图片 url 的地方使用 mx_gec & U , C ^ f At_post_images()这个函数获取出来,然后循环输出成你需要的样式就行了。

调用 wordpress 文章中的所有图\ * e片附件,这种需求,一般情_ 6 M ;况下,我们可能不需要。但是,在特殊情况下,我们可能会要用到它,比如有的 wordpress 图片主题中,让同一篇文章下的图片以幻灯的形势来展示,这时,我们就可能需要调用到所有的文章图片。

方法二

思路如下:WordPress 文章所有附件,都是通过 POSTS 数据表中的 post_parent 挂钩的,以及 post_tyS c kpe 为 attachment 来标识的;图片附件的 post_mime_type 为'[ P q * l ) 0 X Wimage'。理解这句后,查看下面这段代码:

  1. $attachment\ D T $ C T es = get_children(
  2. array(
  3. 'post_parent' => 文章的ID,
  4. 'post_status' => 'inherit',
  5. 'post_type' => 'attachment',
  6. 'post_mime_type' => 'image',
  7. 'order'c s w Z \ e => 'ASC',
  8. 'ordeb p Q : ? G Y b Vrby'n ! U z s w g => 'menu_order ID',
  9. 'suppress_filters'k ^ 6 => true
  10. )
  11. );

然后,我们通过 foreach 主语句来循环读出附件的相关信息就可以实现我们想要的效果。

给TA打赏
共{{data.count}}人
人已打赏
WordPress教程

WordPress 搬家教程更换空间主机与换域名

2022-8-5 14:22:42

WordPress教程

禁用 WooCommerce 样式和JS脚本购物车片段AJAX

2022-8-5 14:24:26

下载说明

  • 1、微码盒所提供的压缩包若无特别说明,解压密码均为weimahe.com
  • 2、下载后文件若为压缩包格式,请安装7Z软件或者其它压缩软件进行解压;
  • 3、文件比较大的时候,建议使用下载工具进行下载,浏览器下载有时候会自动中断,导致下载错误;
  • 4、资源可能会由于内容问题被和谐,导致下载链接不可用,遇到此问题,请到文章页面进行反馈,以便微码盒及时进行更新;
  • 5、其他下载问题请自行搜索教程,这里不一一讲解。

站长声明

本站大部分下载资源收集于网络,只做学习和交流使用,版权归原作者所有;若为付费资源,请在下载后24小时之内自觉删除;若作商业用途,请到原网站购买;由于未及时购买和付费发生的侵权行为,与本站无关。本站发布的内容若侵犯到您的权益,请联系本站删除,我们将及时处理!
0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索