wordpress 调用文章第一张图片url并返回文章总图片数量代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/** 获取文章中的图片数量 **/
/**
 * 参数flag=0,返回图片数量
 * 参数flag=1,返回全部图片src链接
 *
 * blog.mimvp.com
 * 2016.12.25
 */
function post_stat_images($flag){
    global $post;
    $post_imgs_count = 0;
 
//    post_imgs_count = get_post_meta($post_id, 'post_imgs_count', true);
 
    ob_start();
    ob_end_clean();
//   $output = preg_match_all('/<img.*(: |\t|\r|\n)src=[\'"](.+)[\'"](:(: |\t|\r|\n)+.*)>/sim', $post->post_content, $matches ,PREG_SET_ORDER);
    $output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches, PREG_SET_ORDER);
    $post_imgs_count = count( $matches );
 
    if($flag==1){
//        // 取第一张图片src地址
//        $post_imgs_src = $matches [0][1];  
 
        // 遍历所有图片src地址
        $post_imgs_srcArray = array();
        foreach($matches as $match) {
            $img_src = $match[1];
            array_push($post_imgs_srcArray, $img_src);
        }  
        $post_imgs_src = implode(',',$post_imgs_srcArray);
        return $post_imgs_src;
    }else{
        return $post_imgs_count;
    }  
}

调用方法:

1
2
<?php echo post_stat_images(0); ?>
<?php echo post_stat_images(1); ?>

以上代码来自米朴博客

原文链接:https://xiaohost.com/11578.html,转载请注明出处。
0