shambix / wp-imager
为WordPress主题开发者提供图像缩放和缓存。支持Jetpack Photon。
dev-master
2019-11-18 21:54 UTC
Requires
- php: ^5.3.3 || ^7.2
This package is auto-updated.
Last update: 2024-09-19 08:05:31 UTC
README
WP Imager简化了WordPress图像的操控、缓存和定制,拥有一个纯PHP版本,即PHP-Imager
可以在循环内外使用
- 如果在循环中使用,脚本将自动从文章中检索图像,按照优先级模式:特色图像,随机附加到文章的图像,文章中找到的第一张图像(无论外部还是未附加)。
- 如果在外面循环中,想要在模板中显示任何图像,请使用
$exturl
参数。 - 如果在外面循环中,要基于文章ID显示图像,请使用参数
$post_id
。
使用TimThumb进行图像缩放和缓存
WPML 100%兼容
支持Jetpack的Photon模块,如果模块开启,将自动切换到Photon缓存图像的URL,同时保留自定义尺寸,无需修改或编辑任何内容
在WordPress文件夹外缓存图像,避免杂乱和上传文件夹溢出
待办事项
要求
- PHP 5.2.x或更高版本
- GD图像库
开始使用
- 将提供的
cache_img
文件夹放置在您的站点根目录中。
确保
cache_img/cache
可写,以防图像无法显示。
-
将
wp-imager.php
文件放置在您的WP模板中。 -
从您的
functions.php
中调用wp-imager.php
<?php include 'wp-imager.php'; ?>
如果您想有更漂亮的img URL,那么还有额外的一步
- 如果您还没有
.htaccess
,请将提供的文件放置在您的站点根目录中。- 如果您已经有了
.htaccess
,请根据提供的文件进行修改。
如果您不完成每一步,脚本将无法工作。
参数
<?php wp_imager($width=null, $height=null, $crop=null, $class='', $link=false, $exturl=null, $nohtml=false, $post_id=null, $bg_color=null); ?>
默认值
- 函数总是返回以避免另一个参数,因此只需在您的代码中简单echo它。
- 处理后的IMG质量始终为100
- 缓存在网站根目录中的cache_img文件夹中完成
- 默认启用漂亮img URL。根据脚本提供的.htaccess进行修改。
用法
调整大小 + 默认裁剪
<?php echo wp_imager(600, 350); ?>
调整大小 + 无裁剪
<?php echo wp_imager(600, 350, 0); ?>
调整大小 + 默认裁剪 + 图像类
<?php echo wp_imager(600, 350, '', 'img-responsive'); ?>
调整大小 + 默认裁剪 + WP文章链接
<?php echo wp_imager(600, 350, '', '', true); ?>
调整大小 + 默认裁剪 + 自定义img URL(循环外)
<?php echo wp_imager(600, 350, '', '', '', 'http://www.domain.com/image.jpg'); ?>
调整大小 + 默认裁剪 + 无HTML包装器
<?php echo wp_imager(600, 350, '', '', '', '', true); ?>
冲突参数
显然,有些参数不能同时使用,并且由于脚本专门用于WordPress中,可能存在一些限制。
例如
$link = true
和$nohtml = true
放在一起没有意义,就像您可以想象的那样($nohtml = true
总是胜利)- 如果
$nohtml = true
,则$class
不会做任何事情 $link = true
和$exturl
将输出损坏或空的帖子 URL,如果$exturl
不是一个帖子图片(是的,$exturl
也应该适用于 WordPress 中的图片,但我还没有对其进行测试)
变更日志
30/4/2016
- 版本 2.6.5
- 修复了与 WPML 兼容性相关的少量问题
- 覆盖
jpeg_quality
和wp_editor_set_quality
为 100 - 添加了对
post_id
参数的支持(在旧版本中)
10/12/2015
- 版本 2.6
- 添加了在帖子中没有附件但内容中存在图片的情况下的支持
- 添加了在内容导入后附件 ID 不正确的情况下的支持,如果图片在当前服务器上(具有相同的文件夹结构),则脚本仍然可以找到该图片
14/9/2016
- 版本 2.7.1
- 修复了少量错误
- 在 jpg 上添加了 100 的质量
- 准备以数组形式使用参数
- 准备 TimThumb 过滤器
22/7/2015
- 版本 2.5
- 更新 Timthumb 到最新版本(2014 年 6 月)
- 从 timthumb-config.php 更改 TimThumb 的默认设置
- 添加 canvas 颜色参数
- 更新 htaccess 规则
- 各种小的改进
6/7/2015
- 版本 2.2
- 支持在循环外使用 Post ID
7/4/2015
- 版本 1.8
- 修复了与 WPML 兼容性相关的错误
- 支持 Photon
23/3/2015
- 版本 1.5
- 修复了与 WPML 兼容性相关的问题
2/12/2014
- 添加了对 WPML 的兼容性
3/2/2014
- 添加了 $nohtml 参数
- 添加了 $htaccess 变量
- 修复了各种错误
29/1/2014
发布
版本 1.0
鸣谢
TimThumbs(已停用): BinaryMoon
作者
Jany Martelli @ Shambix
许可
在 GPL v3 许可证 下发布