裁剪的特色图像替换图库中的原始图像

时间:2012-04-16 作者:Gilipe

首先,我尽可能彻底地做了研究。已经进行了搜索,但我没有找到任何关于我的确切问题的建议或解决方案

好了,该解释了。

目前我正在为一个客户开发一个画廊主题(我不是这个主题的原始开发人员,它是由办公室的另一个开发人员创建的)。主题相当简单,主页显示每个包含图像的帖子的220x170个缩略图。单击图像,出现带有全尺寸图像的页面。很简单。

现在我的麻烦开始了。客户端希望定义220x170缩略图中显示的图像区域,因为当前WordPress仅将图像居中。我这样做的过程是将图像上传到图库,插入帖子并保存。

然后单击Set Featured image. 主要问题从这里开始。我有两种方法可以解决这个问题,都会引起问题。如果裁剪图像,请选择Apply Changes to: Thumbnail, 保存,然后选择Use as featured image, 特色图像仍为全尺寸图像,只是调整大小以适应220x170大小。

起初,我以为我找到了一个解决方案,但我更倾向于称之为创可贴修复,我的客户宁愿下一步避免这种情况。如果我裁剪图像,现在使用All image sizes, 这会将正确裁剪的图像设置为thumnbnail,但显然会覆盖。。。所有图像大小。因此,如果我回到我的帖子(比方说我无意中删除了帖子中的图像)并想将其重新插入,那么现在库中的图像就是裁剪后的图像。

我试图寻找一些关于如何修复第一个问题的指导,其中裁剪后的缩略图不会显示在特色图像部分,而只显示全尺寸图像。

非常感谢。

2 个回复
SO网友:Travis Pflanz

听起来好像你的客户对图像编辑程序很在行。

只是在这里大声思考一下,但是你可以添加一个自定义的元框,让客户端上传2张图片。1-将焦点放在所需位置的较小图像2-用作“特色图像”的较大图像。

然后调用主题中的自定义图像和单击时的大图像。我知道这对客户来说是一个额外的步骤,但这是我过去在类似情况下使用的方法。

SO网友:Travis Pflanz

我有一个解决方案给你。它并不完美,但我已经根据您的需要对其进行了测试,它会起作用的。Wordpress中有一些“bug”,但我稍后会讨论它们。

在您的功能中。php,定义图像大小:

// Add Thumbnail Support
if ( function_exists( \'add_theme_support\' ) ) {

    add_theme_support( \'post-thumbnails\' );

    set_post_thumbnail_size( 220, 220, true );

    add_image_size( \'very-large\', 1024, 99999, false );
}
这只是您的大型图像的一个示例,以下是Wordpress Codex中的一些链接,以获取更多信息:

在主题中,使用

<img src="<?php $imgsrc = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), \'thumbnail\', false); echo $imgsrc[0]; ?>"> 
然后对于大图像,使用<?php the_post_thumbnail( \'very-large\' ); ?>

  • wp_get_attachment_image_src 获取“FeaturedImage”的源get_post_thumbnail_id 返回附加到帖子的缩略图的ID。“缩略图”是在Wordpress设置中设置的图像的“大小”。下一步,转到管理>>设置>>媒体>>缩略图大小。输入220宽度和170高度

    选中“将缩略图裁剪为精确尺寸(通常缩略图是成比例的)”

    这是一个明显的错误,我测试了200多种不同的方法,我设置了\\u post\\u thumbnail\\u大小(220,220,true);在函数中。但是也需要在Wordpress设置中以不同的方式设置维度,反之亦然

    现在,在发布新帖子/编辑帖子屏幕中:

    单击“设置特色图像”上传您的大图像,现在单击图像缩略图下方的“编辑图像”,在“图像裁剪”中单击并拖动要裁剪的图像选择,输入225作为宽度,输入171作为高度,例如:225:171在“缩略图设置”中,您必须选择“缩略图”,单击图像上方的裁剪图标crop icon

    您不能简单地从输入选择维度开始,必须先拖动选择

    我想你可以通过添加height="170px"width="220px" 在图像代码中。

    我真的希望有比我更聪明的人来改进这个方法,但这是我玩了两天之后能想到的最好的方法。

结束

相关推荐

Wordpress gallery shortag

我正在创建一个简单的幻灯片,在那里我想显示一篇文章中的4幅图像,我四处搜索,找到了这段代码,它只使用了内置的gallery功能<li><?php echo do_shortcode(\'[gallery id=\"\'.$post->ID.\'\"]\'); ?></li> 问题是它吐出了整个画廊。。。没有办法把这个限制在2,3吗?我试着用http://codex.wordpress.org/Function_Reference/get_the_post