[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fLhmk-BbDKx2e7-UKB_G-eDfut6VjPfa5VAjLtl8QFMQ":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":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":22,"download_link":23,"security_score":24,"vuln_count":13,"unpatched_count":13,"last_vuln_date":25,"fetched_at":26,"vulnerabilities":27,"developer":28,"crawl_stats":25,"alternatives":36,"analysis":139,"fingerprints":286},"zip-embed","Zip Embed","0.4","Kailey (trepmal)","https:\u002F\u002Fprofiles.wordpress.org\u002Ftrepmal\u002F","\u003Cp>Upload a zip archive and let WP embed its contents into a post.\u003C\u002Fp>\n\u003Cp>Please note that you’ll still be restricted by your server’s maximum upload size.\u003C\u002Fp>\n\u003Cp>New plugin. Please report bugs to trepmal (at) gmail (dot) com. Thanks!\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Ftwitter.com\u002Ftrepmal\" rel=\"nofollow ugc\">I’m on twitter\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>0.4\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Multisite compatibility\u003C\u002Fli>\n\u003C\u002Ful>\n","Upload a zip archive and let WP embed its contents into a post.",10,2254,0,"2011-11-12T06:27:00.000Z","3.2.1","2.8","",[19,20,21],"media-library","upload","zip","http:\u002F\u002Ftrepmal.com\u002Fplugins\u002Fzip-embed","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fzip-embed.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":29,"display_name":7,"profile_url":8,"plugin_count":30,"total_installs":31,"avg_security_score":32,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},"trepmal",12,2430,86,30,84,"2026-04-04T03:36:03.711Z",[37,52,73,97,118],{"slug":38,"name":39,"version":40,"author":7,"author_profile":8,"description":41,"short_description":42,"active_installs":43,"downloaded":44,"rating":45,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":16,"requires_php":17,"tags":49,"homepage":50,"download_link":51,"security_score":24,"vuln_count":13,"unpatched_count":13,"last_vuln_date":25,"fetched_at":26},"upload-media-by-zip","Upload Media by Zip","0.9.1","\u003Cp>Upload a zip archive and let WP unzip it and attach everything to a page\u002Fpost (or not).\u003C\u002Fp>\n\u003Cp>Please note that you’ll still be restricted by your server’s maximum upload size.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ca href=\"http:\u002F\u002Ftwitter.com\u002Ftrepmal\" rel=\"nofollow ugc\">I’m on twitter\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>If the zip file uploads, but the contents aren’t extracted, see the \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fupload-media-by-zip\u002Ffaq\u002F\" rel=\"ugc\">FAQs\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch4>Languages\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Farsi, by \u003Ca href=\"http:\u002F\u002Fwww.newbie.ir\u002F1390\u002F04\u002Fupload-media-by-zip\u002F\" rel=\"nofollow ugc\">mohsengham\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>German, by \u003Ca href=\"http:\u002F\u002Fdeckerweb.de\u002F\" rel=\"nofollow ugc\">daveshine\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n","Upload a zip archive and let WP unzip it and attach everything to a page\u002Fpost (or not).",200,20171,60,4,"2016-09-18T00:32:00.000Z","4.6.30",[19,20,21],"http:\u002F\u002Ftrepmal.com\u002Fplugins\u002Fupload-media-by-zip\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fupload-media-by-zip.0.9.1.zip",{"slug":53,"name":54,"version":55,"author":56,"author_profile":57,"description":58,"short_description":59,"active_installs":60,"downloaded":61,"rating":62,"num_ratings":63,"last_updated":64,"tested_up_to":65,"requires_at_least":66,"requires_php":17,"tags":67,"homepage":69,"download_link":70,"security_score":34,"vuln_count":71,"unpatched_count":13,"last_vuln_date":72,"fetched_at":26},"wp-extra-file-types","WP Extra File Types","0.5.2","davide.airaghi","https:\u002F\u002Fprofiles.wordpress.org\u002Fdavideairaghi\u002F","\u003Cp>This plugin let you add file types to the default list of file extensions\u003Cbr \u002F>\nsupported by the Media Library upload procedure.\u003C\u002Fp>\n","Plugin to let you extend the list of allowed file types supported by the Wordpress Media Library",50000,345656,68,39,"2023-10-28T18:29:00.000Z","6.3.8","4.0",[68,19,20],"file-type","http:\u002F\u002Fwww.airaghi.net\u002Fen\u002F2015\u002F01\u002F02\u002Fwordpress-custom-mime-types\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-extra-file-types.0.5.2.zip",1,"2021-12-27 00:00:00",{"slug":74,"name":75,"version":76,"author":77,"author_profile":78,"description":79,"short_description":80,"active_installs":81,"downloaded":82,"rating":83,"num_ratings":46,"last_updated":84,"tested_up_to":85,"requires_at_least":86,"requires_php":87,"tags":88,"homepage":93,"download_link":94,"security_score":95,"vuln_count":71,"unpatched_count":13,"last_vuln_date":96,"fetched_at":26},"smart-auto-upload-images","Smart Auto Upload Images – Import External Images","1.2.3","Burhan Nasir","https:\u002F\u002Fprofiles.wordpress.org\u002Fburhandodhy\u002F","\u003Cp>Smart Auto Upload Images automatically imports external images from your post content into your WordPress media library. When you save or update a post, the plugin detects any external image URLs, downloads them to your server, and replaces the original URLs with your hosted versions. This improves site performance, ensures image availability, and gives you complete control over your content.\u003C\u002Fp>\n\u003Ch3>Why Auto Upload Images to Your Media Library?\u003C\u002Fh3>\n\u003Cp>When you copy content from external sources or use remote images, you risk broken images when the original source removes them. Hosting images on your own server provides several benefits:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Better SEO performance\u003C\u002Fstrong> – Search engines favor self-hosted images\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Faster page load times\u003C\u002Fstrong> – Eliminates external HTTP requests\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Full content control\u003C\u002Fstrong> – Images remain available even if sources go offline\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How Auto Upload Images Works\u003C\u002Fh3>\n\u003Cp>The plugin runs automatically whenever you save or update a post. Here’s the process:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Scans post content for external image URLs (any image not hosted on your domain)\u003C\u002Fli>\n\u003Cli>Downloads each external image to a temporary location\u003C\u002Fli>\n\u003Cli>Validates image file integrity and format\u003C\u002Fli>\n\u003Cli>Uploads valid images to your WordPress media library\u003C\u002Fli>\n\u003Cli>Replaces original external URLs with new local URLs\u003C\u002Fli>\n\u003Cli>Attaches imported images to your post in the media library\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>No manual intervention required. Just write your content and let the plugin handle the rest.\u003C\u002Fp>\n\u003Ch3>Key Features\u003C\u002Fh3>\n\u003Ch3>Automatic External Image Detection\u003C\u002Fh3>\n\u003Cp>The plugin automatically identifies external images in your post content when you save. It distinguishes between local images (already hosted on your site) and external images that need importing.\u003C\u002Fp>\n\u003Ch3>Smart URL Replacement\u003C\u002Fh3>\n\u003Cp>After importing images, the plugin intelligently replaces all instances of the external URL with your new local URL. This works with images in:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Post content (Classic Editor and Gutenberg blocks)\u003C\u002Fli>\n\u003Cli>Image galleries\u003C\u002Fli>\n\u003Cli>Featured images\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Media Library Integration\u003C\u002Fh3>\n\u003Cp>All imported images are added to your WordPress media library with proper metadata. You can:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Edit images using WordPress image editor\u003C\u002Fli>\n\u003Cli>View which post each image is attached to\u003C\u002Fli>\n\u003Cli>Set custom alt text during import\u003C\u002Fli>\n\u003Cli>Apply your site’s image optimization settings\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Flexible Domain Exclusions\u003C\u002Fh3>\n\u003Cp>Exclude specific domains from auto-import. Useful for:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>CDN-hosted images you want to keep external\u003C\u002Fli>\n\u003Cli>Partner websites where you have permission to hotlink\u003C\u002Fli>\n\u003Cli>Your own secondary domains\u003C\u002Fli>\n\u003Cli>Social media embeds you want to keep as external\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Custom Post Type Control\u003C\u002Fh3>\n\u003Cp>Choose which post types trigger auto-upload. Enable for:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Posts and pages (default)\u003C\u002Fli>\n\u003Cli>WooCommerce products\u003C\u002Fli>\n\u003Cli>Custom portfolio post types\u003C\u002Fli>\n\u003Cli>Documentation posts\u003C\u002Fli>\n\u003Cli>Or disable for specific types you want to skip\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Advanced File Naming Patterns\u003C\u002Fh3>\n\u003Cp>Set custom file naming patterns for imported images using dynamic tags:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>%filename%\u003C\u002Fcode> – Original filename\u003C\u002Fli>\n\u003Cli>\u003Ccode>%post_title%\u003C\u002Fcode> – Current post title\u003C\u002Fli>\n\u003Cli>\u003Ccode>%post_id%\u003C\u002Fcode> – Post ID\u003C\u002Fli>\n\u003Cli>\u003Ccode>%image_title%\u003C\u002Fcode> – Image title attribute\u003C\u002Fli>\n\u003Cli>\u003Ccode>%date%\u003C\u002Fcode> – Current date\u003C\u002Fli>\n\u003Cli>\u003Ccode>%time%\u003C\u002Fcode> – Current timestamp\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Example: \u003Ccode>%post_title%-%filename%\u003C\u002Fcode> becomes \u003Ccode>my-blog-post-example-image.jpg\u003C\u002Fcode>\u003C\u002Fp>\n\u003Ch3>Custom Alt Text Patterns\u003C\u002Fh3>\n\u003Cp>Define alt text patterns for better SEO:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>%post_title%\u003C\u002Fcode> – Use post title in alt text\u003C\u002Fli>\n\u003Cli>\u003Ccode>%filename%\u003C\u002Fcode> – Use filename as alt text\u003C\u002Fli>\n\u003Cli>Custom text – Set consistent alt text across imports\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Image Size Constraints\u003C\u002Fh3>\n\u003Cp>Set maximum width and height for imported images to:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Control storage usage\u003C\u002Fli>\n\u003Cli>Maintain consistent image sizes\u003C\u002Fli>\n\u003Cli>Automatically resize oversized images\u003C\u002Fli>\n\u003Cli>Prevent huge images from slowing your site\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Featured Image from URL\u003C\u002Fh3>\n\u003Cp>Set a post’s featured image using an external URL. The plugin will:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Download the image from the URL\u003C\u002Fli>\n\u003Cli>Import it to your media library\u003C\u002Fli>\n\u003Cli>Set it as the post’s featured image\u003C\u002Fli>\n\u003Cli>Work via REST API or post editor\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How to Import External Images from Posts\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Install and activate Auto Upload Images\u003C\u002Fli>\n\u003Cli>Go to Settings \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Auto Upload Images\u003C\u002Fli>\n\u003Cli>Configure your preferences (or use defaults)\u003C\u002Fli>\n\u003Cli>Create or edit any post with external images\u003C\u002Fli>\n\u003Cli>Click Save or Update – images import automatically\u003C\u002Fli>\n\u003Cli>Check your Media Library to see imported images\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>How to Exclude Specific Domains\u003C\u002Fh3>\n\u003Cp>If you want to prevent images from certain domains from being imported:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Go to Settings \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Auto Upload Images\u003C\u002Fli>\n\u003Cli>Find the “Excluded Domains” section\u003C\u002Fli>\n\u003Cli>Enter domains one per line (e.g., cdn.example.com)\u003C\u002Fli>\n\u003Cli>Save settings\u003C\u002Fli>\n\u003Cli>Images from excluded domains will be left as external URLs\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>How to Set Custom File Names for Imported Images\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Navigate to Settings \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Auto Upload Images\u003C\u002Fli>\n\u003Cli>Find “File Name Pattern” setting\u003C\u002Fli>\n\u003Cli>Enter your pattern using available tags:\n\u003Cul>\n\u003Cli>Example: \u003Ccode>%post_title%-%filename%\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Example: \u003Ccode>imported-%date%-%filename%\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>Save settings\u003C\u002Fli>\n\u003Cli>New imports will use your naming pattern\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>This helps organize your media library and improves SEO with descriptive file names.\u003C\u002Fp>\n\u003Ch3>How to Set Featured Image via URL\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Using the Post Editor:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Col>\n\u003Cli>Edit your post\u003C\u002Fli>\n\u003Cli>Find the Featured Image section in the sidebar\u003C\u002Fli>\n\u003Cli>Enter the external image URL in the “Set from URL” field\u003C\u002Fli>\n\u003Cli>The image imports automatically and sets as featured image\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>Integration with Page Builders\u003C\u002Fh3>\n\u003Cp>Auto Upload Images works with popular page builders:\u003C\u002Fp>\n\u003Ch3>Gutenberg Block Editor\u003C\u002Fh3>\n\u003Cp>All images in Gutenberg blocks are automatically detected and imported when you save the post.\u003C\u002Fp>\n\u003Ch3>Classic Editor\u003C\u002Fh3>\n\u003Cp>External images in Classic Editor content are imported on post save.\u003C\u002Fp>\n\u003Ch3>WooCommerce\u003C\u002Fh3>\n\u003Cp>Enable auto-import for Product post type to automatically import external product images.\u003C\u002Fp>\n\u003Ch3>Custom Post Types\u003C\u002Fh3>\n\u003Cp>Configure any custom post type to trigger auto-import functionality.\u003C\u002Fp>\n\u003Cp>Just ensure Auto Upload Images is active when running imports.\u003C\u002Fp>\n\u003Ch3>Performance and Storage Considerations\u003C\u002Fh3>\n\u003Ch3>Server Storage\u003C\u002Fh3>\n\u003Cp>Imported images consume server storage. Monitor your hosting plan’s disk space if importing large quantities of images.\u003C\u002Fp>\n\u003Ch3>Import Speed\u003C\u002Fh3>\n\u003Cp>Import time depends on:\u003Cbr \u002F>\n* Image file sizes\u003Cbr \u002F>\n* Your server’s download speed\u003Cbr \u002F>\n* Number of images per post\u003Cbr \u002F>\n* Configured maximum dimensions\u003C\u002Fp>\n\u003Ch3>Optimization Tips\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Set maximum width\u002Fheight to reduce storage\u003C\u002Fli>\n\u003Cli>Use an image optimization plugin after import\u003C\u002Fli>\n\u003Cli>Exclude domains hosting very large images\u003C\u002Fli>\n\u003Cli>Test with small batches before bulk imports\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Developer Features\u003C\u002Fh3>\n\u003Ch3>Filter: smart_aui_validate_image_url\u003C\u002Fh3>\n\u003Cp>Programmatically control which image URLs get imported.\u003C\u002Fp>\n\u003Cpre>\u003Ccode>`\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>add_filter( ‘smart_aui_validate_image_url’, function( $is_valid, $url ) {\u003Cbr \u002F>\n    \u002F\u002F Skip images from specific paths\u003Cbr \u002F>\n    if ( strpos( $url, ‘\u002Fcdn\u002Favatars\u002F’ ) !== false ) {\u003Cbr \u002F>\n        return false;\u003Cbr \u002F>\n    }\u003Cbr \u002F>\n    return $is_valid;\u003Cbr \u002F>\n}, 10, 2 );\u003Cbr \u002F>\n    `\u003C\u002Fp>\n\u003Ch3>Additional Hooks\u003C\u002Fh3>\n\u003Cp>Check plugin documentation for additional filters and actions to customize behavior.\u003C\u002Fp>\n\u003Ch3>Troubleshooting\u003C\u002Fh3>\n\u003Ch3>Images Not Importing\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Problem:\u003C\u002Fstrong> External images remain unchanged after saving post\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Solutions:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Check if domain is in excluded domains list\u003Cbr \u002F>\n* Verify your server can make external HTTP requests\u003Cbr \u002F>\n* Check WordPress debug log for errors\u003Cbr \u002F>\n* Ensure PHP has necessary image processing libraries\u003Cbr \u002F>\n* Verify write permissions on uploads directory\u003C\u002Fp>\n\u003Ch3>Import Errors in Debug Log\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Problem:\u003C\u002Fstrong> Seeing errors in wp-content\u002Fdebug.log\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Solutions:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Check image URL is publicly accessible\u003Cbr \u002F>\n* Verify image format is supported (JPG, PNG, GIF, WebP)\u003Cbr \u002F>\n* Ensure external server allows download\u002Fhotlinking\u003Cbr \u002F>\n* Check SSL certificate validity if using HTTPS images\u003C\u002Fp>\n\u003Ch3>Images Upload but URLs Not Replaced\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Problem:\u003C\u002Fstrong> Images added to media library but old URLs remain\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Solutions:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Clear any caching plugins\u003Cbr \u002F>\n* Check post content in Text\u002FHTML mode\u003Cbr \u002F>\n* Verify images aren’t in excluded domain list\u003Cbr \u002F>\n* Review file naming pattern doesn’t cause conflicts\u003C\u002Fp>\n\u003Ch3>Duplicate Images in Media Library\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Problem:\u003C\u002Fstrong> Same image imported multiple times\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Solutions:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Plugin should detect and reuse existing images (v1.2.0+)\u003Cbr \u002F>\n* Check if images have different URLs but same file\u003Cbr \u002F>\n* Clear media library of duplicates and re-save post\u003C\u002Fp>\n\u003Ch3>Featured Image Not Setting from URL\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Problem:\u003C\u002Fstrong> Featured image URL not importing\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Solutions:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Verify URL is publicly accessible\u003Cbr \u002F>\n* Check image format is supported\u003Cbr \u002F>\n* Ensure PHP memory limit is sufficient\u003Cbr \u002F>\n* Review error logs for specific error messages\u003C\u002Fp>\n\u003Ch3>Maximum Width\u002FHeight Not Applied\u003C\u002Fh3>\n\u003Cp>\u003Cstrong>Problem:\u003C\u002Fstrong> Images exceed configured dimensions\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Solutions:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Ensure GD or ImageMagick is installed on server\u003Cbr \u002F>\n* Check PHP memory limit allows image processing\u003Cbr \u002F>\n* Verify dimensions are set in plugin settings\u003Cbr \u002F>\n* Test with smaller images first\u003C\u002Fp>\n","Import external images automatically on save. Adds to media library and updates URLs. No manual downloads. Works with any post type.",2000,9668,80,"2026-01-31T07:43:00.000Z","6.9.4","6.2","8.0",[89,90,91,19,92],"auto-upload","external-images","import-images","seo","https:\u002F\u002Fburhandodhy.me","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsmart-auto-upload-images.1.2.3.zip",97,"2025-11-07 00:00:00",{"slug":98,"name":99,"version":100,"author":101,"author_profile":102,"description":103,"short_description":104,"active_installs":105,"downloaded":106,"rating":62,"num_ratings":107,"last_updated":108,"tested_up_to":109,"requires_at_least":110,"requires_php":17,"tags":111,"homepage":17,"download_link":116,"security_score":117,"vuln_count":13,"unpatched_count":13,"last_vuln_date":25,"fetched_at":26},"overwrite-uploads","Overwrite Uploads","1.2.2","Ian Dunn","https:\u002F\u002Fprofiles.wordpress.org\u002Fiandunn\u002F","\u003Cp>By default WordPress doesn’t overwrite an existing file if you upload a new one with the same name and directory. Instead, it appends a number to the end of the filename in order to make it unique, \u003Cem>e.g., \u003Ccode>filename.jpg\u003C\u002Fcode> becomes \u003Ccode>filename1.jpg\u003C\u002Fcode>\u003C\u002Fem>.\u003C\u002Fp>\n\u003Cp>That isn’t always the desired behavior, so this plugin makes it so that any files uploaded will automatically overwrite existing files \u003Cstrong>in the same folder\u003C\u002Fstrong>, rather than creating a second file with a unique name. It will not overwrite files in other folders.\u003C\u002Fp>\n\u003Cp>After activating the plugin, you won’t need to do anything else, it’ll start working automatically. If you run into problems, please check the FAQ and existing support forum posts before opening a new support request.\u003C\u002Fp>\n","Overwrites files with the same name and folder when uploading, instead of storing multiple copies with unique filenames.",1000,57352,8,"2025-08-04T16:18:00.000Z","6.8.5","2.9",[112,19,113,114,115],"files","overwrite","unique","uploads","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Foverwrite-uploads.1.2.2.zip",100,{"slug":119,"name":120,"version":121,"author":122,"author_profile":123,"description":124,"short_description":125,"active_installs":126,"downloaded":127,"rating":128,"num_ratings":129,"last_updated":130,"tested_up_to":131,"requires_at_least":66,"requires_php":17,"tags":132,"homepage":137,"download_link":138,"security_score":24,"vuln_count":13,"unpatched_count":13,"last_vuln_date":25,"fetched_at":26},"physical-custom-upload-folder","Physical Custom Upload Folder for Real Media Library","1.0.5","Matthias Günter","https:\u002F\u002Fprofiles.wordpress.org\u002Fmguenter\u002F","\u003Cp>Upload files in your media library to a custom folder structure on your file system created with \u003Ca href=\"https:\u002F\u002Fdevowl.io\u002Fwordpress-real-media-library\u002F\" rel=\"nofollow ugc\">Real Media Library\u003C\u002Fa> folders. With this plugin you can determine where your uploads should be stored. This can also have some \u003Cstrong>SEO benefits for your website\u003C\u002Fstrong>.\u003C\u002Fp>\n\u003Cp>For example, if you have created a folder named \u003Ccode>Products\u002F\u003C\u002Fcode> in your media library (using Real Media Library), your uploads will be stored in \u003Ccode>wp-content\u002Fuploads\u002FProducts\u002F\u003C\u002Fcode> instead of, for example, \u003Ccode>wp-content\u002Fuploads\u002F2020\u002F03\u002F\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>This plugin doesn’t care about the following:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Redirection when renaming files (if you or another website is already using an uploaded image, the URL becomes invalid without redirection to the new location)\u003C\u002Fli>\n\u003Cli>Drag and drop files to another folder in the Real Media Library (the URL of the image does not change)\u003C\u002Fli>\n\u003Cli>The import of a Real Media Library folder structure is ignored and the files are not saved in a custom upload folder\u003C\u002Fli>\n\u003Cli>Limit of 255 characters for the path of a folder structure plus file name\u003C\u002Fli>\n\u003Cli>No support for WordPress multi-sites\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>If you want a full-featured solution for a custom folder structure on your file system with Real Media Library, you should look at the \u003Ca href=\"https:\u002F\u002Fdevowl.io\u002Fgo\u002Fcodecanyon\u002Freal-physical-media?source=physical-custom-upload-folder-wordpress-org\" rel=\"nofollow ugc\">Real Physical Media\u003C\u002Fa> add-on.\u003C\u002Fstrong> It has solved all of the above mentioned limitations, is performant and stable.\u003C\u002Fp>\n\u003Cp>\u003Cem>This plugin is a free micro add-on for Real Media Library with limited support.\u003C\u002Fem>\u003C\u002Fp>\n","Upload files in your media library to a custom folder structure on your file system created with Real Media Library folders.",900,15119,82,7,"2020-03-27T08:30:00.000Z","5.4.19",[133,134,135,20,136],"media-library-folder","real-media-library","real-physical-media","upload-folder","https:\u002F\u002Fdevowl.io\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fphysical-custom-upload-folder.zip",{"attackSurface":140,"codeSignals":225,"taintFlows":275,"riskAssessment":276,"analyzedAt":285},{"hooks":141,"ajaxHandlers":206,"restRoutes":207,"shortcodes":208,"cronEvents":224,"entryPointCount":46,"unprotectedCount":13},[142,148,151,156,160,164,168,172,176,180,185,188,192,194,198,202],{"type":143,"name":144,"callback":145,"file":146,"line":147},"action","init","general","zip-embed.php",46,{"type":143,"name":144,"callback":149,"file":146,"line":150},"post_type",47,{"type":152,"name":153,"callback":154,"file":146,"line":155},"filter","manage_edit-zip_columns","add_column",48,{"type":143,"name":157,"callback":158,"priority":11,"file":146,"line":159},"manage_posts_custom_column","fill_column",49,{"type":143,"name":161,"callback":162,"file":146,"line":163},"add_meta_boxes","setup_meta_boxes",50,{"type":143,"name":165,"callback":166,"file":146,"line":167},"load-post-new.php","redirect",52,{"type":143,"name":169,"callback":170,"file":146,"line":171},"admin_menu","menu",53,{"type":152,"name":173,"callback":174,"priority":11,"file":146,"line":175},"contextual_help","help",54,{"type":152,"name":177,"callback":178,"file":146,"line":179},"media_upload_tabs","create_new_tab",55,{"type":143,"name":181,"callback":182,"priority":183,"file":146,"line":184},"media_buttons","context",11,56,{"type":152,"name":186,"callback":186,"file":146,"line":187},"media_upload_uploadzip",57,{"type":152,"name":189,"callback":190,"file":146,"line":191},"admin_init","register_fields",59,{"type":152,"name":189,"callback":193,"file":146,"line":45},"allowed_tags",{"type":152,"name":195,"callback":196,"file":146,"line":197},"filesystem_method","__return_direct",469,{"type":143,"name":199,"callback":200,"file":146,"line":201},"wp_head","zip_embed_scripts",693,{"type":143,"name":203,"callback":204,"file":146,"line":205},"wp_footer","zip_embed_foot",696,[],[],[209,212,216,220],{"tag":21,"callback":210,"file":146,"line":211},"sc_zip",51,{"tag":213,"callback":214,"file":146,"line":215},"zip_title","sc_zip_title",62,{"tag":217,"callback":218,"file":146,"line":219},"zip_files","sc_zip_files",63,{"tag":221,"callback":222,"file":146,"line":223},"zip_gallery","sc_zip_gallery",66,[],{"dangerousFunctions":226,"sqlUsage":227,"outputEscaping":229,"fileOperations":129,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":274},[],{"prepared":13,"raw":13,"locations":228},[],{"escaped":230,"rawEcho":231,"locations":232},3,20,[233,236,238,240,242,244,246,248,250,252,254,256,258,260,262,264,266,268,270,272],{"file":146,"line":234,"context":235},134,"raw output",{"file":146,"line":237,"context":235},157,{"file":146,"line":239,"context":235},169,{"file":146,"line":241,"context":235},171,{"file":146,"line":243,"context":235},173,{"file":146,"line":245,"context":235},197,{"file":146,"line":247,"context":235},246,{"file":146,"line":249,"context":235},247,{"file":146,"line":251,"context":235},257,{"file":146,"line":253,"context":235},318,{"file":146,"line":255,"context":235},326,{"file":146,"line":257,"context":235},328,{"file":146,"line":259,"context":235},345,{"file":146,"line":261,"context":235},531,{"file":146,"line":263,"context":235},536,{"file":146,"line":265,"context":235},537,{"file":146,"line":267,"context":235},538,{"file":146,"line":269,"context":235},543,{"file":146,"line":271,"context":235},576,{"file":146,"line":273,"context":235},577,[],[],{"summary":277,"deductions":278},"The zip-embed plugin version 0.4 exhibits a mixed security posture. While the static analysis shows no dangerous functions, SQL queries are properly prepared, and there are no external HTTP requests or known vulnerabilities, several areas raise concerns. The plugin has a notable percentage of unescaped output (87%), which could lead to cross-site scripting (XSS) vulnerabilities if user-supplied data is directly included in the output. Furthermore, the complete absence of nonce and capability checks on any entry points, including the four shortcodes, is a significant security weakness. This means that any user, regardless of their role or permissions, could potentially trigger actions or display content through these shortcodes without proper authorization or validation. The vulnerability history is clean, which is a positive indicator, but it does not mitigate the risks identified in the current code analysis. Overall, while the plugin avoids common pitfalls like vulnerable SQL queries or dangerous functions, the lack of output escaping and, more critically, the absence of authorization checks on its entry points present a tangible risk.",[279,281,283],{"reason":280,"points":129},"High percentage of unescaped output",{"reason":282,"points":11},"No nonce checks on entry points",{"reason":284,"points":11},"No capability checks on entry points","2026-03-17T00:46:41.642Z",{"wat":287,"direct":292},{"assetPaths":288,"generatorPatterns":289,"scriptPaths":290,"versionParams":291},[],[],[],[],{"cssClasses":293,"htmlComments":295,"htmlAttributes":296,"restEndpoints":299,"jsGlobals":300,"shortcodeOutput":301},[294,217,221],"zip_file",[],[213,217,297,298,221],"zip_file_name","zip_file_contents",[],[],[302,303,304],"\u003Cinput type='text' readonly value='[zip id=","\u003Cdiv id=\"zip_files_group\">","\u003Ch2>[zip_title]\u003C\u002Fh2>\u003Cdiv class=\"zip_file\">[zip_files]\u003Ch3>[zip_file_name]\u003C\u002Fh3>\u003Ctextarea class=\"widefat\" readonly>[zip_file_contents]\u003C\u002Ftextarea>[\u002Fzip_files]\u003C\u002Fdiv>[zip_gallery]"]