尹志强

如何对wp_get_attachment_image_src函数获取的图像和缩略图生成缓存

尹志强 - 6年前

我看了你的七牛云代码,发现只能对the_content输出的内容生成七牛云存储。
我现在需要将wp_get_attachment_image_src函数获取到的附件及其缩略图存储到七牛云上面。
这种情况下该如何操作呢?或者如何利用你的函数来编写代码进行处理呢?

4条回复

Denis | 邓鸿华
Denis | 邓鸿华 - 6年前

自己写代码 :-)

尹志强
尹志强 - 6年前

在你提供代码的基础上,一行代码就搞定了,放在这里供大家参考。
// 如果没有七牛云插件则返回
if (!function_exists('wpjam_qiniu_cdn_host')) {
return;
}

// 将获取到的附件图像链接指向七牛云
add_filter('wp_get_attachment_image_src', function ($image, $attachment_id, $size, $icon) {
// 必须为REST输出
// 必须放在filter里面,否则当时还无法获取到该常量
if (!defined('REST_REQUEST')) {
return $image;
}

$image[0] = wpjam_get_content_remote_img_url($image[0]);

return $image;
}, 10, 4);

尹志强
尹志强 - 6年前

我配置了两天插件和七牛云都没有搞定,一直不知道问题出在哪里。最后一气之下用了回源方式搞定了。
但是,回源方式意味着只是将七牛云作为CDN并没有作为存储,七牛云插件只是用来更换域名,推送等代码都没有发挥作用。不知道你怎么看?
如果是这样的话,是否可以做一个通用的简化版本CDN插件,可以同时支持七牛云、腾讯云、阿里云的CDN呢?

Denis | 邓鸿华
Denis | 邓鸿华 - 6年前

七牛本来就是靠 CDN 赚钱的,存储很便宜。

我写的插件就是使用七牛的镜像功能存到七牛的,所以这个插件只是取巧使用了七牛的镜像功能,使用了七牛的存储和 CDN 功能。

是否可以做一个通用的简化版本CDN插件,可以同时支持七牛云、腾讯云、阿里云的CDN呢?

可以的,加油啊!

我要回复

暂时不支持网页回复,请安装