仅为一个介质类别添加图像大小

时间:2015-02-18 作者:Bryan

add\\u image\\u size很好,但是如果我想在我的网站上为颜色/图案创建一个样本大小,我不需要为所有其他图像创建样本大小。

有没有办法按媒体类别应用图像大小?

我正在使用Media Category plugin 这将是根据类型生成图像大小的完美解决方案。

2 个回复
SO网友:Mark Kaplun

不,图像是全局的,您可以更改与它们关联的内容,此时您将需要不存在的大小。

您可以生成图像“;“在飞行中”;但这可能会减慢页面生成速度(取决于生成的图像信息的缓存方式),并可能会破坏代码;“推送”;进入CDN或像S3这样的云存储。

WordPress主题和插件似乎生成了太多的图像,但由于大多数以这种方式生成的图像都相对较小,而且存储成本较低,因此您似乎不需要担心编写足够的代码来优化它。

SO网友:Nathan

我使用了下面链接的代码来满足这样的要求。

https://gist.github.com/seedprod/1367237

这样做,您不会在每次通过媒体编辑器上载文件时都创建新的图像大小,而是仅在必要时创建。因此,本质上,您只需在模板中添加调用,以便在需要时“动态”调整图像大小。

因此,您需要将该代码添加到函数中。php,然后在您的类别中执行类似的操作。php文件:

<?php if (is_category(2)) {
    $thumb = get_post_thumbnail_id(); 
    $image = vt_resize( $thumb, \'\', 140, 110, true );
?>
<img src="<?php echo $image[url]; ?>" width="<?php echo $image[width]; ?>" height="<?php echo $image[height]; ?>" />
然后,ID为2的类别中的每个帖子都会显示在该页面上,并带有140 x 110的裁剪图像。

可以很容易地用在一个单一的。php文件,类似于:

<?php if (in_category(2)) {
    $thumb = get_post_thumbnail_id(); 
    $image = vt_resize( $thumb, \'\', 140, 110, true );
?>
<img src="<?php echo $image[url]; ?>" width="<?php echo $image[width]; ?>" height="<?php echo $image[height]; ?>" />
您只需在模板中设置一次,就再也不用担心了。这是最接近于不为您遇到的每个图像生成额外缩略图的事情,即使您可以编写一些代码来限制某些图像大小的生成只发生在特定类别的帖子上,您仍然需要将这样做的代码添加到函数中。php或使用插件,然后您还需要编辑您的类别。php或单个。php或任何可以区分类别的东西。

结束

相关推荐

Featured images get shrunken

上传特色图片时,我遇到的问题是,所有图片都会自动缩小。我想保留原始图像。检查this example. 所有员工的图片都会自动缩小,但在特色图片中,我上传了员工的完整图片。我认为图像太大,wordpress会自动缩小图像,因此,我在媒体库中缩放并裁剪了图像。一些图像已修复,但一些图像仍然存在问题。有没有一种方法可以让原始上传的图像按原样显示?