缩略图缩放不是硬裁剪

时间:2014-04-16 作者:gfaw

最近我想用特色图片/帖子缩略图升级我的博客。我正在使用一个基于根主题的自定义主题(我相信这不是根主题的问题)。我上传的图像为1024x768,应裁剪为1024x512的信箱格式。

这是我在主题文件中使用的代码:

<?php
    if ( has_post_thumbnail() ) {
    the_post_thumbnail(array(1024, 512), array(\'class\' => \'img-responsive\')); // add post thumbnail
        }
    ?>
现在,问题是,在我本地的XAMPP盒上,它工作得非常好。但在Web服务器上,图像不会被裁剪,也不会像在本地安装上那样跨越主内容区域的整个宽度。用Firebug检查代码,图像宽682px,高512px(XAMPP框上为1024 x 512px)。因此,图像是缩放的,而不是裁剪的。

我重新上传了主题,并禁用了所有插件。当然,我搜索了相关主题,尝试了其他代码示例,检查了GD是否已启用,并重新生成了拇指。所有这些都没有解决问题。

非常感谢您的任何想法。

3 个回复
SO网友:Chip Bennett

the Codex entry for the_post_thumbnail(), 传递数组自WordPress 3.0以来一直不起作用:

请注意:作物在WP 3.0+中不工作。WP 3.0+所需要的只是调用缩略图来发布。然后转到仪表板中的“媒体”,并将缩略图设置为所需大小。

正确的实现方法是使用数组值创建自定义图像大小,通过add_image_size() 在主题设置函数(或任何其他连接到after_setup_theme):

add_image_size( \'custom-size\', 1024, 512, true );
。。。然后直接调用该大小:

the_post_thumbnail( \'custom-size\' );

SO网友:Fyn

通常,如果要裁剪缩略图,必须使用“true”作为第三个参数。

array(1024, 512, true)
如果您在函数中定义了缩略图大小,至少您可以这样做。php。因此,我想它应该也适用于\\u post\\u缩略图数组:)好吧,如果不行,您仍然可以在函数中定义缩略图大小。php并使用该。。。

以下是参考资料:http://codex.wordpress.org/Function_Reference/set_post_thumbnail_size

SO网友:gfaw

以下是解决问题的方法(可能不是最优雅的解决方案,但目前正在努力:

按惯例。php(根主题的functions.php)我添加了以下内容:

 if ( function_exists( \'add_theme_support\' ) ) {
add_theme_support( \'post-thumbnails\' );
    set_post_thumbnail_size(1024, 512, true);
}

在出现特色图像的主题文件中,我添加了以下内容:

    if ( has_post_thumbnail() ) {
the_post_thumbnail(array(1024, 512, true), array(\'class\' => \'img-responsive\')); // add post thumbnail
    }
?>
我不明白的是,没有另一个,两者都不起作用。不管怎样,现在它解决了这个问题

结束

相关推荐

本地主机XAMPP上的WordPress子域MULSITE:8080,IIS采用端口80

我目前有64位Windows 7,我正在本地主机80上运行IIS,我在本地主机8080上安装了XAMPP。我有15个单独的wordpress站点,但现在我需要一个子域多站点wordpress。我创建了wp。dev:8080,并正确修改了apache虚拟文件。在我添加define(\'WP_ALLOW_MULTISITE\', true); 到配置文件。当我单击wordpress中的new Network(新网络)菜单选项时,出现了一个错误:错误:无法使用服务器地址安装站点网络。不能使用端口号,例如:808