[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fGuoQeEWKdM_F-8dufqgZQhSBsCT83akPzFz1YrutovM":3,"$fEGyywyfeYAh1IXihG4mX7zh2dqdirMfqKo1hl8ypNnU":274,"$fOpM-YcNCvutD23AjphSO5eyWQbY0VHK53uIWiDVhAWo":278},{"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":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30,"discovery_status":31,"vulnerabilities":32,"developer":33,"crawl_stats":29,"alternatives":39,"analysis":144,"fingerprints":241},"github-release-downloads","GitHub Release Downloads","2.3.1","IvanRF","https:\u002F\u002Fprofiles.wordpress.org\u002Fivanrf\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fivanrf.com\u002Fen\u002Fgithub-release-downloads\u002F\" rel=\"nofollow ugc\">GitHub Release Downloads\u003C\u002Fa> allows you to get the download count, links and more information for releases of GitHub repositories.\u003C\u002Fp>\n\u003Ch4>Download count\u003C\u002Fh4>\n\u003Cp>The shortcode is \u003Ccode>[grd_count]\u003C\u002Fcode>. It returns a number corresponding to the sum of all download count values for the selected releases. For instance, you can get the number of total downloads for one GitHub repository.\u003C\u002Fp>\n\u003Cp>Attributes\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>user\u003C\u002Fcode>: the GitHub username.\u003C\u002Fli>\n\u003Cli>\u003Ccode>repo\u003C\u002Fcode>: the GitHub repository name.\u003C\u002Fli>\n\u003Cli>\u003Ccode>latest\u003C\u002Fcode>: only gets information about the latest published release for the repository.\u003C\u002Fli>\n\u003Cli>\u003Ccode>tag\u003C\u002Fcode>: only gets information about the release with the specified tag name.\u003C\u002Fli>\n\u003Cli>\u003Ccode>prereleases\u003C\u002Fcode>: includes draft releases and prereleases. Default value is \u003Ccode>false\u003C\u002Fcode>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Examples\u003C\u002Fp>\n\u003Cul>\n\u003Cli>All repository downloads:   \u003Ccode>[grd_count user=\"IvanRF\" repo=\"MassiveFileRenamer\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Latest release downloads:   \u003Ccode>[grd_count user=\"IvanRF\" repo=\"MassiveFileRenamer\" latest=\"true\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Specific release downloads: \u003Ccode>[grd_count user=\"IvanRF\" repo=\"MassiveFileRenamer\" tag=\"v1.6.0\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Note: \u003Ccode>user\u003C\u002Fcode> and\u002For \u003Ccode>repo\u003C\u002Fcode> can be omitted if default values are set.\u003C\u002Fp>\n\u003Ch4>Release downloads list\u003C\u002Fh4>\n\u003Cp>The shortcode is \u003Ccode>[grd_list]\u003C\u002Fcode>. It returns an HTML list for the selected releases including the release tag name, the release description and the list of files that can be downloaded, like release assets or the source code.\u003Cbr \u002F>\nFor styling, class selectors are provided (e.g.: \u003Ccode>release-downloads-header\u003C\u002Fcode>, \u003Ccode>release-name\u003C\u002Fcode>, etc.).\u003C\u002Fp>\n\u003Cp>Attributes\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>user\u003C\u002Fcode>, \u003Ccode>repo\u003C\u002Fcode>, \u003Ccode>latest\u003C\u002Fcode>, \u003Ccode>tag\u003C\u002Fcode>, \u003Ccode>prereleases\u003C\u002Fcode>: same as above.\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide_description\u003C\u002Fcode>: hides the release description.\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide_size\u003C\u002Fcode>: hides information about the file size.\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide_downloads\u003C\u002Fcode>: hides information about the download count.\u003C\u002Fli>\n\u003Cli>\u003Ccode>downloads_suffix\u003C\u002Fcode>: use it for internationalization. Default value is \u003Ccode>\" downloads\"\u003C\u002Fcode>.\u003C\u002Fli>\n\u003Cli>\u003Ccode>hide_source_code\u003C\u002Fcode>: hides the download link for the source code.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Examples\u003C\u002Fp>\n\u003Cul>\n\u003Cli>All repository downloads:   \u003Ccode>[grd_list user=\"IvanRF\" repo=\"MassiveFileRenamer\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Latest release downloads:   \u003Ccode>[grd_list user=\"IvanRF\" repo=\"MassiveFileRenamer\" latest=\"true\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Specific release downloads: \u003Ccode>[grd_list user=\"IvanRF\" repo=\"MassiveFileRenamer\" tag=\"v1.5.6\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Hide file size:             \u003Ccode>[grd_list user=\"IvanRF\" repo=\"MassiveFileRenamer\" hide_size=\"true\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Hide downloads count:       \u003Ccode>[grd_list user=\"IvanRF\" repo=\"MassiveFileRenamer\" hide_downloads=\"true\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Downloads suffix change:    \u003Ccode>[grd_list user=\"IvanRF\" repo=\"MassiveFileRenamer\" downloads_suffix=\"descargas\"]\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Boolean attributes can take any of this values: “1”, “true”, “on” and “yes”; or “0”, “false”, “off” and “no”.\u003C\u002Fp>\n\u003Ch4>Latest version\u003C\u002Fh4>\n\u003Cp>The shortcode is \u003Ccode>[grd_latest_version]\u003C\u002Fcode>. It returns the tag name of the latest published full release.\u003Cbr \u002F>\nFor tag names like “v1.6.0”, it returns “1.6.0” as the version number.\u003C\u002Fp>\n\u003Cp>Attributes\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>user\u003C\u002Fcode>, \u003Ccode>repo\u003C\u002Fcode>, \u003Ccode>prereleases\u003C\u002Fcode>: same as above.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Settings\u003C\u002Fh4>\n\u003Cp>Under WordPress \u003Cstrong>Settings\u003C\u002Fstrong> menu you will find the \u003Cstrong>GitHub Release Downloads\u003C\u002Fstrong> options page. In this page you can set values for the GitHub username and the repository name to use by default in the shortcodes.\u003C\u002Fp>\n\u003Cp>If both values are set, the shortcodes can be used without attributes (e.g.: \u003Ccode>[grd_count]\u003C\u002Fcode>) since default values for \u003Ccode>user\u003C\u002Fcode> and \u003Ccode>repo\u003C\u002Fcode> will be used.\u003Cbr \u002F>\nAttribute values take precedence over default values. For example, \u003Ccode>[grd_count repo=\"MyRepo\"]\u003C\u002Fcode> will use the username default value and the repository specified in the shortcode.\u003C\u002Fp>\n","Get the download count, links and more information for releases of GitHub repositories.",70,5976,96,4,"2020-11-24T20:52:00.000Z","5.5.18","3.1","",[20,21,22,23,24],"download","downloads","github","release","releases","https:\u002F\u002Fivanrf.com\u002Fen\u002Fgithub-release-downloads\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgithub-release-downloads.2.3.1.zip",85,0,null,"2026-04-16T10:56:18.058Z","no_bundle",[],{"slug":34,"display_name":7,"profile_url":8,"plugin_count":35,"total_installs":11,"avg_security_score":27,"avg_patch_time_days":36,"trust_score":37,"computed_at":38},"ivanrf",1,30,84,"2026-05-19T20:31:46.923Z",[40,58,79,97,119],{"slug":41,"name":42,"version":43,"author":44,"author_profile":45,"description":46,"short_description":47,"active_installs":28,"downloaded":48,"rating":28,"num_ratings":28,"last_updated":49,"tested_up_to":50,"requires_at_least":51,"requires_php":52,"tags":53,"homepage":56,"download_link":57,"security_score":27,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"continuous-delivery","Continuous Delivery for Digital Goods and Downloads","1.0.4","dreitier","https:\u002F\u002Fprofiles.wordpress.org\u002Fdreitier\u002F","\u003Cp>\u003Cem>Continuous Delivery for Digital Goods and Downloads\u003C\u002Fem> provides unified API endpoints to publish new releases of your software products. Those endpoints can be called from CI services like GitHub Actions or Jenkins.\u003Cbr \u002F>\nPreviously uploaded files to AWS S3 can be published in Easy Digital Downloads or Download Monitor and then be provided as protected downloads.\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Same integration experience for Easy Digital Downloads and Download Monitor\u003C\u002Fli>\n\u003Cli>Unified API endpoints for publishing new release versions\u003C\u002Fli>\n\u003Cli>Provide download of files in S3-compatible object storages like AWS S3 or Minio\u003C\u002Fli>\n\u003Cli>Downloaded files are logged in EDD’s and DLM’s reports\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Requirements\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>WordPress since 6.0\u003C\u002Fli>\n\u003Cli>PHP >= 8.1\u003C\u002Fli>\n\u003Cli>Easy Digital Downloads or Download Monitor\u003C\u002Fli>\n\u003C\u002Ful>\n","Continuous Delivery for Digital Goods and Downloads expands your WordPress download portal to a fully-fledged Continuous Delivery pipeline.",2560,"2022-12-09T12:23:00.000Z","6.1.10","5.6","8.1",[20,21,54,23,55],"management","software","https:\u002F\u002Fgithub.com\u002Fdreitier\u002Fcontinuous-delivery-for-digital-goods-and-downloads","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcontinuous-delivery.1.0.4.zip",{"slug":59,"name":60,"version":61,"author":62,"author_profile":63,"description":64,"short_description":65,"active_installs":28,"downloaded":66,"rating":28,"num_ratings":28,"last_updated":67,"tested_up_to":68,"requires_at_least":69,"requires_php":70,"tags":71,"homepage":76,"download_link":77,"security_score":78,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"release-deploy-edd","Release Deploy for Easy Digital Downloads","1.0.1","Artem Semkin","https:\u002F\u002Fprofiles.wordpress.org\u002Fartemsemkin\u002F","\u003Cp>Release Deploy for Easy Digital Downloads connects your GitHub releases directly to your EDD store—no ZIP uploads, no manual updates, no local file storage.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Perfect for developers\u003C\u002Fstrong> who want to streamline their release workflow: create a GitHub release and your customers instantly and securely get access.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>How it works\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Create a GitHub release (manually or via CI\u002FCD) \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Upload your ZIP as a release asset \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Select it in EDD \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Files serve directly to customers.\u003C\u002Fp>\n\u003Cp>Your GitHub repository becomes the single source of truth for both your code and your downloads.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Core features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Direct delivery\u003C\u002Fstrong> – serve files from GitHub CDN without storing assets in \u003Ccode>\u002Fwp-uploads\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Private & public repos\u003C\u002Fstrong> – both fully supported with secure token authentication\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Visual file browser\u003C\u002Fstrong> – select GitHub release assets as easily as picking images from Media Library\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Smart caching\u003C\u002Fstrong> – stay well within GitHub rate limits to ensure uninterrupted downloads\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Real-time validation\u003C\u002Fstrong> – instant confirmation that files are accessible and ready to serve to customers\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Rate limit monitoring\u003C\u002Fstrong> – stay informed about your GitHub API usage\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>True CI\u002FCD deployment for your EDD store\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Push a tag. Your EDD store updates instantly. Customers get the latest version. You do nothing.\u003C\u002Fp>\n\u003Ch3>Source Code\u003C\u002Fh3>\n\u003Cp>The complete source code for this plugin, including non-compiled JavaScript and CSS, is available on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fartkrsk\u002Frelease-deploy-edd\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Please see the GitHub repository for build instructions and development setup.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Upgrade to Pro\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Upgrade to \u003Ca href=\"https:\u002F\u002Fartemsemkin.gumroad.com\u002Fl\u002Frelease-deploy-edd-pro\u002FBF2025\" rel=\"nofollow ugc\">Release Deploy Pro\u003C\u002Fa> and unlock:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>“Latest” release keyword\u003C\u002Fstrong> – set once, never update Download files again when you release\u003C\u002Fli>\n\u003Cli>\u003Cstrong>GitHub webhooks\u003C\u002Fstrong> – customers get new releases instantly after you push, zero manual sync\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Version & changelog sync\u003C\u002Fstrong> – write once on GitHub, version numbers and changelogs update everywhere automatically\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Email notifications\u003C\u002Fstrong> – get alerted immediately if downloads fail or rate limits approach\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Priority support\u003C\u002Fstrong> – dedicated support forum with 24-hour response target\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to GitHub’s REST API to serve downloadable files from your repositories.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What service is used:\u003C\u002Fstrong>\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fapi.github.com\" rel=\"nofollow ugc\">GitHub REST API\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>What data is sent:\u003C\u002Fstrong>\u003Cbr \u002F>\n– Your Personal Access Token (for authentication)\u003Cbr \u002F>\n– Repository names (to fetch releases)\u003Cbr \u002F>\n– Release information (to retrieve download files)\u003C\u002Fp>\n\u003Cp>\u003Cstrong>When data is sent:\u003C\u002Fstrong>\u003Cbr \u002F>\n– When browsing repositories in the admin interface\u003Cbr \u002F>\n– When validating file availability\u003Cbr \u002F>\n– When customers download files from your store\u003Cbr \u002F>\n– When checking API rate limits\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Privacy & Terms:\u003C\u002Fstrong>\u003Cbr \u002F>\n– \u003Ca href=\"https:\u002F\u002Fdocs.github.com\u002Fen\u002Fsite-policy\u002Fgithub-terms\u002Fgithub-terms-of-service\" rel=\"nofollow ugc\">GitHub Terms of Service\u003C\u002Fa>\u003Cbr \u002F>\n– \u003Ca href=\"https:\u002F\u002Fdocs.github.com\u002Fen\u002Fsite-policy\u002Fprivacy-policies\u002Fgithub-privacy-statement\" rel=\"nofollow ugc\">GitHub Privacy Statement\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Your GitHub Personal Access Token is stored securely on your WordPress server and is never exposed to customers or third parties. All API requests are made server-side.\u003C\u002Fp>\n","Automate your EDD workflow. Push a tag, create a GitHub release, and files are instantly available—supports private repos, no local storage.",197,"2025-12-01T01:32:00.000Z","6.9.4","6.0","7.4",[72,73,22,74,75],"automation","easy-digital-downloads","webhook","workflow","https:\u002F\u002Fartemsemkin.gumroad.com\u002Fl\u002Frelease-deploy-edd-pro","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Frelease-deploy-edd.1.0.1.zip",100,{"slug":80,"name":81,"version":82,"author":83,"author_profile":84,"description":85,"short_description":86,"active_installs":28,"downloaded":87,"rating":28,"num_ratings":28,"last_updated":88,"tested_up_to":89,"requires_at_least":90,"requires_php":91,"tags":92,"homepage":95,"download_link":96,"security_score":78,"vuln_count":28,"unpatched_count":28,"last_vuln_date":29,"fetched_at":30},"rundiz-downloads","Rundiz Downloads","1.1.4","vee","https:\u002F\u002Fprofiles.wordpress.org\u002Fokvee\u002F","\u003Cp>Rundiz Downloads is a files, documents management that support GitHub auto update. Provide the download link, track download files.\u003C\u002Fp>\n\u003Cp>The GitHub auto update means the URL and file size will be update automatically on GitHub commit or new tag\u002Frelease.\u003Cbr \u002F>\nYou can change your setting to accept how often of auto update. Every releases and commits, every releases, or none.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Manage files locally or hosted on GitHub or any remote files.\u003C\u002Fli>\n\u003Cli>Use GitHub OAuth to manage webhooks (webhook is for auto update). It will be super easy if you have many users or repositories.\u003C\u002Fli>\n\u003Cli>Auto update download URL and version once GitHub repository was updated.\u003C\u002Fli>\n\u003Cli>Setting GitHub auto update to none, every releases, every releases and commits.\u003C\u002Fli>\n\u003Cli>Manual update multiple remote file data such as file size that was changed.\u003C\u002Fli>\n\u003Cli>Use version range to compare tags before update.\u003C\u002Fli>\n\u003Cli>Insert download button on classic editor or TinyMCE.\u003C\u002Fli>\n\u003Cli>Download logs\u002Fstatistic.\u003C\u002Fli>\n\u003Cli>Admin dashboard statistic widget.\u003C\u002Fli>\n\u003Cli>Block bots from downloading by captcha, user agent.\u003C\u002Fli>\n\u003Cli>Captcha with the audio.\u003C\u002Fli>\n\u003Cli>Redirect to file or force download. (The force download will be working with local file only.)\u003C\u002Fli>\n\u003Cli>Support shortcode.\u003C\u002Fli>\n\u003Cli>Customisable download element for shortcode.\u003C\u002Fli>\n\u003Cli>Automatically delete logs older than specific number of days.\u003C\u002Fli>\n\u003Cli>Localisation support\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Tested up to PHP 8.5.\u003C\u002Fp>\n","Download manager for WordPress that support GitHub auto update.",2215,"2026-04-08T16:30:00.000Z","7.0","4.7.0","5.5",[20,93,21,94,22],"download-manager","file-hosting","https:\u002F\u002Frundiz.com\u002F?p=319","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Frundiz-downloads.1.1.4.zip",{"slug":98,"name":99,"version":100,"author":101,"author_profile":102,"description":103,"short_description":104,"active_installs":105,"downloaded":106,"rating":107,"num_ratings":108,"last_updated":109,"tested_up_to":89,"requires_at_least":69,"requires_php":18,"tags":110,"homepage":114,"download_link":115,"security_score":116,"vuln_count":117,"unpatched_count":28,"last_vuln_date":118,"fetched_at":30},"simple-download-monitor","Simple Download Monitor","4.0.6","mra13","https:\u002F\u002Fprofiles.wordpress.org\u002Fmra13\u002F","\u003Cp>I developed the Simple Download Monitor plugin because I needed a nice way to manage my digital downloads and monitor the number of downloads of my files and documents.\u003C\u002Fp>\n\u003Cp>This plugin is very useful for managing and tracking your digital file download counts.\u003C\u002Fp>\n\u003Cp>You can password protect your downloadable files and documents too (visitors will require a password before downloading the file when you use this option).\u003C\u002Fp>\n\u003Cp>You can configure downloadable files from your WordPress admin dashboard via an elegant user interface. Then allow your visitors to download the files and this plugin will monitor which files get downloaded how many times.\u003C\u002Fp>\n\u003Cp>The plugin will log the IP addresses of the users who download your digital files and documents. It will also log the date and time of each download.\u003C\u002Fp>\n\u003Cp>It has a very user-friendly interface for uploading, managing, monitoring and tracking file downloads.\u003C\u002Fp>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FSjVaanbulRU?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Ch4>Simple Download Monitor Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Add, edit and remove downloads from an easy to use interface.\u003C\u002Fli>\n\u003Cli>Drag and drop file and document uploads.\u003C\u002Fli>\n\u003Cli>Assign categories and tags to your downloadable files and documents.\u003C\u002Fli>\n\u003Cli>Rich text editor for editing your download item description.\u003C\u002Fli>\n\u003Cli>Use shortcodes to display a download now button on a WordPress post or page.\u003C\u002Fli>\n\u003Cli>Show trackable download now buttons for your files anywhere on your site.\u003C\u002Fli>\n\u003Cli>Shortcode to create a direct download link for a file. Useful for hotlinking.\u003C\u002Fli>\n\u003Cli>Download counter for each file.\u003C\u002Fli>\n\u003Cli>Ability to set a download count offset for each file.\u003C\u002Fli>\n\u003Cli>Track IP addresses of the users who downloaded your files.\u003C\u002Fli>\n\u003Cli>Track date and time of each file downloads.\u003C\u002Fli>\n\u003Cli>Track the usernames of the users downloading the files.\u003C\u002Fli>\n\u003Cli>Track the User Agent of the visitors downloading the files.\u003C\u002Fli>\n\u003Cli>Track the Referrer URL to see which page the downloads are coming from.\u003C\u002Fli>\n\u003Cli>Option to setup secure downloads for your files (the URL of the downloadable file will be hidden).\u003C\u002Fli>\n\u003Cli>Option to upload a thumbnail image for each of your downloadable files.\u003C\u002Fli>\n\u003Cli>Option to use a nice looking template to show your download now buttons.\u003C\u002Fli>\n\u003Cli>Ability to search and sort your downloadable files in the admin dashboard.\u003C\u002Fli>\n\u003Cli>Ability to create a search page and allow your visitors to search your downloads.\u003C\u002Fli>\n\u003Cli>Track the number of downloads for each of your files.\u003C\u002Fli>\n\u003Cli>Track the visitors country.\u003C\u002Fli>\n\u003Cli>View the daily download counts of your items in a chart.\u003C\u002Fli>\n\u003Cli>WordPress Shortcode for embedding a download link for a file.\u003C\u002Fli>\n\u003Cli>Tinymce button in the WordPress post\u002Fpage editor so you can easily add the shortcode.\u003C\u002Fli>\n\u003Cli>You can customize the “Download Now” button text of an item to anything you want.\u003C\u002Fli>\n\u003Cli>Ability to add the download now buttons to your sidebar widget.\u003C\u002Fli>\n\u003Cli>Create password protected download now buttons. Users will only be able to download the file if they enter the correct password. \u003Ca href=\"https:\u002F\u002Fwww.tipsandtricks-hq.com\u002Fcreate-a-password-protected-download-file-6838\" rel=\"nofollow ugc\">View the tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Option to add additional security to your downloadable files with the \u003Ca href=\"https:\u002F\u002Fsimple-download-monitor.com\u002Fenhanced-file-protection-securing-your-downloads\u002F\" rel=\"nofollow ugc\">Enhanced File Protection Feature\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>Shortcode to show the download counter of a file. Use it to show off your file download count.\u003C\u002Fli>\n\u003Cli>Shortcode to show all the downloads from a particular category.\u003C\u002Fli>\n\u003Cli>Shortcode to embed a file tree browser for your downloadable files. The file browser is ajax based and it shows the files structured by categories.\u003C\u002Fli>\n\u003Cli>Ability to open the downloads in new browser window or tab. When your users click on a download button, it will open in a new window or tab.\u003C\u002Fli>\n\u003Cli>Ability to show your downloads in a grid display. \u003Ca href=\"https:\u002F\u002Fwww.tipsandtricks-hq.com\u002Fshow-file-downloads-in-a-nice-grid-display-7273\" rel=\"nofollow ugc\">View the tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Export all the file download logs to a CSV file.\u003C\u002Fli>\n\u003Cli>Ability to reset the log entries.\u003C\u002Fli>\n\u003Cli>Ability to trim the download log entries.\u003C\u002Fli>\n\u003Cli>Shortcode to show a number of latest downloads to your visitors.\u003C\u002Fli>\n\u003Cli>Shortcode to show a number of popular downloads to your visitors.\u003C\u002Fli>\n\u003Cli>Ability to disable the download monitoring (logging) for certain items (or all items).\u003C\u002Fli>\n\u003Cli>You can also choose to only monitor downloads from unique IP address only.\u003C\u002Fli>\n\u003Cli>Option to specify file size info so it can be shown to your visitors. \u003Ca href=\"https:\u002F\u002Fsimple-download-monitor.com\u002Fhow-to-show-file-size-info-of-your-downloads\u002F\" rel=\"nofollow ugc\">View the tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Option to specify version number info for the download item so it can be shown to your visitors.\u003C\u002Fli>\n\u003Cli>Option to show the download published date.\u003C\u002Fli>\n\u003Cli>Option to restrict downloads to logged-in users only. \u003Ca href=\"https:\u002F\u002Fsimple-download-monitor.com\u002Foffering-downloads-to-logged-in-users-members-only\u002F\" rel=\"nofollow ugc\">View the tutorial\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>There is an option to show an ajax file tree browser so your visitors can browse all your files and download the ones they want.\u003C\u002Fli>\n\u003Cli>Option to ignore download count from bots.\u003C\u002Fli>\n\u003Cli>Option to add Google reCAPTCHA to your download buttons.\u003C\u002Fli>\n\u003Cli>Option to add Cloudflare Turnstile CAPTCHA to your download buttons.\u003C\u002Fli>\n\u003Cli>Option to add Terms and Conditions to your download buttons.\u003C\u002Fli>\n\u003Cli>Ability to easily clone\u002Fcopy your existing download items.\u003C\u002Fli>\n\u003Cli>Ability to insert Adsense or other Ad code inside the download item display.\u003C\u002Fli>\n\u003Cli>Gutenberg block to insert download now buttons on a post or page.\u003C\u002Fli>\n\u003Cli>Option to override the default template by placing a custom template file in the active theme’s directory.\u003C\u002Fli>\n\u003Cli>The stats menu can show you the top downloads, downloads by date, country, browser etc.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>View more details on the \u003Ca href=\"https:\u002F\u002Fsimple-download-monitor.com\u002F\" rel=\"nofollow ugc\">download monitor plugin\u003C\u002Fa> page.\u003C\u002Fp>\n\u003Ch4>Language Translations\u003C\u002Fh4>\n\u003Cp>The following language translations are already available for the download monitor plugin:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>English\u003C\u002Fli>\n\u003Cli>German\u003C\u002Fli>\n\u003Cli>Spanish\u003C\u002Fli>\n\u003Cli>French\u003C\u002Fli>\n\u003Cli>Italian\u003C\u002Fli>\n\u003Cli>Russian\u003C\u002Fli>\n\u003Cli>Dutch\u003C\u002Fli>\n\u003Cli>Portuguese (Brasil)\u003C\u002Fli>\n\u003Cli>Hebrew\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Simple Download Monitor Plugin Usage\u003C\u002Fh4>\n\u003Cp>Once you have installed the plugin, go to “Downloads -> Settings” interface to configure some options\u003C\u002Fp>\n\u003Cp>\u003Cstrong>A) Configure Download Monitor basic settings\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Admin Options: Remove Tinymce Button – Removes the SDM Downloads button from the WP content editor (default: unchecked).\u003C\u002Fli>\n\u003Cli>Color Options: Download Button Color – Select a default color of the download button (default: green).\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>B) Add a new download\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>To configure a new download follow these steps:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Go to “Downloads->Add New” interface in your WP admin\u003C\u002Fli>\n\u003Cli>Enter a title for your download\u003C\u002Fli>\n\u003Cli>Add a description for the download\u003C\u002Fli>\n\u003Cli>Select the file from your computer and upload it (or use an URL of the file)\u003C\u002Fli>\n\u003Cli>Select an image for the download (it will be displayed as a thumbnail on the front end)\u003C\u002Fli>\n\u003Cli>Publish it\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>You can view all of your existing downloads from the “Downloads->Downloads” interface.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>C) Create a download button\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Create a new post\u002Fpage and click the “SDM Downlaods” TinyMCE button to insert a shortcode (This button will only show up if you haven’t unchecked it in the settings). You can choose to display your download with a nice looking box or just a plain download link\u002Fbutton.\u003C\u002Fp>\n\u003Cp>Example Shortcode Usage:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>[sdm_download id=\"271\" fancy=\"1\"]  (embed a download button inside a box with other information e.g. Thumbnail, Title and Description)\n\n[sdm_download id=\"271\" fancy=\"0\"]  (embed a plain download button\u002Flink for a file)\n\n[sdm_download id=\"271\" fancy=\"0\" color=\"blue\"]  (embed a plain download button\u002Flink for a file with a blue color)\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>D) Download logs\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>You can check the download stats from the “Downloads->Logs” interface. It shows the number of downloads for each files, IP address of the user who downloaded it, date and time of the download.\u003C\u002Fp>\n\u003Ch3>3rd Party or External Libraries\u002FServices\u003C\u002Fh3>\n\u003Cp>The plugin uses the Google Charts library to show the download count charts in the admin interface (if you use the stats menu of the plugin). You can see more details about this library at the following URL:\u003Cbr \u002F>\nhttps:\u002F\u002Fdevelopers.google.com\u002Fchart\u002F\u003C\u002Fp>\n\u003Ch3>Detailed Usage Documentation\u003C\u002Fh3>\n\u003Cp>View more usage instructions on the \u003Ca href=\"https:\u002F\u002Fsimple-download-monitor.com\u002F\" rel=\"nofollow ugc\">Download Monitor Plugin\u003C\u002Fa> page.\u003C\u002Fp>\n\u003Ch3>Github Repository\u003C\u002Fh3>\n\u003Cp>https:\u002F\u002Fgithub.com\u002FArsenal21\u002Fsimple-download-monitor\u003C\u002Fp>\n\u003Cp>If you need extra action hooks or filters for this plugin then let us know.\u003C\u002Fp>\n","Easily manage downloadable files and monitor downloads of your digital files from your WordPress site.",20000,1313000,92,151,"2026-03-27T09:38:00.000Z",[111,112,20,21,113],"count","counter","tracker","https:\u002F\u002Fsimple-download-monitor.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsimple-download-monitor.4.0.6.zip",77,17,"2026-02-26 19:24:24",{"slug":120,"name":121,"version":122,"author":123,"author_profile":124,"description":125,"short_description":126,"active_installs":127,"downloaded":128,"rating":129,"num_ratings":130,"last_updated":131,"tested_up_to":68,"requires_at_least":132,"requires_php":133,"tags":134,"homepage":139,"download_link":140,"security_score":141,"vuln_count":142,"unpatched_count":28,"last_vuln_date":143,"fetched_at":30},"prevent-direct-access","Prevent Direct Access – Protect WordPress Files","2.8.8.7","WP Folio Team","https:\u002F\u002Fprofiles.wordpress.org\u002Fbuildwps\u002F","\u003Cp>Prevent Direct Access (PDA) offers a simple solution to protect your WordPress files as well as prevent Google, other search engines and unwanted users from indexing and stealing your hard-to-produce ebooks, documents, and videos.\u003C\u002Fp>\n\u003Cp>We’ve created an intuitive user interface directly in your Media Library. It’s simple and easy to use. You’ll be able to protect your private files in no time.\u003C\u002Fp>\n\u003Ch4>An Inside Look at Prevent Direct Access (PDA) Gold\u003C\u002Fh4>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F37wP7TTcW4Q?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n\u003Cp>Our PDA Lite version offers the following features:\u003C\u002Fp>\n\u003Ch3>Protect Unlimited WordPress Media Library File Uploads\u003C\u002Fh3>\n\u003Cp>Prevent Direct Access is designed to protect all your WordPress media files such as images (PNG, JPEG), documents (PDF, DOCX, PPTX), audios, and videos (MP4, MP3) that you upload to your website under Media Library or via Media, Pages or Posts.\u003C\u002Fp>\n\u003Cp>Once protected, only admin users and the file’s author can access them directly. Unwanted users will be redirected to your 404 not found page when attempting to read and download these file URLs.\u003C\u002Fp>\n\u003Cp>You can protect unlimited file uploads with our PDA Lite alone.\u003C\u002Fp>\n\u003Ch3>Customize “No Access” Page\u003C\u002Fh3>\n\u003Cp>Instead of redirecting unauthorized users to the 404 page, you can show them a custom page, e.g registration or login page. Users will have to log into your site in order to access these protected files.\u003C\u002Fp>\n\u003Ch3>Auto-generate Private URLs\u003C\u002Fh3>\n\u003Cp>Once a WordPress file is protected, Prevent Direct Access will automatically generate a private download link containing a random string for you to access or share this private file with others.\u003C\u002Fp>\n\u003Cp>You can then copy that private download link to clipboard and subsequently paste it on your browsers and\u002For email by clicking on the Copy URL button.\u003C\u002Fp>\n\u003Ch3>Restrict Access based on IP Addresses\u003C\u002Fh3>\n\u003Cp>Private Download Links can be accessed by anyone who knows the exact URL. You have an option to block unwanted IP addresses from accessing your private links. You can also expire them automatically by clicks or time with our PDA Gold version.\u003C\u002Fp>\n\u003Ch3>Block Google from Indexing your Files\u003C\u002Fh3>\n\u003Cp>Prevent Direct Access (PDA) explicitly tells Google and other search engines not to index any of your protected files so that their content and original URLs will never appear on the search results.\u003C\u002Fp>\n\u003Ch3>Prevent Image Hotlinking\u003C\u002Fh3>\n\u003Cp>Our plugin also stops others from stealing and using your images on their website by linking them directly from your website, which could slow down your website significantly.\u003C\u002Fp>\n\u003Ch3>Protect WordPress Uploads Directory\u003C\u002Fh3>\n\u003Cp>The \u003Ccode>wp-content\u002Fuploads\u003C\u002Fcode> folder where all your uploaded images and files are stored will also be protected. No one will be able to see and browse the content on that folder anymore.\u003C\u002Fp>\n\u003Ch3>Disable Copy and Right Click\u003C\u002Fh3>\n\u003Cp>Our plugin provides you with an option to disable text selection and right-click on all your web pages to prevent content theft.\u003C\u002Fp>\n\u003Ch3>Restrict Media Library Access\u003C\u002Fh3>\n\u003Cp>Instead of allowing users to view all file uploads in Media Library, you can restrict users to view their own ones only.\u003C\u002Fp>\n\u003Cp>We also provide a premium \u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Fextensions\u002Fwordpress-restrict-page-file-access\u002F?utm_source=wp.org&utm_medium=premium-after-gold-features&utm_campaign=pda-lite\" rel=\"nofollow ugc\">Folder Protection\u003C\u002Fa> feature that allows you to protect all files inside the private folder with just one-click.\u003C\u002Fp>\n\u003Cblockquote>\n\u003Ch4>Prevent Direct Access Gold Version\u003C\u002Fh4>\n\u003Cp>Our \u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Ffeatures\u002F?utm_source=wp.org&utm_medium=premium-after-gold-features&utm_campaign=pda-lite\" rel=\"nofollow ugc\">PDA Gold\u003C\u002Fa> offers more advanced features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Protect unlimited files and all file types\u003C\u002Fli>\n\u003Cli>Encrypt protected files to stop unauthorized downloads from viewing\u003C\u002Fli>\n\u003Cli>Protect new file uploads automatically or on the fly\u003C\u002Fli>\n\u003Cli>Restrict protected file access to logged-in users or custom user roles\u003C\u002Fli>\n\u003Cli>Search and replace unprotected URLs in content\u003C\u002Fli>\n\u003Cli>Create & customize unlimited Private Download Links\u003C\u002Fli>\n\u003Cli>Expire Private Download Links by days and clicks\u003C\u002Fli>\n\u003Cli>Protect all files under specific folders on WordPress root and uploads directory with our \u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Fextensions\u002Fwordpress-restrict-page-file-access\u002F?utm_source=wp.org&utm_medium=premium-after-gold-features&utm_campaign=pda-lite\" rel=\"nofollow ugc\">Folder Protection\u003C\u002Fa> feature.\u003C\u002Fli>\n\u003Cli>Grant individual or multiple files access via Referrer Links\u003C\u002Fli>\n\u003Cli>Restrict access to WooCommerce order page by IP addresses using \u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Fextensions\u002Fwoocommerce-integration\u002F?utm_source=wp.org&utm_medium=premium-after-gold-features&utm_campaign=pda-lite\" rel=\"nofollow ugc\">WooCommerce Integration\u003C\u002Fa> extension\u003C\u002Fli>\n\u003Cli>Sync or offload multiple files to Amazon S3, search & replace unprotected URLs in content and set their expiration time with \u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Fextensions\u002Famazon-s3-wordpress-uploads\u002F?utm_source=wp.org&utm_medium=premium-after-gold-features&utm_campaign=pda-lite\" rel=\"nofollow ugc\">Amazon S3 Integration\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Upload multiple files directly from your local to Amazon S3 or Wasabi using \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-s3-smart-upload\u002F?utm_source=wp.org&utm_medium=premium-after-gold-features&utm_campaign=pda-lite\" rel=\"ugc\">WordPress Amazon S3 – Wasabi Smart File Uploads Plugin\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Fextensions\u002Fwordpress-multisite-integration?utm_source=wp.org&utm_medium=premium-after-gold-features&utm_campaign=pda-lite\" rel=\"nofollow ugc\">Integrate with WordPress Multisite Network\u003C\u002Fa> and top membership plugins\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Fdocs\u002Fgrant-learndash-courses-access-enrolled-students\u002F?utm_source=wp.org&utm_medium=premium-after-gold-features&utm_campaign=pda-lite\" rel=\"nofollow ugc\">Integrate with LearnDash plugin\u003C\u002Fa> to grant course materials access to enrolled students only\u003C\u002Fli>\n\u003Cli>Protect multiple files at once and many other premium features\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Check out our \u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Ffeatures\u002F?utm_source=wp.org&utm_medium=premium-after-gold-features&utm_campaign=pda-lite\" rel=\"nofollow ugc\">Prevent Direct Access (PDA) Gold\u003C\u002Fa> now.\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch4>Documentation and support\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>For documentation and tutorials go to our \u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Fdocs\u002F?utm_source=wp.org&utm_medium=documentations-and-support&utm_campaign=pda-lite\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>Check out \u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Fdocs\u002Fcompatible-wordpress-plugins\u002F?utm_source=wp.org&utm_medium=documentations-and-support&utm_campaign=pda-lite\" rel=\"nofollow ugc\">compatible hosting, themes, and plugins\u003C\u002Fa> with PPWP\u003C\u002Fli>\n\u003Cli>If you have any more questions or want to request new features, contact us through \u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Fcontact\u002F?utm_source=wp.org&utm_medium=documentations-and-support&utm_campaign=pda-lite\" rel=\"nofollow ugc\">this form\u003C\u002Fa> or drop us an email at \u003Ca href=\"mailto:hello@preventdirectaccess.com\" rel=\"nofollow ugc\">hello@preventdirectaccess.com\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Privacy Policy\u003C\u002Fh4>\n\u003Cp>PDA is designed to fully respect and protect personal information of its users. It does not collect any user information without your consent.\u003C\u002Fp>\n\u003Cp>We’re using GetResponse to communicate with our users in case they would like to opt in and receive future updates from us.\u003C\u002Fp>\n\u003Cp>User’s emails will be first sent to an external API on our secure server before getting managed by GetResponse.\u003C\u002Fp>\n\u003Cp>Please see our complete \u003Ca href=\"https:\u002F\u002Fpreventdirectaccess.com\u002Fprivacy-policy\u002F?utm_source=wp.org&utm_medium=privacy-policy&utm_campaign=pda-lite\" rel=\"nofollow ugc\">Privacy Policy\u003C\u002Fa> and \u003Ca href=\"https:\u002F\u002Fwww.getresponse.com\u002Flegal\u002Fprivacy\" rel=\"nofollow ugc\">GetResponse’s\u003C\u002Fa>.\u003C\u002Fp>\n","A simple way to prevent search engines and the public from indexing and accessing your files without complex user authentication.",10000,271830,94,292,"2026-04-06T09:12:00.000Z","4.7","5.6.1",[135,21,136,137,138],"copy-protection","folder-protection","protection","uploads","https:\u002F\u002Fpreventdirectaccess.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fprevent-direct-access.2.8.8.7.zip",99,2,"2025-04-24 00:00:00",{"attackSurface":145,"codeSignals":189,"taintFlows":204,"riskAssessment":231,"analyzedAt":240},{"hooks":146,"ajaxHandlers":169,"restRoutes":174,"shortcodes":175,"cronEvents":188,"entryPointCount":14,"unprotectedCount":28},[147,153,157,161,165],{"type":148,"name":149,"callback":150,"file":151,"line":152},"action","plugins_loaded","grd_load_plugin_textdomain","github-release-downloads.php",54,{"type":148,"name":154,"callback":155,"file":151,"line":156},"admin_notices","grd_admin_notices",89,{"type":148,"name":158,"callback":159,"file":151,"line":160},"admin_enqueue_scripts","grd_enqueue_scripts",91,{"type":148,"name":162,"callback":163,"file":151,"line":164},"admin_init","grd_register_settings",419,{"type":148,"name":166,"callback":167,"file":151,"line":168},"admin_menu","grd_menu",420,[170],{"action":171,"nopriv":172,"callback":171,"hasNonce":172,"hasCapCheck":173,"file":151,"line":13},"grd_dismiss_notice",false,true,[],[176,180,184],{"tag":177,"callback":178,"file":151,"line":179},"grd_count","grd_download_count_func",107,{"tag":181,"callback":182,"file":151,"line":183},"grd_list","grd_download_list_func",108,{"tag":185,"callback":186,"file":151,"line":187},"grd_latest_version","grd_latest_version_func",109,[],{"dangerousFunctions":190,"sqlUsage":191,"outputEscaping":193,"fileOperations":28,"externalRequests":35,"nonceChecks":28,"capabilityChecks":194,"bundledLibraries":203},[],{"prepared":28,"raw":28,"locations":192},[],{"escaped":14,"rawEcho":194,"locations":195},3,[196,199,201],{"file":151,"line":197,"context":198},72,"raw output",{"file":151,"line":200,"context":198},81,{"file":151,"line":202,"context":198},86,[],[205,223],{"entryPoint":206,"graph":207,"unsanitizedCount":28,"severity":222},"grd_dismiss_notice (github-release-downloads.php:97)",{"nodes":208,"edges":220},[209,214],{"id":210,"type":211,"label":212,"file":151,"line":213},"n0","source","$_POST",101,{"id":215,"type":216,"label":217,"file":151,"line":218,"wp_function":219},"n1","sink","update_option() [Settings Manipulation]",102,"update_option",[221],{"from":210,"to":215,"sanitized":173},"low",{"entryPoint":224,"graph":225,"unsanitizedCount":28,"severity":222},"\u003Cgithub-release-downloads> (github-release-downloads.php:0)",{"nodes":226,"edges":229},[227,228],{"id":210,"type":211,"label":212,"file":151,"line":213},{"id":215,"type":216,"label":217,"file":151,"line":218,"wp_function":219},[230],{"from":210,"to":215,"sanitized":173},{"summary":232,"deductions":233},"The github-release-downloads plugin v2.3.1 exhibits a generally strong security posture, with no known vulnerabilities in its history and a clean static analysis report regarding dangerous functions, SQL injection risks, and taint flows. The plugin effectively utilizes prepared statements for all SQL queries and implements capability checks for its entry points, which is a positive sign of secure development practices.  However, there are some areas for improvement. The plugin has a notable lack of nonce checks on its AJAX handlers, which could leave it susceptible to Cross-Site Request Forgery (CSRF) attacks if an attacker can trick a logged-in user into executing unintended actions. Additionally, the output escaping is only moderately effective, with 43% of outputs not being properly escaped, potentially leading to Cross-Site Scripting (XSS) vulnerabilities if user-controlled data is reflected directly in the output without sufficient sanitization. While the plugin has a clean history and no critical code signals, these identified weaknesses, particularly the absence of nonce checks and imperfect output escaping, represent potential security risks that should be addressed.",[234,237],{"reason":235,"points":236},"AJAX handlers lack nonce checks",7,{"reason":238,"points":239},"Insufficient output escaping",5,"2026-03-16T21:35:00.871Z",{"wat":242,"direct":250},{"assetPaths":243,"generatorPatterns":245,"scriptPaths":246,"versionParams":248},[244],"\u002Fwp-content\u002Fplugins\u002Fgithub-release-downloads\u002Fcss\u002Fstyle.css",[],[247],"\u002Fwp-content\u002Fplugins\u002Fgithub-release-downloads\u002Fjs\u002Fadmin-notices.js",[249],"github-release-downloads\u002Fjs\u002Fadmin-notices.js?ver=",{"cssClasses":251,"htmlComments":259,"htmlAttributes":260,"restEndpoints":262,"jsGlobals":263,"shortcodeOutput":264},[252,253,254,255,256,257,258],"release-downloads-header","release-description","release-downloads","release-name","release-size","release-download-count","release-source",[],[261],"grd_dismiss_notice_id",[],[171],[265,266,267,268,269,270,271,272,273],"\u003Ch2 class=\"release-downloads-header\">","\u003Cdiv class=\"release-description\">","\u003Cul class=\"release-downloads\">","\u003Ca href=\"","rel=\"nofollow\">","\u003Cstrong class=\"release-name\">","\u003Csmall class=\"release-size\">","\u003Csmall class=\"release-download-count\">","\u003Cstrong class=\"release-source\">",{"error":173,"url":275,"statusCode":276,"statusMessage":277,"message":277},"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fgithub-release-downloads\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":279,"versions":280},10,[281,286,293,300,307,314,321,328,335,341],{"version":6,"download_url":26,"svn_tag_url":282,"released_at":29,"has_diff":172,"diff_files_changed":283,"diff_lines":29,"trac_diff_url":284,"vulnerabilities":285,"is_current":173},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgithub-release-downloads\u002Ftags\u002F2.3.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgithub-release-downloads%2Ftags%2F2.3.0&new_path=%2Fgithub-release-downloads%2Ftags%2F2.3.1",[],{"version":287,"download_url":288,"svn_tag_url":289,"released_at":29,"has_diff":172,"diff_files_changed":290,"diff_lines":29,"trac_diff_url":291,"vulnerabilities":292,"is_current":172},"2.3.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgithub-release-downloads.2.3.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgithub-release-downloads\u002Ftags\u002F2.3.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgithub-release-downloads%2Ftags%2F2.2.0&new_path=%2Fgithub-release-downloads%2Ftags%2F2.3.0",[],{"version":294,"download_url":295,"svn_tag_url":296,"released_at":29,"has_diff":172,"diff_files_changed":297,"diff_lines":29,"trac_diff_url":298,"vulnerabilities":299,"is_current":172},"2.2.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgithub-release-downloads.2.2.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgithub-release-downloads\u002Ftags\u002F2.2.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgithub-release-downloads%2Ftags%2F2.1.0&new_path=%2Fgithub-release-downloads%2Ftags%2F2.2.0",[],{"version":301,"download_url":302,"svn_tag_url":303,"released_at":29,"has_diff":172,"diff_files_changed":304,"diff_lines":29,"trac_diff_url":305,"vulnerabilities":306,"is_current":172},"2.1.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgithub-release-downloads.2.1.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgithub-release-downloads\u002Ftags\u002F2.1.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgithub-release-downloads%2Ftags%2F2.0.1&new_path=%2Fgithub-release-downloads%2Ftags%2F2.1.0",[],{"version":308,"download_url":309,"svn_tag_url":310,"released_at":29,"has_diff":172,"diff_files_changed":311,"diff_lines":29,"trac_diff_url":312,"vulnerabilities":313,"is_current":172},"2.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgithub-release-downloads.2.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgithub-release-downloads\u002Ftags\u002F2.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgithub-release-downloads%2Ftags%2F2.0.0.1&new_path=%2Fgithub-release-downloads%2Ftags%2F2.0.1",[],{"version":315,"download_url":316,"svn_tag_url":317,"released_at":29,"has_diff":172,"diff_files_changed":318,"diff_lines":29,"trac_diff_url":319,"vulnerabilities":320,"is_current":172},"2.0.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgithub-release-downloads.2.0.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgithub-release-downloads\u002Ftags\u002F2.0.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgithub-release-downloads%2Ftags%2F2.0.0&new_path=%2Fgithub-release-downloads%2Ftags%2F2.0.0.1",[],{"version":322,"download_url":323,"svn_tag_url":324,"released_at":29,"has_diff":172,"diff_files_changed":325,"diff_lines":29,"trac_diff_url":326,"vulnerabilities":327,"is_current":172},"2.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgithub-release-downloads.2.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgithub-release-downloads\u002Ftags\u002F2.0.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgithub-release-downloads%2Ftags%2F1.1.0&new_path=%2Fgithub-release-downloads%2Ftags%2F2.0.0",[],{"version":329,"download_url":330,"svn_tag_url":331,"released_at":29,"has_diff":172,"diff_files_changed":332,"diff_lines":29,"trac_diff_url":333,"vulnerabilities":334,"is_current":172},"1.1.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgithub-release-downloads.1.1.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgithub-release-downloads\u002Ftags\u002F1.1.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgithub-release-downloads%2Ftags%2F1.0.1&new_path=%2Fgithub-release-downloads%2Ftags%2F1.1.0",[],{"version":61,"download_url":336,"svn_tag_url":337,"released_at":29,"has_diff":172,"diff_files_changed":338,"diff_lines":29,"trac_diff_url":339,"vulnerabilities":340,"is_current":172},"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgithub-release-downloads.1.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgithub-release-downloads\u002Ftags\u002F1.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fgithub-release-downloads%2Ftags%2F1.0.0&new_path=%2Fgithub-release-downloads%2Ftags%2F1.0.1",[],{"version":342,"download_url":343,"svn_tag_url":344,"released_at":29,"has_diff":172,"diff_files_changed":345,"diff_lines":29,"trac_diff_url":29,"vulnerabilities":346,"is_current":172},"1.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgithub-release-downloads.1.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fgithub-release-downloads\u002Ftags\u002F1.0.0\u002F",[],[]]