WordPress如何快速获取媒体库图片URL地址

张子凡 WordPress优化 2023-11-04 20:33:56 阅读(...) 评论(0)

关于文章配图这件事情,我相信很多单兵作战的站长朋友们应该觉得或多或少不是那么方便,或者说是匹配高质量的图片并不是那么容易,当然就像子凡我这样将我们的 WordPress 站点都通过开发插件接入免费无版权的网络图库,之前给大家分享过的《如何尽可能的避免侵权行为》文章中就有子凡我推荐的免费无版权图库。

WordPress 媒体库 WordPress Media Library

但其实就算这些图库有大量的图片,有时候也很难找到完全喜欢又合适的图片,所以这时候可能就需要重复利用一些文章,或者当很多人喜欢采集就需要通过工具去插入图片,那么也可以事先先将自己需要的图片上传到 WordPress,然后再利用工具在上传内容是匹配这些图片 URL,为此今天子凡想给大家分享一个 WordPress 如何快速获取媒体库图片 URL 地址的代码。

要从 WordPress 站点的媒体库中提取图片 URL,你可以使用 WordPress 的内置函数。以下是一个简单的 PHP 脚本,它使用了 WordPress 的WP_Query来检索媒体附件并输出它们的 URL 地址。你可以将这个脚本保存为一个 PHP 文件,上传到 WordPress 根目录中,然后通过浏览器访问这个文件来运行它。

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
<?php
// 加载 WordPress 核心文件
require_once('wp-load.php');
 
// 检查是否有页码参数传入,否则默认为第一页
$page = isset($_GET['page']) ? max(1, intval($_GET['page'])) : 1;
$per_page = 50; // 每页显示的图片数量,你可以根据需要进行调整
 
// 设置查询参数,根据页码获取图片
$args = array(
	'post_type'      => 'attachment',
	'post_mime_type' => 'image',
	'post_status'    => 'inherit',
	'posts_per_page' => $per_page,
	'paged'          => $page,
);
 
// 运行查询
$query_images = new WP_Query($args);
 
// 设置内容类型为纯文本
header('Content-Type: text/plain');
 
// 检查是否有图片
if ($query_images->have_posts()) {
	while ($query_images->have_posts()) {
		$query_images->the_post();
 
		// 输出附件图片的完整 URL 并换行
		echo wp_get_attachment_url(get_the_ID()) . "n";
	}
	// 重置查询数据
	wp_reset_postdata();
} else {
	echo "No images found on page " . $page;
}

使用方法:创建一个“getimgs.php”的文件,将以上代码复制粘贴进去,然后将这个 php 文件放在你的 WordPress 网站根目录,通过网址前段去访问这个文件即可,为了避免全部输出整站的媒体库图片,所有采用了分页模式,通过在 URL 中添加?page=2(把 2 换成你想要的页码)来访问这个脚本翻页。由于是代码换行,所以可以浏览器快捷键“Ctrl+U”查看网页源代码的方式查看。

但是需要注意,这个脚本不包含任何身份验证或权限检查,因此任何知道这个脚本位置的人都可以运行它并获取你的媒体 URL。在生产环境中,你可能需要实现某种形式的安全措施来保护这个脚本,比如基本的身份验证,或者限制 IP 访问,或者在使用完毕后删除它。

更多关于WordPress优化及疑问可以添加QQ群:255308000

除非注明,否则均为泪雪博客原创文章,禁止任何形式转载

本文链接:https://zhangzifan.com/wordpress-get-media-library-image-url.html

留言评论

登录 后留言