获取wordpress所有图片视频链接

1、图片存储位置

wordpress的图片等media资源不存在数据库中,而是在主题同级目录按时间自动保存:

image

2、图片链接获取

直接获取所有图片链接(media库上传的资源在wp_posts表格中保存为post_type='attachment'的文章形式的文章~,只保存了原始图片的链接)

image
$query_images_args = array(
    'post_type'      => 'attachment',
    'post_mime_type' => 'image',
    'post_status'    => 'inherit',
    'posts_per_page' =>  40,
    'paged' => 1
);

$query_images = new WP_Query( $query_images_args );

$images = array();
foreach ( $query_images->posts as $image ) {
    $images[] = wp_get_attachment_url( $image->ID );
}
echo count($images);

从数据库中直接关联获取图片链接,只记录了一个,并未记录其他尺寸图片的链接

禁止img-srcset属性:

function disable_srcset( $sources ) {
    return false;
}
add_filter( 'wp_calculate_image_srcset', 'disable_srcset' );

3、相关查询信息

  • 数据库中查询所有media资源的posts
SELECT * FROM `wp_posts` WHERE post_type='attachment'
  • 查看media数


    image
  • 设置图片裁剪尺寸


    image

    会按照这个尺寸自动为上传的图片添加不同尺寸,后台自动裁剪生成指定尺寸大小保存在uploads目录下。

img-srcset属性:以最合适的src去匹配不同屏幕



2x、3x 表示目标屏幕的像素密度;400w、600w表示目标浏览器的宽度的限度,如浏览器宽度550w时,匹配600w的src。

你可能感兴趣的:(获取wordpress所有图片视频链接)