如何压缩缩略图而不是裁剪

时间:2018-04-24 作者:Zhi V

我有一个控制台脚本,可以导入woocommerce产品,并为产品创建图像和缩略图。

问题是缩略图被裁剪了。我需要压缩所有生成的缩略图以保持原始图像。

用于将图像放入数据库和服务器的函数:

private function generateFeaturedImage($imageUrl, $postId, $isCategory = false)
    {

        $imageUrl   = $this->escapefileUrl($imageUrl);
        $imageUrl   = str_replace("%26", "&", $imageUrl);
        $uploadDir  = wp_upload_dir();
        $filename   = str_replace("%20", "-", basename($imageUrl));


        if(wp_mkdir_p($uploadDir[\'path\'])) {
            $file = $uploadDir[\'path\'] . \'/\' . $filename;
        } else {
            $file = $uploadDir[\'basedir\'] . \'/\' . $filename;
        }
        file_put_contents($file, file_get_contents($imageUrl));

        $fileType = wp_check_filetype($filename, null );
        $attachment = array(
            \'post_mime_type\' => $fileType[\'type\'],
            \'post_title\' => sanitize_file_name($filename),
            \'post_content\' => \'\',
            \'post_status\' => \'inherit\'
        );
        $attachId = wp_insert_attachment( $attachment, $file, $postId );
        require_once(ABSPATH . \'wp-admin/includes/image.php\');
        $attachData = wp_generate_attachment_metadata( $attachId, $file );
        wp_update_attachment_metadata( $attachId, $attachData );

        set_post_thumbnail( $postId, $attachId );

    }

1 个回复
SO网友:Oleg Butuzov

1) 检查options\\u表中的*\\u裁剪值。如果我们谈论标准wp缩略图,请搜索thumbnail_crop. 查找时删除该值或将其更改为0。

2) 测试。

结束

相关推荐

Get images by category

我目前获取滑块图像的方法是使用以下工作正常的代码:$args = array( \'post_type\' => \'attachment\', \'sort_order\' => \'ASC\', \'sort_column\' => \'menu_order\', ); $attachments = get_posts($args); if ($attachments) { $