搜索热词

WordPress中文社区 > 帖子 > , > 如何获取WordPress指定文章中所有图片路径?

如何获取WordPress指定文章中所有图片路径?

已解决

最近在做WordPress主题开发的时候,遇到一个需求就是在文章列表页显示一篇文章的多图列表样式(如下图截自本站点的问答列表页的这个样式),之前曾经使用自定义字段的方式实现过这个功能,但是需要手动去上传要显示的多图,后期内容管理的时候相对比较麻烦,所以想着如果能让程序自动获取到当前文章中的所有图片路径,然后在文章列表页按照需要设置最多显示几张就可以了,这样在内容管理的时候会方便很多,不知道大家都有什么好办法给指点一下没?

发布于11月26日 被浏览 864 次
点赞 收藏 打赏 分享

    2 个回答

  1. Avatar
    grantchao 0

    再次感谢,回复很快,方法很好用,哈哈

  2. WordPress日记

    不多说了,直接上代码,把下面代码放到你主题的functions.php中

    /**
    *获取当前文章中所有图片 
    *WordPress中文社区 https://www.wpshequ.cn
    */
    function mx_get_post_images(){
        global $post;
        ob_start();
        ob_end_clean();
        $output = preg_match_all('/<img.*?(?: |\\t|\\r|\\n)?src=[\'"]?(.+?)[\'"]?(?:(?: |\\t|\\r|\\n)+.*?)?>/sim', $post->post_content, $matches, PREG_PATTERN_ORDER);
        return $matches[1];
    }

    然后再你需要使用图片url的地方使用mx_get_post_images()这个函数获取出来,然后循环输出成你需要的样式就行了。希望对你有帮助!