越来越多的wordpress主题使用timthumb.php这个插件文件来实现缩略图功能。通过timthumb,用户在后台上传的各种图片都会按照预先在前端页面中设置的大小进行剪裁。不过部分使用七牛等云存储的用户(站点图片地址为xxx.qiniu.com)却无法正常显示timthumb缩略图。
由于timthumb出于安全考虑不允许缓存外部地址图片,因此我们打开timthumb缓存路径时会提示 “您可能无法从该网站获取的图像” 。如果这样的话,我们可以通过修改timthumb的安全策略,使其能够支持抓取外部的图片进行缓存。具体操作方法为:
在timthumb.php中搜索
define ('ALLOW_ALL_EXTERNAL_SITES', false)
将其替换为:
define ('ALLOW_ALL_EXTERNAL_SITES', TRUE)
上传后即可实现对站外链接的图片进行抓取缩略了。另外如果缓存的外部图片域名固定,也可以在timthumb的ALLOWED_SITES处添加域名白名单。