{"id":338608,"date":"2026-07-10T22:11:47","date_gmt":"2026-07-10T22:11:47","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/tinysharp-image-optimizer-connector\/"},"modified":"2026-07-10T22:11:34","modified_gmt":"2026-07-10T22:11:34","slug":"tinysharp-image-optimizer-connector","status":"publish","type":"plugin","link":"https:\/\/hsb.wordpress.org\/plugins\/tinysharp-image-optimizer-connector\/","author":23372026,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.5.18","stable_tag":"1.5.18","tested":"7.0.1","requires":"6.5","requires_php":"7.4","requires_plugins":null,"header_name":"TinySharp Image Optimizer Connector","header_author":"TinySharp","header_description":"Optimize WordPress Media Library images locally, with optional TinySharp API connection for hosted processing and usage reporting.","assets_banners_color":"e2eddf","last_updated":"2026-07-10 22:11:34","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/tinysharp.com\/wordpress-plugin\/","header_author_uri":"https:\/\/tinysharp.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":33,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.5.18":{"tag":"1.5.18","author":"tinysharp","date":"2026-07-10 22:11:34"}},"upgrade_notice":{"1.5.18":"<p>WordPress.org review build with local tools available without license or plan gates, enqueued inline JavaScript, and hardened file writes.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3603429,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3603429,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3603429,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.5.18"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3603429,"resolution":"1","location":"assets","locale":"","width":1200,"height":900},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3603429,"resolution":"2","location":"assets","locale":"","width":1200,"height":900},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3603429,"resolution":"3","location":"assets","locale":"","width":1200,"height":900},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3603429,"resolution":"4","location":"assets","locale":"","width":1200,"height":900},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3603429,"resolution":"5","location":"assets","locale":"","width":1200,"height":900},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3603429,"resolution":"6","location":"assets","locale":"","width":1200,"height":900}},"screenshots":{"1":"Image Optimization Dashboard.","2":"Connection &amp; Optimization Settings.","3":"Bulk Image Optimizer.","4":"Backup Center &amp; Restore.","5":"API Health &amp; Diagnostics.","6":"Media Library Optimization Status."}},"plugin_section":[],"plugin_tags":[194661,29152,29161,233,15376],"plugin_category":[],"plugin_contributors":[270980],"plugin_business_model":[],"class_list":["post-338608","plugin","type-plugin","status-publish","hentry","plugin_tags-avif","plugin_tags-image-compression","plugin_tags-image-optimization","plugin_tags-media-library","plugin_tags-webp","plugin_contributors-tinysharp","plugin_committers-tinysharp"],"banners":{"banner":"https:\/\/ps.w.org\/tinysharp-image-optimizer-connector\/assets\/banner-772x250.png?rev=3603429","banner_2x":"https:\/\/ps.w.org\/tinysharp-image-optimizer-connector\/assets\/banner-1544x500.png?rev=3603429","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/tinysharp-image-optimizer-connector\/assets\/icon-128x128.png?rev=3603429","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/tinysharp-image-optimizer-connector\/assets\/screenshot-1.png?rev=3603429","caption":"Image Optimization Dashboard."},{"src":"https:\/\/ps.w.org\/tinysharp-image-optimizer-connector\/assets\/screenshot-2.png?rev=3603429","caption":"Connection &amp; Optimization Settings."},{"src":"https:\/\/ps.w.org\/tinysharp-image-optimizer-connector\/assets\/screenshot-3.png?rev=3603429","caption":"Bulk Image Optimizer."},{"src":"https:\/\/ps.w.org\/tinysharp-image-optimizer-connector\/assets\/screenshot-4.png?rev=3603429","caption":"Backup Center &amp; Restore."},{"src":"https:\/\/ps.w.org\/tinysharp-image-optimizer-connector\/assets\/screenshot-5.png?rev=3603429","caption":"API Health &amp; Diagnostics."},{"src":"https:\/\/ps.w.org\/tinysharp-image-optimizer-connector\/assets\/screenshot-6.png?rev=3603429","caption":"Media Library Optimization Status."}],"raw_content":"<!--section=description-->\n<p>TinySharp Image Optimizer Connector helps site owners compress images, convert supported formats where the server supports them, keep backups of originals, and run safe bulk optimization workflows from the WordPress admin. Built-in local optimization, bulk tools, backups and restore controls are available without a license key. Connecting the TinySharp API is optional and adds hosted processing plus account usage reporting from the TinySharp service.<\/p>\n\n<h4>Main features<\/h4>\n\n<ul>\n<li>Media Library optimization controls<\/li>\n<li>Bulk image optimization screen<\/li>\n<li>Automatic optimization on upload when enabled<\/li>\n<li>WebP conversion support<\/li>\n<li>AVIF support when available in the server\/API image environment<\/li>\n<li>Backup Center with restore controls<\/li>\n<li>Hosted API usage status when a TinySharp API key is connected<\/li>\n<li>API Health screen for troubleshooting<\/li>\n<li>Safe mode to avoid replacing files when the optimized version is larger<\/li>\n<\/ul>\n\n<h4>Local tools and optional API access<\/h4>\n\n<p>The WordPress.org plugin includes local optimization, bulk optimization, backups, restore controls and safe-mode settings without a license key. A TinySharp account and API key from https:\/\/tinysharp.com\/ are optional and are used only when you choose to connect to the hosted TinySharp API service for server-side processing and account usage reporting.<\/p>\n\n<h4>External service disclosure<\/h4>\n\n<p>This plugin connects to the TinySharp API service at:<\/p>\n\n<p>https:\/\/tinysharp.com\/wp-json\/sio\/v1<\/p>\n\n<p>The plugin connects to this service when you configure an API key and then test the API connection, check API usage status, or choose hosted API processing for optimization.<\/p>\n\n<p>Data that may be sent to TinySharp:<\/p>\n\n<ul>\n<li>Image files selected for optimization<\/li>\n<li>Your configured TinySharp API key<\/li>\n<li>Site URL<\/li>\n<li>Plugin version<\/li>\n<li>Requested output format and quality settings<\/li>\n<li>Basic optimization metadata such as file size and savings<\/li>\n<\/ul>\n\n<p>Purpose of the connection:<\/p>\n\n<ul>\n<li>Authenticate the WordPress site with the TinySharp account<\/li>\n<li>Process selected images for compression or conversion<\/li>\n<li>Return optimized image data<\/li>\n<li>Track hosted API usage and connected site activity<\/li>\n<li>Show API health information inside WordPress<\/li>\n<\/ul>\n\n<p>TinySharp service terms: https:\/\/tinysharp.com\/terms-of-service\/\nTinySharp privacy policy: https:\/\/tinysharp.com\/privacy-policy\/<\/p>\n\n<p>No image is sent to the TinySharp API until the site administrator configures an API key and explicitly starts an optimization action or enables automatic optimization.<\/p>\n\n<h3>Privacy<\/h3>\n\n<p>TinySharp Image Optimizer sends selected images and optimization metadata to the TinySharp API only when the API key is configured and API processing is requested. See the External service disclosure section for details. Review the TinySharp privacy policy at https:\/\/tinysharp.com\/privacy-policy\/.<\/p>\n\n<h3>Support<\/h3>\n\n<p>For support, visit https:\/\/tinysharp.com\/support\/ or email support@tinysharp.com.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin ZIP through Plugins &gt; Add New &gt; Upload Plugin, or upload the plugin folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate TinySharp Image Optimizer Connector.<\/li>\n<li>Open TinySharp &gt; Settings.<\/li>\n<li>Enter the API URL: <code>https:\/\/tinysharp.com\/wp-json\/sio\/v1<\/code>.<\/li>\n<li>Copy your API key from your TinySharp dashboard and paste it into the plugin settings.<\/li>\n<li>Click Test Connection.<\/li>\n<li>Enable backups before running bulk optimization on a production site.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20a%20tinysharp%20account%3F\"><h3>Do I need a TinySharp account?<\/h3><\/dt>\n<dd><p>No for built-in local optimization. A TinySharp account and API key are optional and are used only for the hosted TinySharp API service. The plugin settings include a link to the TinySharp dashboard for users who want hosted processing.<\/p><\/dd>\n<dt id=\"are%20images%20sent%20to%20an%20external%20server%3F\"><h3>Are images sent to an external server?<\/h3><\/dt>\n<dd><p>Yes. Images selected for optimization may be sent to the TinySharp API for processing. This is disclosed in the External service disclosure section above.<\/p><\/dd>\n<dt id=\"can%20i%20restore%20original%20images%3F\"><h3>Can I restore original images?<\/h3><\/dt>\n<dd><p>Yes, when backups are enabled and a backup record is available. Use TinySharp &gt; Backup Center to restore or remove stored backups.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20optimize%20images%20automatically%3F\"><h3>Does the plugin optimize images automatically?<\/h3><\/dt>\n<dd><p>Automatic optimization can be enabled from TinySharp &gt; Settings. Keep backups and safe mode enabled when first testing this feature.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20the%20hosted%20api%20is%20unavailable%3F\"><h3>What happens if the hosted API is unavailable?<\/h3><\/dt>\n<dd><p>Built-in local optimization remains available. If you connect the hosted TinySharp API service, the plugin may show API usage or API health information returned by that service.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.5.18<\/h4>\n\n<ul>\n<li>Made built-in local optimization, bulk tools, backups and restore controls available without license or plan gates.<\/li>\n<li>Removed quota-based upgrade notices from the WordPress.org build.<\/li>\n<li>Replaced inline script output with wp_add_inline_script().<\/li>\n<li>Hardened optimized file writes by validating output extensions and using WordPress filesystem APIs.<\/li>\n<\/ul>\n\n<h4>1.5.17<\/h4>\n\n<ul>\n<li>Reworked remaining custom stats table queries to use identifier placeholders.<\/li>\n<li>Documented unavoidable TinySharp custom stats table writes for Plugin Check.<\/li>\n<\/ul>\n\n<h4>1.5.16<\/h4>\n\n<ul>\n<li>Fixed Plugin Check blocking errors for escaped output and discouraged file deletion calls.<\/li>\n<li>Sanitized AJAX POST values before settings save and connection tests.<\/li>\n<li>Added reviewer notes for custom statistics table queries used by the plugin dashboard.<\/li>\n<\/ul>\n\n<h4>1.5.15<\/h4>\n\n<ul>\n<li>Matched the readme plugin name with the plugin header for WordPress.org review.<\/li>\n<li>Kept the public connector build focused on the TinySharp API integration.<\/li>\n<\/ul>\n\n<h4>1.5.14<\/h4>\n\n<ul>\n<li>Prepared WordPress.org submission build.<\/li>\n<li>Updated readme with external service disclosure, privacy details, and WordPress.org-focused installation notes.<\/li>\n<li>Replaced remote admin branding image references with bundled local assets.<\/li>\n<li>Kept external service notices limited to TinySharp plugin admin screens.<\/li>\n<li>Improved input sanitization for selected AJAX settings.<\/li>\n<\/ul>\n\n<h4>1.5.13<\/h4>\n\n<ul>\n<li>Added site statistics sync headers so TinySharp dashboard can display connected-site optimized counts and savings more accurately.<\/li>\n<\/ul>\n\n<h4>1.5.12<\/h4>\n\n<ul>\n<li>Improved hosted API usage display.<\/li>\n<\/ul>\n\n<h4>1.5.11<\/h4>\n\n<ul>\n<li>Improved connected-site usage handling for API mode.<\/li>\n<\/ul>","raw_excerpt":"Optimize WordPress Media Library images locally, with optional TinySharp API connection for hosted processing and usage reporting.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/338608","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=338608"}],"author":[{"embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/tinysharp"}],"wp:attachment":[{"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=338608"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=338608"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=338608"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=338608"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=338608"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/hsb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=338608"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}