[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fW8vmzRONXeP4fdBQGRAdJO7J3PWCQZWMc5bdWY7EeWI":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":17,"requires_php":18,"tags":19,"homepage":25,"download_link":26,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":38,"analysis":143,"fingerprints":258},"better-image-sizes","Better image sizes","3.9","kubiq","https:\u002F\u002Fprofiles.wordpress.org\u002Fkubiq\u002F","\u003Cp>This plugin is ment mostly for developers. You need to use its functions in your theme or plugin to make it works.\u003C\u002Fp>\n\u003Cp>This plugin offers functionality like \u003Cstrong>face detection crop\u003C\u002Fstrong>, \u003Cstrong>focal point selector\u003C\u002Fstrong> for every image, \u003Cstrong>function to output responsive \u003Cpicture> sizes\u003C\u002Fstrong> and more.\u003C\u002Fp>\n\u003Ch3>Why to use this plugin?\u003C\u002Fh3>\n\u003Cp>WordPress will automatically create a lot of smaller images for every uploaded image.\u003Cbr \u002F>\nYou mostly need just 1 or 2 of them, so this is a waste of your server space and resources.\u003Cbr \u002F>\nAlso cropped images are generated from the center by default, which can be a problem many times.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>This plugin allows you to:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>disable autogenerated image sizes\u003C\u002Fli>\n\u003Cli>dynamically generate only needed image sizes for only needed images\u003C\u002Fli>\n\u003Cli>delete generated image sizes from this plugin individually or all together\u003C\u002Fli>\n\u003Cli>specify different focal point that will be in the focus while creating cropped versions of the image\u003C\u002Fli>\n\u003Cli>automatically detect focal point by face detection algorithm\u003C\u002Fli>\n\u003Cli>disable big image size threshold, so image bigger than 2560x2560px will be NOT scaled down\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How it works\u003C\u002Fh3>\n\u003Col>\n\u003Cli>if you disable existing autogenerated image sizes, then newly uploaded images will not create its sizes\u003C\u002Fli>\n\u003Cli>you need to specify in your code what size is needed for the image\u003C\u002Fli>\n\u003Cli>image is dynamically created on the first visit of the page and is stored in \u003Ccode>uploads\u003C\u002Fcode> folder\u003C\u002Fli>\n\u003Cli>every next visit of that page will just load already generated image\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Functions\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>bis_get_attachment_image_src( $attachment_id, $size, $crop )\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Function inspired by default \u003Ccode>wp_get_attachment_image_src\u003C\u002Fcode>.\u003Cbr \u002F>\nIf you used \u003Cem>Fly Dynamic Image Resizer\u003C\u002Fem> before, you don’t need to replace \u003Ccode>fly_get_attachment_image_src\u003C\u002Fcode> functions in your code – there is a fallback, so you can deactivate \u003Cem>Fly Dynamic Image Resizer\u003C\u002Fem> and it will still work.\u003C\u002Fp>\n\u003Cp>Parameters:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>attachment_id\u003C\u002Fstrong> (integer)(required)\u003Cbr \u002F>\nThe ID of the image attachment\u003Cbr \u002F>\nExample: \u003Ccode>123\u003C\u002Fcode> or \u003Ccode>get_post_thumbnail_id()\u003C\u002Fcode> or \u003Ccode>get_field('my_image')\u003C\u002Fcode>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>size\u003C\u002Fstrong> (array)(required)\u003Cbr \u002F>\nAn array with the width and height\u003Cbr \u002F>\nExample: \u003Ccode>[ 1920, 1080 ]\u003C\u002Fcode>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>crop\u003C\u002Fstrong> (boolean\u002Finteger\u002Farray\u002Fstring)(optional)\u003Cbr \u002F>\nSkip this or pass \u003Ccode>false\u003C\u002Fcode> or \u003Ccode>0\u003C\u002Fcode> if you don’t want to crop, just rescale,\u003Cbr \u002F>\notherwise pass \u003Ccode>true\u003C\u002Fcode> or \u003Ccode>1\u003C\u002Fcode> to use focal point crop that is selected in admin media (by default center),\u003Cbr \u002F>\nor pass array with string x-axis and y-axis parameters like \u003Ccode>[ 'right', 'bottom' ]\u003C\u002Fcode>\u003Cbr \u002F>\nor pass array with numeric x-axis and y-axis parameters like \u003Ccode>[ 0.5, 0.8 ]\u003C\u002Fcode>\u003Cbr \u002F>\nor pass string \u003Ccode>'face'\u003C\u002Fcode> to automatically detect face position (can be exhaustive on server resources)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Returns:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>array(\n    'src' => (string) url of the image,\n    'width' => (integer) width in pixels,\n    'height' => (integer) height in pixels\n)\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>&nbsp;\u003C\u002Fp>\n\u003Cp>\u003Cstrong>bis_get_attachment_image( $attachment_id, $size, $crop, $attr )\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Function inspired by default \u003Ccode>wp_get_attachment_image\u003C\u002Fcode>.\u003Cbr \u002F>\nIf you used \u003Cem>Fly Dynamic Image Resizer\u003C\u002Fem> before, you don’t need to replace \u003Ccode>fly_get_attachment_image\u003C\u002Fcode> functions in your code – there is a fallback, so you can deactivate \u003Cem>Fly Dynamic Image Resizer\u003C\u002Fem> and it will still work.\u003C\u002Fp>\n\u003Cp>Parameters:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>attachment_id\u003C\u002Fstrong> (integer)(required)\u003Cbr \u002F>\nThe ID of the image attachment\u003Cbr \u002F>\nExample: \u003Ccode>123\u003C\u002Fcode> or \u003Ccode>get_post_thumbnail_id()\u003C\u002Fcode> or \u003Ccode>get_field('my_image')\u003C\u002Fcode>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>size\u003C\u002Fstrong> (array)(required)\u003Cbr \u002F>\nAn array with the width and height\u003Cbr \u002F>\nExample: \u003Ccode>[ 1920, 1080 ]\u003C\u002Fcode>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>crop\u003C\u002Fstrong> (boolean\u002Finteger\u002Farray\u002Fstring)(optional)\u003Cbr \u002F>\nSkip this or pass \u003Ccode>false\u003C\u002Fcode> or \u003Ccode>0\u003C\u002Fcode> if you don’t want to crop, just rescale,\u003Cbr \u002F>\notherwise pass \u003Ccode>true\u003C\u002Fcode> or \u003Ccode>1\u003C\u002Fcode> to use focal point crop that is selected in admin media (by default center),\u003Cbr \u002F>\nor pass array with string x-axis and y-axis parameters like \u003Ccode>[ 'right', 'bottom' ]\u003C\u002Fcode>\u003Cbr \u002F>\nor pass array with numeric x-axis and y-axis parameters like \u003Ccode>[ 0.5, 0.8 ]\u003C\u002Fcode>\u003Cbr \u002F>\nor pass string \u003Ccode>'face'\u003C\u002Fcode> to automatically detect face position (can be exhaustive on server resources)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>attr\u003C\u002Fstrong> (array)(optional)\u003Cbr \u002F>\nAn array of attributes\u003Cbr \u002F>\nSpecial attribute \u003Ccode>retina\u003C\u002Fcode> allows you to automatically generate srcset for \u003Ccode>@2x\u003C\u002Fcode> retina devices\u003Cbr \u002F>\nExample: \u003Ccode>array( 'retina' => true, 'alt' => 'Custom alt text', 'class' => 'my-class', 'id' => 'my-id' )\u003C\u002Fcode>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Returns:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003Cimg src=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F1234\u002Fyour-image-500x500-f50_50.jpg\" width=\"500\" height=\"500\" alt=\"Alt text\">\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>&nbsp;\u003C\u002Fp>\n\u003Cp>\u003Cstrong>bis_get_attachment_picture( $attachment_id, $sizes, $attr )\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Parameters:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>attachment_id\u003C\u002Fstrong> (integer)(required)\u003Cbr \u002F>\nThe ID of the image attachment\u003Cbr \u002F>\nExample: \u003Ccode>123\u003C\u002Fcode> or \u003Ccode>get_post_thumbnail_id()\u003C\u002Fcode> or \u003Ccode>get_field('my_image')\u003C\u002Fcode>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>sizes\u003C\u002Fstrong> (array)(required)\u003Cbr \u002F>\nAn array with the \u003Ccode>key => value\u003C\u002Fcode> pair\u003Cbr \u002F>\nwhere \u003Ccode>key\u003C\u002Fcode> means \u003Cstrong>breakpoint\u003C\u002Fstrong>\u003Cbr \u002F>\nand \u003Ccode>value\u003C\u002Fcode> is array of \u003Cstrong>width, height, crop and alternative_attachment_id\u003C\u002Fstrong>\u003Cbr \u002F>\nExample: \u003Ccode>[ 767 => [ 767, 400, 1, 987 ], 9999 => [ 1200, 500, 1 ] ]\u003C\u002Fcode>\u003Cbr \u002F>\nThis will generate \u003Ccode>\u003Csource media=\"(max-width:767px)\" srcset=\"image987_767x400.jpg\">\u003C\u002Fcode>\u003Cbr \u002F>\nand \u003Ccode>\u003Csource media=\"(max-width:9999px)\" srcset=\"image_1200x500.jpg\">\u003C\u002Fcode>\u003Cbr \u002F>\nand \u003Ccode>\u003Csource media=\"(min-width:10000px)\" srcset=\"image.jpg\">\u003C\u002Fcode>\u003Cbr \u002F>\nIf you will provide also key \u003Ccode>0\u003C\u002Fcode> then it will replace \u003Ccode>\u003Cimg>\u003C\u002Fcode>.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>attr\u003C\u002Fstrong> (array)(optional)\u003Cbr \u002F>\nAn array of attributes\u003Cbr \u002F>\nSpecial attribute \u003Ccode>retina\u003C\u002Fcode> allows you to automatically generate srcset for \u003Ccode>@2x\u003C\u002Fcode> retina devices\u003Cbr \u002F>\nExample: \u003Ccode>array( 'retina' => true, 'alt' => 'Custom alt text', 'class' => 'my-class', 'id' => 'my-id' )\u003C\u002Fcode>\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Example:\u003Cbr \u002F>\nTo generate perfect fullwidth hero image, that will looks great on 4K devices and also on small phones, but it will load only needed size, you can use:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>echo bis_get_attachment_picture(\n    get_post_thumbnail_id(),\n    [\n        375 => [ 375, 500, 1, 987 ],\n        575 => [ 575, 500, 1, 987 ],\n        767 => [ 767, 500, 1, 987 ],\n        991 => [ 991, 500, 1 ],\n        1199 => [ 1199, 500, 1 ],\n        1399 => [ 1399, 500, 1 ],\n        1600 => [ 1600, 500, 1 ],\n        1920 => [ 1920, 500, 1 ],\n        2560 => [ 2560, 500, 1 ],\n        3440 => [ 3440, 500, 1 ],\n        3840 => [ 3840, 500, 1 ],\n    ]\n);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Returns:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u003Cpicture>\n    \u003Csource media=\"(max-width:375px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F987\u002Fyour-image-375x500-f50_50.jpg\">\n    \u003Csource media=\"(max-width:575px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F987\u002Fyour-image-575x500-f50_50.jpg\">\n    \u003Csource media=\"(max-width:767px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F987\u002Fyour-image-767x500-f50_50.jpg\">\n    \u003Csource media=\"(max-width:991px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F123\u002Fyour-image-991x500-f50_50.jpg\">\n    \u003Csource media=\"(max-width:1199px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F123\u002Fyour-image-1199x500-f50_50.jpg\">\n    \u003Csource media=\"(max-width:1399px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F123\u002Fyour-image-1399x500-f50_50.jpg\">\n    \u003Csource media=\"(max-width:1600px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F123\u002Fyour-image-1600x500-f50_50.jpg\">\n    \u003Csource media=\"(max-width:1920px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F123\u002Fyour-image-1920x500-f50_50.jpg\">\n    \u003Csource media=\"(max-width:2560px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F123\u002Fyour-image-2560x500-f50_50.jpg\">\n    \u003Csource media=\"(max-width:3440px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F123\u002Fyour-image-3440x500-f50_50.jpg\">\n    \u003Csource media=\"(max-width:3840px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002Fbis-images\u002F123\u002Fyour-image-3840x500-f50_50.jpg\">\n    \u003Csource media=\"(min-width:3841px)\" srcset=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002F2022\u002F11\u002Fyour-image.jpg\">\n    \u003Cimg width=\"4000\" height=\"2000\" src=\"https:\u002F\u002Fweb.com\u002Fwp-content\u002Fuploads\u002F2022\u002F11\u002Fyour-image.jpg\" alt=\"Some alt\" loading=\"lazy\">\n\u003C\u002Fpicture>\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>&nbsp;\u003C\u002Fp>\n\u003Ch3>There is no fallback for \u003Ccode>fly_add_image_size\u003C\u002Fcode> function\u003C\u002Fh3>\n\u003Cp>If you used \u003Cem>Fly Dynamic Image Resizer\u003C\u002Fem> before, you need to remove \u003Ccode>fly_add_image_size\u003C\u002Fcode> functions from your code.\u003Cbr \u002F>\nYou can create your own variables for sizes if you need it, like\u003C\u002Fp>\n\u003Cpre>\u003Ccode>define( 'MY_CUSTOM_SIZE', [ 1000, 200 ] );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>and then just us it inside functions, like:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>echo bis_get_attachment_image( get_post_thumbnail_id(), MY_CUSTOM_SIZE );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>&nbsp;\u003C\u002Fp>\n\u003Ch3>Support other extensions than JPG, PNG and WEBP\u003C\u002Fh3>\n\u003Cp>This plugin works by default only with JPG, PNG and WEBP files,\u003Cbr \u002F>\nbut you can easily allow any other mime types,\u003Cbr \u002F>\njust use this code eg. in \u003Ccode>wp-config.php\u003C\u002Fcode> or in your \u003Ccode>functions.php\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>define( 'BIS_ALLOWED_MIME_TYPES', array( 'image\u002Fjpeg', 'image\u002Fpng', 'any_other\u002Fmime_type' ) );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>&nbsp;\u003C\u002Fp>\n\u003Ch3>Get selected image focal point\u003C\u002Fh3>\n\u003Cp>Focal point data are stored in the attachement post metas.\u003Cbr \u002F>\nThere is also custom sanitize function, that you can use.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$focal_point = sanitize_focal_point( get_post_meta( get_post_thumbnail_id(), 'focal_point', true ) );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Returns:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>array( 0.5, 0.8 )\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>which means that focal point is 50% from left and 80% from top\u003C\u002Fp>\n","Dynamically generate only needed image sizes for only needed images, with manually selected focal point for crops",2000,21720,100,5,"2025-12-01T23:18:00.000Z","6.9.4","3.0.1","5.6",[20,21,22,23,24],"media","optimize","responsive","retina","thumbnails","https:\u002F\u002Fwp-speedup.eu","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbetter-image-sizes.3.9.zip",0,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":33,"avg_security_score":34,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},13,135980,99,468,78,"2026-04-04T03:51:30.388Z",[39,62,84,106,125],{"slug":40,"name":41,"version":42,"author":43,"author_profile":44,"description":45,"short_description":46,"active_installs":47,"downloaded":48,"rating":49,"num_ratings":50,"last_updated":51,"tested_up_to":16,"requires_at_least":52,"requires_php":53,"tags":54,"homepage":58,"download_link":59,"security_score":34,"vuln_count":60,"unpatched_count":27,"last_vuln_date":61,"fetched_at":29},"wp-retina-2x","Perfect Images: Regenerate Thumbnails, Image Sizes, WebP & AVIF","7.1.4","Jordy Meow","https:\u002F\u002Fprofiles.wordpress.org\u002Ftigroumeow\u002F","\u003Cp>\u003Cstrong>Perfect Images handles the basics of WordPress image management that should have been built-in from the start.\u003C\u002Fstrong> Manage image sizes, disable the ones you don’t need, add custom sizes, and regenerate thumbnails in bulk. It’s the essential foundation every WordPress install needs for clean, efficient image handling.\u003C\u002Fp>\n\u003Cp>Think of it as your image management base layer. WordPress creates too many sizes? Disable them. Need a custom thumbnail size? Add it. Want retina support or modern formats like WebP\u002FAVIF? Enable those modules. Perfect Images gives you complete control without bloat.\u003C\u002Fp>\n\u003Cp>Explore \u003Ca href=\"https:\u002F\u002Fmeowapps.com\u002Fwp-retina-2x\" rel=\"nofollow ugc\">our official site\u003C\u002Fa> and check out \u003Ca href=\"https:\u002F\u002Fmeowapps.com\u002Fwp-retina-2x\u002Ftutorial\u002F\" rel=\"nofollow ugc\">the tutorial\u003C\u002Fa> to get started.\u003C\u002Fp>\n\u003Ch3>Core Features\u003C\u002Fh3>\n\u003Cp>⚙️ \u003Cstrong>Image Size Management\u003C\u002Fstrong>\u003Cbr \u002F>\nThe foundation of everything. View all registered image sizes (WordPress defaults, theme sizes, plugin sizes), disable the ones you don’t need, and add custom sizes. Finally, control over those pesky WordPress-generated sizes like \u003Ccode>medium_large\u003C\u002Fcode>, \u003Ccode>1536x1536\u003C\u002Fcode>, and \u003Ccode>2048x2048\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>🔄 \u003Cstrong>Regenerate Thumbnails\u003C\u002Fstrong>\u003Cbr \u002F>\nBulk regenerate thumbnails after changing sizes or switching themes. Progress tracking, smart processing, and automatic cleanup of old unused sizes.\u003C\u002Fp>\n\u003Cp>🖼️ \u003Cstrong>Retina Images (Module)\u003C\u002Fstrong>\u003Cbr \u002F>\nOptional module for high-DPI displays. Automatically generate and serve crisp @2x versions of your thumbnails. Works seamlessly with WordPress responsive images.\u003C\u002Fp>\n\u003Cp>🎨 \u003Cstrong>Modern Formats (Module)\u003C\u002Fstrong>\u003Cbr \u002F>\nOptional WebP\u002FAVIF conversion. Convert images to modern formats for smaller file sizes and faster loading—without replacing your originals.\u003C\u002Fp>\n\u003Cp>🚀 \u003Cstrong>Easy IO (Module)\u003C\u002Fstrong>\u003Cbr \u002F>\nOptional CDN-based image optimization via EWWW. Automatically converts and delivers your images in WebP\u002FAVIF, resizes on the fly, and serves them from a global CDN—zero server configuration required.\u003C\u002Fp>\n\u003Cp>🤖 \u003Cstrong>AI Features (Module)\u003C\u002Fstrong>\u003Cbr \u002F>\nOptional AI-powered tools. Upscale images via Claid.ai when your source is too small, or use the AI Assistant to analyze your sizes and recommend which to enable or disable based on your theme’s srcset needs.\u003C\u002Fp>\n\u003Ch3>🖼️ Retina Images\u003C\u002Fh3>\n\u003Cp>Your visitors expect sharp, crisp images. Perfect Images makes retina support effortless.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Smart Generation:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Automatic retina creation for all thumbnail sizes\u003C\u002Fli>\n\u003Cli>Multiple delivery methods (Responsive Images, PictureFill, Retina.js)\u003C\u002Fli>\n\u003Cli>Works with WordPress srcset natively\u003C\u002Fli>\n\u003Cli>Full-size retina support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Delivery Options:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Responsive Images: Modern, standard method\u003C\u002Fli>\n\u003Cli>PictureFill: Hybrid approach with fallbacks\u003C\u002Fli>\n\u003Cli>Retina.js: Client-side detection\u003C\u002Fli>\n\u003Cli>Choose what fits your theme best\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🎨 Modern Formats\u003C\u002Fh3>\n\u003Cp>WebP and AVIF offer dramatically better compression than JPEG\u002FPNG—up to 50% smaller files with the same visual quality.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What You Get:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Generate WebP or AVIF for any image size\u003C\u002Fli>\n\u003Cli>Automatic browser detection and fallbacks\u003C\u002Fli>\n\u003Cli>Works alongside your original images\u003C\u002Fli>\n\u003Cli>Enable for thumbnails or full-size\u003C\u002Fli>\n\u003Cli>Responsive Images delivery built-in\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>🤖 AI Features\u003C\u002Fh3>\n\u003Cp>Perfect Images integrates with AI services to help you manage and optimize your images smarter.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>AI Assistant:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Analyzes your image sizes and recommends which to enable or disable\u003C\u002Fli>\n\u003Cli>Detects redundant retina sizes already covered by other thumbnails\u003C\u002Fli>\n\u003Cli>Understands srcset behavior—sizes don’t need to be pixel-perfect\u003C\u002Fli>\n\u003Cli>Requires \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fai-engine\u002F\" rel=\"ugc\">AI Engine\u003C\u002Fa> plugin\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Upscaling (via Claid.ai):\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Generate retina images without 2x source files\u003C\u002Fli>\n\u003Cli>Create thumbnails larger than the original image\u003C\u002Fli>\n\u003Cli>Multiple upscaling modes (Smart Enhance, Digital Art, Photo, etc.)\u003C\u002Fli>\n\u003Cli>Automatic or manual processing\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>⚙️ Image Tools\u003C\u002Fh3>\n\u003Cp>The Image Tools dashboard lets you manage all your media in one place—regenerate thumbnails, build retina images, generate WebP\u002FAVIF, and more, individually or in bulk.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Regenerate Thumbnails:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Bulk regenerate all thumbnails\u003C\u002Fli>\n\u003Cli>Progress tracking for large libraries\u003C\u002Fli>\n\u003Cli>Preserves custom crops\u003C\u002Fli>\n\u003Cli>Updates retina and WebP versions automatically\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Replace Images:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Swap images directly from Media Library\u003C\u002Fli>\n\u003Cli>Drag & drop replacement in dashboard\u003C\u002Fli>\n\u003Cli>Maintains all metadata and links\u003C\u002Fli>\n\u003Cli>Updates all thumbnails instantly\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Manage Sizes:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>View all registered image sizes\u003C\u002Fli>\n\u003Cli>Disable unwanted sizes (medium_large, 1536×1536, etc.)\u003C\u002Fli>\n\u003Cli>Create custom sizes\u003C\u002Fli>\n\u003Cli>Track which sizes are enabled per image\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Disable Image Threshold:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Stop WordPress from creating “-scaled” versions\u003C\u002Fli>\n\u003Cli>Keep your original full-size images intact\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Pro Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Full-size retina images\u003C\u002Fli>\n\u003Cli>Full-size WebP\u002FAVIF conversion\u003C\u002Fli>\n\u003Cli>Priority support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Why Perfect Images?\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Essential Foundation\u003C\u002Fstrong>\u003Cbr \u002F>\nEvery WordPress site needs proper image size management and thumbnail control. Perfect Images makes it simple, giving you the baseline image handling WordPress should have included.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Modular & Lightweight\u003C\u002Fstrong>\u003Cbr \u002F>\nStart with just image size management and thumbnail regeneration. Enable retina, WebP, Easy IO, or AI modules only when you need them. No bloat, no unnecessary features.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Works with Everything\u003C\u002Fstrong>\u003Cbr \u002F>\nCompatible with WooCommerce, page builders, galleries, and any theme. It uses WordPress’s native image handling, so there are no conflicts.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>No Database Bloat\u003C\u002Fstrong>\u003Cbr \u002F>\nEverything works through WordPress’s existing metadata structure. No custom tables, no performance overhead.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Built for Real Workflows\u003C\u002Fstrong>\u003Cbr \u002F>\nDeveloped by someone who manages dozens of WordPress sites. Every feature solves a real problem we’ve encountered over years of WordPress development.\u003C\u002Fp>\n","Optimize image sizes, regenerate thumbnails, enable retina, convert to WebP\u002FAVIF, or use cloud optimization. An essential image toolkit.",70000,5882377,96,278,"2026-03-10T02:27:00.000Z","6.0","7.4",[55,56,23,24,57],"avif","regenerate","webp","https:\u002F\u002Fmeowapps.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-retina-2x.7.1.4.zip",3,"2023-11-28 00:00:00",{"slug":63,"name":64,"version":65,"author":66,"author_profile":67,"description":68,"short_description":69,"active_installs":70,"downloaded":71,"rating":72,"num_ratings":73,"last_updated":74,"tested_up_to":75,"requires_at_least":76,"requires_php":77,"tags":78,"homepage":82,"download_link":83,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"crop-thumbnails","Crop-Thumbnails","1.9.7","Volkmar Kantor","https:\u002F\u002Fprofiles.wordpress.org\u002Fvolkmar-kantor\u002F","\u003Cp>The plugin provides the functionality to adjust the crop region of cropped images. It add buttons to the edit-pages and media-dialog to access a crop-editor.\u003Cbr \u002F>\nIn the crop-editor you can choose one or more (if they have the same ratio) imagesizes and cut-off the part of the image you want.\u003C\u002Fp>\n\u003Cp>The plugin is especially useful for theme developers who want to keep full control over cropped image sizes. If you want to dive even deeper, you can get informations about the hooks and filters on the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fvollyimnetz\u002Fcrop-thumbnails\" rel=\"nofollow ugc\">github page of the plugin\u003C\u002Fa>.\u003C\u002Fp>\n","\"Crop Thumbnails\" made it easy to get exacly that specific image-detail you want to show in your featured image or gallery image.",40000,836379,92,67,"2025-12-03T10:59:00.000Z","6.8.5","5.0","7.4.0",[79,80,81],"images","media-library","post-thumbnails","https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fcrop-thumbnails\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcrop-thumbnails.1.9.7.zip",{"slug":85,"name":86,"version":87,"author":88,"author_profile":89,"description":90,"short_description":91,"active_installs":92,"downloaded":93,"rating":94,"num_ratings":95,"last_updated":96,"tested_up_to":16,"requires_at_least":52,"requires_php":97,"tags":98,"homepage":104,"download_link":105,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"image-sizes","ThumbPress – Image Management Suite for Performance and Optimization","5.8.37","Codexpert, Inc","https:\u002F\u002Fprofiles.wordpress.org\u002Fcodexpert\u002F","\u003Cp>🚀 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002F\" rel=\"nofollow ugc\">Pro Version\u003C\u002Fa> | 🔵 \u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002FThumbPressCo\u002F\" rel=\"nofollow ugc\">Facebook\u003C\u002Fa> | 🐦 \u003Ca href=\"https:\u002F\u002Ftwitter.com\u002FThumbPressCo\u002F\" rel=\"nofollow ugc\">Twitter\u003C\u002Fa> | 👥 \u003Ca href=\"https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fthumbpress\u002F\" rel=\"nofollow ugc\">LinkedIn\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>How many images and thumbnails do you have on your WordPress site? Can’t count, right?\u003C\u002Fp>\n\u003Cp>Managing those images and thumbnails is harder than counting them. ThumbPress, the one-stop WordPress image management plugin makes this easier than ever.\u003C\u002Fp>\n\u003Cp>Check out the exciting features below:\u003C\u002Fp>\n\u003Ch3>👉 All ThumbPress Features to Supercharge Your WordPress Image Management\u003C\u002Fh3>\n\u003Cp>💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdisable-thumbnails\u002F\" rel=\"nofollow ugc\">Disable Thumbnails\u003C\u002Fa>\u003Cbr \u002F>\n💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fregenerate-thumbnails\u002F\" rel=\"nofollow ugc\">Regenerate Thumbnails\u003C\u002Fa>\u003Cbr \u002F>\n💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdetect-unused-images\u002F\" rel=\"nofollow ugc\">Find Unused Images\u003C\u002Fa> [Pro]\u003Cbr \u002F>\n💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fimage-upload-limit\u002F\" rel=\"nofollow ugc\">Set Image Upload Limit\u003C\u002Fa>\u003Cbr \u002F>\n💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdetect-large-images\u002F\" rel=\"nofollow ugc\">Detect Large Images\u003C\u002Fa> [Pro]\u003Cbr \u002F>\n💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fcompress-images\u002F\" rel=\"nofollow ugc\">Image Compression\u003C\u002Fa> [Pro]\u003Cbr \u002F>\n💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Freplace-image-with-new-version\u002F\" rel=\"nofollow ugc\">Replace Images\u003C\u002Fa> [Pro]\u003Cbr \u002F>\n💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fset-social-media-thumbnails\u002F\" rel=\"nofollow ugc\">Set Social Media Thumbnails\u003C\u002Fa>\u003Cbr \u002F>\n💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fimage-editor\u002F\" rel=\"nofollow ugc\">Image Editor\u003C\u002Fa> [Pro]\u003Cbr \u002F>\n💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fconvert-images-to-webp\u002F\" rel=\"nofollow ugc\">Convert to WebP\u003C\u002Fa>\u003Cbr \u002F>\n💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdisable-right-click\u002F\" rel=\"nofollow ugc\">Disable Right Click on Image\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Here are some of the key features of the ThumbPress plugin for WordPress Image Management –\u003C\u002Fp>\n\u003Ch4>🚀 Disable Thumbnails\u003C\u002Fh4>\n\u003Cp>When you upload an image using Media Uploader, WordPress generates multiple copies\u002Fthumbnails of that image. By default, WordPress generates 5 thumbnails:\u003Cbr \u002F>\n– Thumbnail\u003Cbr \u002F>\n– Medium\u003Cbr \u002F>\n– Medium-large\u003Cbr \u002F>\n– Large\u003Cbr \u002F>\n– Scaled\u003C\u002Fp>\n\u003Cp>Along with this, your themes and plugins add more thumbnails and most of these thumbnails remain unused.\u003C\u002Fp>\n\u003Cp>The result? Unnecessary additional images eat up your server space and slow down your site!\u003C\u002Fp>\n\u003Cp>This is where the Disable feature comes into the picture. Just install the plugin and choose which of the image sizes you want to prevent from generating.\u003C\u002Fp>\n\u003Ch4>🚀 Regenerate Thumbnails\u003C\u002Fh4>\n\u003Cp>Regenerate thumbnails on your WordPress site at any moment, regardless of their sizes. No more worrying about lost thumbnails — our WordPress plugin guarantees swift restoration, keeping your site’s visual appeal flawless and consistent. Start now and rebuild thumbnails on your WordPress site.\u003C\u002Fp>\n\u003Ch4>🚀 Social Media Thumbnails\u003C\u002Fh4>\n\u003Cp>ThumbPress enables you to assign unique thumbnails for various social media platforms, ensuring that an image intended for Facebook remains uncropped when shared on Twitter or LinkedIn. You can upload distinct thumbnails for each social media site.\u003C\u002Fp>\n\u003Ch4>🚀 Image Upload Limit\u003C\u002Fh4>\n\u003Cp>Set a maximum limit for image upload size and resolution to ensure faster loading times. Our feature allows you to customize these parameters according to your website requirements and prevent oversized images from slowing down your site.\u003C\u002Fp>\n\u003Ch4>🚀 Convert Images to WebP\u003C\u002Fh4>\n\u003Cp>In WordPress convert images to WebP in bulk or one by one without any effort. Convert JPG or PNG to WebP from the comfort of your favorite WordPress dashboard and upgrade your website’s performance without sacrificing image quality. This advanced function ensures your images remain crisp and clear while reducing file size compared to traditional formats. The image conversion to WebP format helps you in SEO and gets you better rankings as Google recommends this format.\u003C\u002Fp>\n\u003Ch4>🚀 Disable Right Click on Image\u003C\u002Fh4>\n\u003Cp>Disable the right-click function on your website, a simple yet effective way to deter visitors from downloading or copying your images and thumbnails. It’s a preventive measure that adds an extra layer of protection to your digital assets and keeps your visuals exclusive to your site.\u003C\u002Fp>\n\u003Ch3>👉 ThumbPress Pro Features\u003C\u002Fh3>\n\u003Cp>🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdetect-large-images\u002F\" rel=\"nofollow ugc\">Detect Large Images\u003C\u002Fa> [Pro]\u003Cbr \u002F>\n🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdetect-unused-images\u002F\" rel=\"nofollow ugc\">Detect Unused Images\u003C\u002Fa> [Pro]\u003Cbr \u002F>\n🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fcompress-images\u002F\" rel=\"nofollow ugc\">Compress Images\u003C\u002Fa> [Pro]\u003Cbr \u002F>\n🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Freplace-image-with-new-version\u002F\" rel=\"nofollow ugc\">Replace Image with New Version\u003C\u002Fa> [Pro]\u003Cbr \u002F>\n🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fimage-editor\u002F\" rel=\"nofollow ugc\">Image Editor\u003C\u002Fa> [Pro]\u003C\u002Fp>\n\u003Cp>Check out our \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002F\" rel=\"nofollow ugc\">Pro Features\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fpricing\u002F\" rel=\"nofollow ugc\">Pricing Plans\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>🌟 Detect Large Images\u003C\u002Fh4>\n\u003Cp>Find and compress oversized images, or delete them entirely to get back valuable server space. It’s a great way to improve user experience by speeding up your site’s loading time and streamlining media files directly on the WordPress dashboard.\u003C\u002Fp>\n\u003Ch4>🌟 Find & Delete Unused Images on WordPress\u003C\u002Fh4>\n\u003Cp>Find unused images on WordPress and delete them by simply using ThumbPress. Unused images eat up your server space without adding any value to your website audiences. ThumbPress makes it easy for you to find all unused images and remove them from a very user-friendly interface with ThumbPress image optimizer.\u003C\u002Fp>\n\u003Ch4>🌟 Compress Images (The Easiest Image Compression Plugin on WordPress)\u003C\u002Fh4>\n\u003Cp>Optimize and have a blazing-fast website by using the WordPress image compression plugin ThumbPress. Our built-in WordPress image compression feature optimizes images to improve your site’s performance without losing visual quality. The plugin’s simple interface helps you compress WordPress effortlessly.\u003C\u002Fp>\n\u003Ch4>🌟 Replace Image with New Version\u003C\u002Fh4>\n\u003Cp>Replace images with newer versions without changing their existing links. It ensures that the same image will show up properly if used elsewhere. It’s the perfect solution for maintaining visual relevance.\u003C\u002Fp>\n\u003Ch4>🌟 Image Editor\u003C\u002Fh4>\n\u003Cp>We always try to upload the finest image to the site after all the editing stuff is done. But, sometimes, the previously uploaded images may require some brush-ups. In such cases, one option is to upload quite new images. The WordPress image editor feature of ThumbPress enables you to edit them right on your WordPress Dashboard. Try our simple and compact image editor tool today and bring perfection to your WordPress images.\u003C\u002Fp>\n\u003Ch3>Notes\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>ThumbPress uses \u003Ca href=\"https:\u002F\u002Fwww.intercom.com\u002F\" rel=\"nofollow ugc\">Intercom\u003C\u002Fa> and its API to provide live chat support right from the dashboard.\u003C\u002Fli>\n\u003Cli>Some third-party libraries are used to enable some features of the plugin. Kudos to the corresponding authors.\u003C\u002Fli>\n\u003C\u002Ful>\n","Disable Thumbnails, Regenerate Thumbnails, Compress Images, Convert to WebP, Find Unused and Large Images, Edit Images, and more with ThumbPress.",30000,1217337,72,106,"2026-01-13T09:27:00.000Z","7.0",[99,100,101,102,103],"compress-images","disable-thumbnails","image-editor","optimize-images","regenerate-thumbnails","https:\u002F\u002Fthumbpress.co","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fimage-sizes.5.8.37.zip",{"slug":107,"name":108,"version":109,"author":7,"author_profile":8,"description":110,"short_description":111,"active_installs":112,"downloaded":113,"rating":114,"num_ratings":115,"last_updated":116,"tested_up_to":16,"requires_at_least":17,"requires_php":117,"tags":118,"homepage":25,"download_link":122,"security_score":34,"vuln_count":123,"unpatched_count":27,"last_vuln_date":124,"fetched_at":29},"png-to-jpg","PNG to JPG","4.5","\u003Cp>Convert PNG images to JPG, free up web space and speed up your webpage\u003C\u002Fp>\n\u003Cul>\n\u003Cli>set quality of converted JPG\u003C\u002Fli>\n\u003Cli>auto convert on upload\u003C\u002Fli>\n\u003Cli>auto convert on upload only when PNG has no transparency\u003C\u002Fli>\n\u003Cli>only convert image if JPG filesize is lower than PNG filesize\u003C\u002Fli>\n\u003Cli>leave original PNG images on the server\u003C\u002Fli>\n\u003Cli>convert existing PNG image to JPG\u003C\u002Fli>\n\u003Cli>bulk convert existing PNG images to JPG\u003C\u002Fli>\n\u003Cli>conversion statistics\u003C\u002Fli>\n\u003C\u002Ful>\n","Convert PNG images to JPG, free up web space and speed up your webpage",10000,152345,94,40,"2025-12-01T23:56:00.000Z","",[119,120,20,21,121],"convert","image","save-space","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpng-to-jpg.4.5.zip",1,"2022-05-06 13:18:00",{"slug":126,"name":127,"version":128,"author":7,"author_profile":8,"description":129,"short_description":130,"active_installs":131,"downloaded":132,"rating":133,"num_ratings":134,"last_updated":135,"tested_up_to":16,"requires_at_least":76,"requires_php":97,"tags":136,"homepage":138,"download_link":139,"security_score":140,"vuln_count":141,"unpatched_count":27,"last_vuln_date":142,"fetched_at":29},"images-to-webp","Images to WebP","4.9.1","\u003Cp>Statistics say that WebP format can save over a half of the page weight without losing images quality.\u003Cbr \u002F>\nConvert PNG, JPG and GIF images to WebP and speed up your web, save visitors download data, make your Google ranking better.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>automated test after plugin activation to make sure it will work on your server\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>works with all types of WordPress installations: domain, subdomain, subdirectory, multisite\u002Fnetwork\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>works on Apache and NGiNX\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>image URL will be not changed\u003C\u002Fstrong> so it works everywhere, in \u003Cimg> src, srcset, \u003Cpicture>, even in CSS backgrounds and there is no problem with cache\u003C\u002Fli>\n\u003Cli>\u003Cstrong>original files will be not touched\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>set quality of converted images\u003C\u002Fli>\n\u003Cli>auto convert on upload\u003C\u002Fli>\n\u003Cli>only convert image if WebP filesize is lower than original image filesize\u003C\u002Fli>\n\u003Cli>bulk convert existing images to WebP ( you can choose folders )\u003C\u002Fli>\n\u003Cli>bulk convert only missing images\u003C\u002Fli>\n\u003Cli>works with `Fly Dynamic Image Resizer` plugin\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Hooks for developers\u003C\u002Fh3>\n\u003Ch4>itw_sizes\u003C\u002Fh4>\n\u003Cp>Maybe you want to disable WebP for thumbnails\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter( 'itw_sizes', 'disable_itw_sizes', 10, 2 );\nfunction disable_itw_sizes( $sizes, $attachmentId ){\n    unset( $sizes['thumbnail'] );\n    return $sizes;\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>itw_htaccess\u003C\u002Fh4>\n\u003Cp>Maybe you want to modify htaccess rules somehow\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter( 'itw_htaccess', 'modify_itw_htaccess', 10, 2 );\nfunction modify_itw_htaccess( $rewrite_rules ){\n    \u002F\u002F do some magic here\n    return $rewrite_rules;\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>itw_abspath\u003C\u002Fh4>\n\u003Cp>Maybe you use roots.io\u002Fbedrock or other custom folder structure\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_filter( 'itw_abspath', 'modify_itw_abspath', 10, 2 );\nfunction modify_itw_abspath( $abspath ){\n    return trailingslashit( WP_CONTENT_DIR );\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>$images_to_webp->convert_image()\u003C\u002Fh4>\n\u003Cp>Maybe you want to automatically generate WebP for other plugins\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_action( 'XXPLUGIN_image_created', 'XX_images_to_webp', 10, 2 );\nfunction XX_images_to_webp( $image_path ){\n    global $images_to_webp;\n    $images_to_webp->convert_image( $image_path );\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n","Convert PNG, JPG and GIF images to WebP and speed up your web",9000,133688,88,31,"2026-01-14T09:24:00.000Z",[119,20,21,137],"pictures","https:\u002F\u002Fwww.paypal.me\u002Fjakubnovaksl","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fimages-to-webp.4.9.1.zip",98,2,"2021-10-19 00:00:00",{"attackSurface":144,"codeSignals":198,"taintFlows":225,"riskAssessment":252,"analyzedAt":257},{"hooks":145,"ajaxHandlers":194,"restRoutes":195,"shortcodes":196,"cronEvents":197,"entryPointCount":27,"unprotectedCount":27},[146,152,158,161,163,168,172,174,178,182,186,190],{"type":147,"name":148,"callback":149,"file":150,"line":151},"action","plugins_loaded","closure","better-image-sizes.php",27,{"type":153,"name":154,"callback":154,"priority":155,"file":156,"line":157},"filter","attachment_fields_to_edit",10,"focal-point\\index.php",8,{"type":147,"name":159,"callback":159,"file":156,"line":160},"edit_attachment",9,{"type":147,"name":162,"callback":162,"file":156,"line":155},"admin_enqueue_scripts",{"type":147,"name":164,"callback":165,"file":166,"line":167},"admin_menu","admin_menu_item","resizer\\index.php",15,{"type":153,"name":169,"callback":170,"priority":155,"file":166,"line":171},"media_row_actions","media_row_action",16,{"type":153,"name":154,"callback":154,"priority":155,"file":166,"line":173},17,{"type":147,"name":175,"callback":176,"file":166,"line":177},"delete_attachment","delete_attachment_bis_images",18,{"type":147,"name":179,"callback":180,"file":166,"line":181},"switch_blog","blog_switched",19,{"type":153,"name":183,"callback":184,"file":166,"line":185},"intermediate_image_sizes_advanced","remove_disabled_image_sizes",20,{"type":153,"name":187,"callback":188,"priority":155,"file":166,"line":189},"bis_get_attachment_image_attributes","retina_attribute",21,{"type":153,"name":191,"callback":192,"file":166,"line":193},"big_image_size_threshold","__return_false",24,[],[],[],[],{"dangerousFunctions":199,"sqlUsage":204,"outputEscaping":206,"fileOperations":60,"externalRequests":27,"nonceChecks":14,"capabilityChecks":157,"bundledLibraries":224},[200],{"fn":201,"file":202,"line":167,"context":203},"unserialize","resizer\\face-detector.php","$this->detection_data = unserialize( $dataset );",{"prepared":27,"raw":27,"locations":205},[],{"escaped":207,"rawEcho":157,"locations":208},53,[209,211,212,214,216,218,220,222],{"file":156,"line":173,"context":210},"raw output",{"file":156,"line":185,"context":210},{"file":156,"line":213,"context":210},22,{"file":166,"line":215,"context":210},107,{"file":166,"line":217,"context":210},112,{"file":166,"line":219,"context":210},124,{"file":166,"line":221,"context":210},133,{"file":166,"line":223,"context":210},142,[],[226,244],{"entryPoint":227,"graph":228,"unsanitizedCount":27,"severity":243},"options_page (resizer\\index.php:103)",{"nodes":229,"edges":240},[230,235],{"id":231,"type":232,"label":233,"file":166,"line":234},"n0","source","$_POST['bis_disabled_upscaling']",111,{"id":236,"type":237,"label":238,"file":166,"line":234,"wp_function":239},"n1","sink","update_option() [Settings Manipulation]","update_option",[241],{"from":231,"to":236,"sanitized":242},true,"low",{"entryPoint":245,"graph":246,"unsanitizedCount":27,"severity":243},"\u003Cindex> (resizer\\index.php:0)",{"nodes":247,"edges":250},[248,249],{"id":231,"type":232,"label":233,"file":166,"line":234},{"id":236,"type":237,"label":238,"file":166,"line":234,"wp_function":239},[251],{"from":231,"to":236,"sanitized":242},{"summary":253,"deductions":254},"The 'better-image-sizes' v3.9 plugin exhibits a generally strong security posture, indicated by a complete absence of recorded CVEs and no critical or high-severity taint flows. The code analysis reveals good practices such as 100% of SQL queries using prepared statements and a high percentage (87%) of properly escaped output. The presence of nonce and capability checks further suggests an awareness of security principles. However, a significant concern is the use of the `unserialize` function. While not directly flagged as a taint flow in this analysis, `unserialize` is inherently risky as it can lead to Remote Code Execution (RCE) if the serialized data comes from an untrusted source and contains malicious payloads. This function, coupled with file operations, represents a potential weak point that warrants careful attention.",[255],{"reason":256,"points":167},"Use of unserialize function","2026-03-16T18:40:06.340Z",{"wat":259,"direct":269},{"assetPaths":260,"generatorPatterns":263,"scriptPaths":264,"versionParams":266},[261,262],"\u002Fwp-content\u002Fplugins\u002Fbetter-image-sizes\u002Ffocal-point\u002Fstyle.css","\u002Fwp-content\u002Fplugins\u002Fbetter-image-sizes\u002Ffocal-point\u002Fscript.js",[],[265],"wp-content\u002Fplugins\u002Fbetter-image-sizes\u002Ffocal-point\u002Fscript.js",[267,268],"better-image-sizes\u002Ffocal-point\u002Fstyle.css?ver=","better-image-sizes\u002Ffocal-point\u002Fscript.js?ver=",{"cssClasses":270,"htmlComments":280,"htmlAttributes":281,"restEndpoints":283,"jsGlobals":284,"shortcodeOutput":285},[271,272,273,274,275,276,277,278,279],"focal-point-input","focal-point-values","focal-point-top","focal-point-left","pick-focal-point","save-focal-point","focal-point-area","focal-point-handle","focal-point-previews",[],[282],"data-value",[],[],[]]