[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fOYAf6PpQAwUekkzR2vHxcRiyN-TjBXCqYfPdMikzgvE":3,"$fdw5u9gMqs4mMA4iAhUedWE1tzy2kgNkoAX4820Oxd9k":636},{"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":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":36,"analysis":131,"fingerprints":586},"wp-qiniu","WP-QINIU （WordPress连接到七牛云存储）","2.0.5","wishinlife","https:\u002F\u002Fprofiles.wordpress.org\u002Fwishinlife\u002F","\u003Cp>\u003Cstrong>WP-QINIU主要功能就是把WordPress和七牛云存储连接在一起的插件。\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>主要功能：\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>1、将wordpress的数据库、文件备份到七牛对象云存储，以防止由于过失而丢失了网站数据；\u003C\u002Fli>\n\u003Cli>2、把七牛对象云存储作为网站的主要存储空间，存放图片、附件，解决网站空间不够用的烦恼；\u003C\u002Fli>\n\u003Cli>3、可在网站内直接引用七牛云存储上的文件，在写文章时直接点击插入媒体，选择要插入的图片、音频、视频、附件等即可，增强wordpress用户使用七牛云存储的方便性；\u003C\u002Fli>\n\u003Cli>4、可在wordpress中以目录的形式管理七牛云存储的文件，并可以通过修改文件夹名称来批量修改七牛云存储中文件的Key，方便用户管理文件。\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>七牛云存储官网地址：http:\u002F\u002Fwww.qiniu.com\u003C\u002Fp>\n\u003Cp>WP-QINIU官方网站：http:\u002F\u002Fwww.syncy.cn\u003C\u002Fp>\n\u003Cp>\u003Cstrong>备份功能不适用的环境\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>开启MULTISITE的多站点网站\u003C\u002Fli>\n\u003Cli>网站空间剩余不足三分之一\u003C\u002Fli>\n\u003Cli>没有读写权限或读写权限受限制的空间\u003C\u002Fli>\n\u003Cli>服务器memory limit, time limit比较小，又不能自己修改的\u003C\u002Fli>\n\u003Cli>主机PHP不支持ZipArchive类\u003C\u002Fli>\n\u003C\u002Ful>\n","备份WordPress到七牛云存储，把七牛云存储作为网站附件存储空间。",60,15980,100,2,"2018-10-25T06:11:00.000Z","4.9.29","4.5.0","",[20,21,22,23,4],"backup","object-cloud-storage","qiniu","sync","http:\u002F\u002Fwww.syncy.cn","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.2.0.5.zip",85,0,null,"2026-04-06T09:54:40.288Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":11,"avg_security_score":26,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},1,30,84,"2026-04-07T09:42:49.466Z",[37,57,74,94,113],{"slug":38,"name":39,"version":40,"author":41,"author_profile":42,"description":43,"short_description":44,"active_installs":45,"downloaded":46,"rating":47,"num_ratings":32,"last_updated":48,"tested_up_to":49,"requires_at_least":50,"requires_php":18,"tags":51,"homepage":55,"download_link":56,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"wordsync","WordSync","0.1.1","Brave Digital","https:\u002F\u002Fprofiles.wordpress.org\u002Fbravedigital\u002F","\u003Cp>WordSync allows you to synchronise posts, pages, users, taxonomies, attachments and settings between two WordPress installs.\u003Cbr \u002F>\nAfter setting up the link between the two sites using a secret key, you can perform a sync on the target site which will show all changes needed to bring it’s content in sync with the source site.\u003Cbr \u002F>\nYou can select which of these changes you’d like to synchronise across before the sync is performed.\u003Cbr \u002F>\nWordSync will handle updating site urls automatically, download attachments and maps users, posts and attachments from one site to the other without conflicts.\u003C\u002Fp>\n\u003Cp>WordSync provides modular synchronisers which act on certain bits of data on your site:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Settings – syncs all WordPress settings and all plugin settings (for those plugins that store their settings in the wp_settings table)\u003C\u002Fli>\n\u003Cli>Users – Creates, updates and deletes users so that they reflect the source site. New users will have to reset their passwords in order to login.\u003C\u002Fli>\n\u003Cli>Posts – Synchronises ALL posts, including pages and all custom post types. Preserves post parent relationships\u003C\u002Fli>\n\u003Cli>Taxonomies – Synchronises all taxonomy terms, but both sites need to have the same taxonomies defined. Ie. if the theme defines custom taxonomies, both sites must have the same theme active.\u003C\u002Fli>\n\u003Cli>Attachments – Synchronises attachments. Attachment images are downloaded directly from the source site and then inserted into the media library and linked up to the same posts as in the source site.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>You can choose which of these to activate before performing a sync but some rely on others to run first before they themselves are able to run.\u003C\u002Fp>\n\u003Cp>For now WordSync transmits site data between the sites in an unencrypted stream. While eavesdropping is extremely unlikely, bear this in mind if you have sensitive data.\u003C\u002Fp>\n\u003Cp>WordSync is designed to be used by developers and other super-users who work with WordPress sites. The plugin will expose a bit of the inner workings of WordPress to you and requires your judgement to know which data should be synced without overwriting data you’d like to keep.\u003C\u002Fp>\n\u003Ch3>** Warning **\u003C\u002Fh3>\n\u003Cp>This plugin modifies your site content and is still in alpha. It may not always perform adequately and it would be \u003Cstrong>strongly advisable\u003C\u002Fstrong> to backup your site before using WordSync. WordSync does not offer a rollback option once your data has been synced. Brave Digital does not accept any responsibility for lost or corrupted data. USE THIS PLUGIN AT YOUR OWN RISK.\u003C\u002Fp>\n\u003Ch3>Contribute on GitHub\u003C\u002Fh3>\n\u003Cp>Help us make improvements and additions by contributing on the WordSync GitHub project:\u003C\u002Fp>\n\u003Cp>https:\u002F\u002Fgithub.com\u002Fbrave-digital\u002FWordSync\u003C\u002Fp>\n","WordSync allows you to synchronise posts, pages, users, taxonomies, attachments and settings between two WordPress installs.",10,1606,20,"2017-04-25T10:30:00.000Z","4.7.33","4.0",[20,52,53,23,54],"merge","migration","synchronise","http:\u002F\u002Fbravedigital.com\u002Fwordsync","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwordsync.0.1.1.zip",{"slug":58,"name":58,"version":59,"author":60,"author_profile":61,"description":62,"short_description":63,"active_installs":27,"downloaded":64,"rating":27,"num_ratings":27,"last_updated":65,"tested_up_to":66,"requires_at_least":67,"requires_php":68,"tags":69,"homepage":72,"download_link":73,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"b2-sync","1.2.0","Wasseem Khayrattee","https:\u002F\u002Fprofiles.wordpress.org\u002Fwkhayrattee\u002F","\u003Cp>This plugin allows you to sync your wp-content\u002Fuploads folder onto your backblaze b2 bucket.\u003C\u002Fp>\n\u003Cp>It will also automatically sync all your media whenever you:\u003Cbr \u002F>\n– create a new post or page and add a new media\u003Cbr \u002F>\n– edit an existing post or page to add or update a media file\u003C\u002Fp>\n\u003Cp>NOTE:\u003Cbr \u002F>\nIt will not get triggered if you upload a media on the media library page.\u003Cbr \u002F>\nFortunately, after you upload a media like this, you can directly trigger a sync to backblaze by using the action button that we put at your disposal.\u003C\u002Fp>\n\u003Ch3>REQUIREMENTS\u003C\u002Fh3>\n\u003Cp>This plugin relies and assumes that you have \u003Cem>rclone\u003C\u002Fem> installed on your server.\u003Cbr \u002F>\nRefer to this guide on how to install rclone: \u003Ca href=\"https:\u002F\u002Frclone.org\u002Fdownloads\u002F\" rel=\"nofollow ugc\">https:\u002F\u002Frclone.org\u002Fdownloads\u002F\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>TODO in next phase\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Identify an appropriate \u003Cstrong>hook\u003C\u002Fstrong> when a media is uploaded via the \u003Cstrong>\u003Cem>WordPress Media Library\u003C\u002Fem>\u003C\u002Fstrong> so that we can trigger the sync for this action as well\u003C\u002Fli>\n\u003Cli>Tell the sync process to ignore certain type of files\u003C\u002Fli>\n\u003Cli>The log file messages are not pretty – create a custom approach for that instead of relying on \u003Ccode>monolog\u002Fmonolog\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>(DONE) Show a real-time verbose mode of the sync when triggering the sync manual using the action button?\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Contributing\u003C\u002Fh3>\n\u003Cp>The best way to contribute to the development of this plugin is by participating on the GitHub project:\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fwkhayrattee\u002Fb2-sync\" rel=\"nofollow ugc\">https:\u002F\u002Fgithub.com\u002Fwkhayrattee\u002Fb2-sync\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>There are many ways you can contribute:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Raise an issue if you found one\u003C\u002Fli>\n\u003Cli>Create\u002Fsend us a Pull Request with your bug fixes and\u002For new features\u003C\u002Fli>\n\u003Cli>Provide us with your feedback and\u002For suggestions for any improvement or enhancement\u003C\u002Fli>\n\u003Cli>Translation – this is an area we are yet to do\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Attributions\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Cstrong>Storyset\u003C\u002Fstrong> for the illustrations\u003C\u002Fli>\n\u003C\u002Ful>\n","A WordPress plugin for Backblaze b2 cloud to sync assets files from wp-content\u002Fuploads onto a Backblaze B2 bucket",1197,"2021-12-05T03:47:00.000Z","5.8.13","5.7.0","7.2",[70,71,20,23],"backblaze","backblaze-b2","https:\u002F\u002Fgithub.com\u002Fwkhayrattee\u002Fb2-sync","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fb2-sync.1.2.0.zip",{"slug":75,"name":76,"version":77,"author":78,"author_profile":79,"description":80,"short_description":81,"active_installs":27,"downloaded":82,"rating":27,"num_ratings":27,"last_updated":83,"tested_up_to":84,"requires_at_least":85,"requires_php":86,"tags":87,"homepage":91,"download_link":92,"security_score":93,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"dsmirror","DSmirror","1.04.01","Tecknolab.","https:\u002F\u002Fprofiles.wordpress.org\u002Ftecknolab\u002F","\u003Cp>DSmirror is a simple and efficient data replication solution. It enables database tables replication to (inbound) or from (outbound) WP,\u003Cbr \u002F>\nsynchronizing with and external DB. This plugin embeds client replication functionality with no additional requirements at WordPress site.\u003Cbr \u002F>\nAn external DSmirror agent must be launched with connectivity to your external database;\u003Cbr \u002F>\nhowever, this agent does not require direct connectivity with your WP database or even your WP site.\u003C\u002Fp>\n\u003Cp>Key benefits:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Data can be easily loaded and synced in WordPress DB from an external database, enabling multiple use cases in combination with other plugins (custom reporting, forms, dynamic data validation,…) \u003C\u002Fli>\n\u003Cli>The opposite is also possible. WordPress data tables can be replicated to an external database, for data protection, monitoring, support or triggering any additional business process.\u003C\u002Fli>\n\u003Cli>Your external database can be anywhere. No direct connectivity with your WP environment or DB is required.\u003C\u002Fli>\n\u003Cli>Data is efficiently replicated with a sophisticated change tracking algorithm.\u003C\u002Fli>\n\u003Cli>Data is securely replicated with encrypted https based connections.\u003C\u002Fli>\n\u003Cli>Very simple setup. Just register for an appId and key at \u003Ca href=\"https:\u002F\u002Fdsmirror.tecknolab.com\u002F\" title=\"DSMirror site\" rel=\"nofollow ugc\">DSmirror\u003C\u002Fa>, run the agent as a Docker container as described in \u003Ca href=\"https:\u002F\u002Fdsmirror.tecknolab.com\u002Finstall\" title=\"DSmirror setup details\" rel=\"nofollow ugc\">DSmirror setup\u003C\u002Fa> connect it to your external DB, setup the plugin and is done.\u003C\u002Fli>\n\u003C\u002Fol>\n","DSmirror (datasource mirror) data replication tool for Wordpress. Sync data to\u002Ffrom WP database with minimal requirements.",4185,"2024-07-12T10:24:00.000Z","6.6.5","5.2","5.6",[20,88,89,90,23],"data-transfer","database","replication","https:\u002F\u002Fdsmirror.tecknolab.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdsmirror.zip",92,{"slug":95,"name":96,"version":97,"author":98,"author_profile":99,"description":100,"short_description":101,"active_installs":27,"downloaded":102,"rating":27,"num_ratings":27,"last_updated":103,"tested_up_to":104,"requires_at_least":105,"requires_php":106,"tags":107,"homepage":18,"download_link":111,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":112},"flotiq-sync","Flotiq Sync","1.1.0","Flotiq","https:\u002F\u002Fprofiles.wordpress.org\u002Fflotiq\u002F","\u003Cp>The purpose of this plugin is to let you fill your \u003Ca href=\"https:\u002F\u002Fflotiq.com\" rel=\"nofollow ugc\">Flotiq\u003C\u002Fa> account with your WordPress data. Thanks to this, you can take advantage of WordPress and dive into the Flotiq universe. We support automatic synchronization of the following types of content: posts, pages, media, tags, categories, authors.\u003C\u002Fp>\n\u003Cp>This plugin is relying on a 3rd party Software as a Service – \u003Ca href=\"https:\u002F\u002Fflotiq.com\" rel=\"nofollow ugc\">Flotiq\u003C\u002Fa> to store a copy of your data (posts, pages, media, tags, categories and authors) in your personal Flotiq Account. Your data will remain private. The plugin does not affect your data stored in WordPress.\u003C\u002Fp>\n\u003Cp>The Flotiq Terms and Conditions are available at \u003Ca href=\"https:\u002F\u002Fflotiq.com\u002Fflotiq-terms-of-service\u002F\" rel=\"nofollow ugc\">https:\u002F\u002Fflotiq.com\u002Fflotiq-terms-of-service\u002F\u003C\u002Fa>.\u003C\u002Fp>\n","Use this WordPress plugin to easily connect your WordPress instance to Flotiq and synchronize your data.",1180,"2025-04-24T12:39:00.000Z","6.8.5","5.0","7.4",[20,108,109,110],"flotiq","headless-cms","synchronization","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fflotiq-sync.1.1.0.zip","2026-03-15T15:16:48.613Z",{"slug":114,"name":115,"version":116,"author":117,"author_profile":118,"description":119,"short_description":120,"active_installs":27,"downloaded":121,"rating":27,"num_ratings":27,"last_updated":122,"tested_up_to":123,"requires_at_least":124,"requires_php":106,"tags":125,"homepage":129,"download_link":130,"security_score":13,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"mediamoo-for-spaces","MediaMoo For Spaces","1.0.4","creatorcow","https:\u002F\u002Fprofiles.wordpress.org\u002Fcreatorcow\u002F","\u003Cp>MediaMoo for Spaces is a lightweight and powerful WordPress plugin that offloads your media library to DigitalOcean Spaces, helping you save valuable disk space, reduce server load, and speed up your website.\u003C\u002Fp>\n\u003Cp>With just a few clicks, MediaMoo seamlessly syncs your existing and newly uploaded media files (images, videos, documents, etc.) to your configured DigitalOcean Space. You can choose to back up your media, serve your files directly from the cloud, or both.\u003C\u002Fp>\n\u003Cp>Key Features:\u003Cbr \u002F>\n    •   One-click Media Sync: Easily transfer your entire WordPress media library to DigitalOcean Spaces.\u003Cbr \u002F>\n    •   Automatic Offloading: Newly uploaded files are automatically synced to your Space in the background.\u003Cbr \u002F>\n    •   Serve Media from Spaces: Optionally deliver media files directly from your Space’s CDN endpoint, speeding up load times and reducing local server strain.\u003Cbr \u002F>\n    •   Selective Syncing: Choose whether to keep local copies or remove them after syncing.\u003Cbr \u002F>\n    •   Lightweight & Fast: No bloat. Just focused, reliable syncing.\u003C\u002Fp>\n\u003Cp>MediaMoo for Spaces is released under the MIT License. The full license text is included in the plugin folder as LICENSE.txt and also available at https:\u002F\u002Fopensource.org\u002Flicenses\u002FMIT.\u003C\u002Fp>\n\u003Ch3>Roadmap\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Future support for CSS and JS files being synced to DigitalOcean Spaces. Timeline is unknown.\u003C\u002Fli>\n\u003Cli>Description of plugin on wordpress.org and screenshots to be updated. Timeline is unknown.\u003C\u002Fli>\n\u003Cli>Error logging and file syncing logging. Timeline is unknown.\u003C\u002Fli>\n\u003C\u002Ful>\n","MediaMoo For Spaces, syncs your media library with DigitalOcean Spaces automatically.",463,"2026-02-13T18:14:00.000Z","6.9.4","5.4",[20,126,127,128,23],"media","spaces","storage","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fmediamoo-for-spaces\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmediamoo-for-spaces.1.0.4.zip",{"attackSurface":132,"codeSignals":287,"taintFlows":432,"riskAssessment":575,"analyzedAt":585},{"hooks":133,"ajaxHandlers":193,"restRoutes":257,"shortcodes":258,"cronEvents":283,"entryPointCount":286,"unprotectedCount":45},[134,140,145,149,153,158,162,166,170,175,179,182,186,190],{"type":135,"name":136,"callback":137,"file":138,"line":139},"filter","cron_schedules","wp_qiniu_more_reccurences_for_backup","wp-qiniu-backup.php",4,{"type":141,"name":142,"callback":143,"file":138,"line":144},"action","wp_qiniu_backup_corn_task_database","wp_qiniu_backup_corn_task_database_function",23,{"type":141,"name":146,"callback":147,"file":138,"line":148},"wp_qiniu_backup_corn_task_www","wp_qiniu_backup_corn_task_www_function",24,{"type":141,"name":150,"callback":151,"file":138,"line":152},"wp_qiniu_backup_corn_task_clear_files","wp_qiniu_backup_corn_task_clear_files_function",81,{"type":141,"name":154,"callback":155,"file":156,"line":157},"admin_enqueue_scripts","wp_qiniu_admin_load_resources","wp-qiniu-file-manage.php",166,{"type":135,"name":159,"callback":160,"file":161,"line":45},"media_upload_tabs","wp_qiniu_storage_media_tab","wp-qiniu-insert-to-content.php",{"type":141,"name":163,"callback":164,"file":161,"line":165},"media_upload_file_from_qiniu","media_upload_file_from_qiniu_iframe",19,{"type":141,"name":167,"callback":168,"file":161,"line":169},"admin_init","wp_qiniu_storage_media_iframe_remove_actions",25,{"type":135,"name":171,"callback":172,"file":173,"line":174},"the_posts","wp_qiniu_add_player_js","wp-qiniu-shortcodes-audiojs-grindplayer.php",68,{"type":135,"name":171,"callback":176,"file":177,"line":178},"wp_qiniu_add_audioplayer_js","wp-qiniu-shortcodes-ckplayer.php",64,{"type":135,"name":171,"callback":176,"file":180,"line":181},"wp-qiniu-shortcodes.php",95,{"type":135,"name":183,"callback":184,"file":185,"line":26},"http_request_timeout","wp_qiniu__filter_timeout_time","wp-qiniu.php",{"type":141,"name":187,"callback":188,"file":185,"line":189},"admin_menu","wp_qiniu_menu",91,{"type":141,"name":167,"callback":191,"file":185,"line":192},"wp_qiniu_action",167,[194,201,204,208,210,213,217,220,224,227,231,235,239,243,247,250,254],{"action":195,"nopriv":196,"callback":197,"hasNonce":198,"hasCapCheck":198,"file":199,"line":200},"wp_qiniu_get_uptoken",true,"wp_qiniu_get_uptoken_nopriv",false,"wp-qiniu-ajax.php",3,{"action":195,"nopriv":198,"callback":202,"hasNonce":196,"hasCapCheck":198,"file":199,"line":203},"wp_qiniu_get_uptoken_ajax",9,{"action":205,"nopriv":196,"callback":206,"hasNonce":198,"hasCapCheck":198,"file":199,"line":207},"wp_qiniu_upload_callback","wp_qiniu_upload_callback_ajax",109,{"action":205,"nopriv":198,"callback":206,"hasNonce":198,"hasCapCheck":198,"file":199,"line":209},110,{"action":211,"nopriv":198,"callback":211,"hasNonce":198,"hasCapCheck":198,"file":199,"line":212},"wp_qiniu_upload_complete",233,{"action":214,"nopriv":196,"callback":215,"hasNonce":198,"hasCapCheck":198,"file":199,"line":216},"wp_qiniu_get_download_url","wp_qiniu_get_download_url_nopriv",337,{"action":214,"nopriv":198,"callback":218,"hasNonce":196,"hasCapCheck":198,"file":199,"line":219},"wp_qiniu_get_download_url_ajax",343,{"action":221,"nopriv":196,"callback":222,"hasNonce":198,"hasCapCheck":198,"file":199,"line":223},"wp_qiniu_list_files","wp_qiniu_list_files_nopriv",360,{"action":221,"nopriv":198,"callback":225,"hasNonce":196,"hasCapCheck":198,"file":199,"line":226},"wp_qiniu_list_files_ajax",366,{"action":228,"nopriv":196,"callback":229,"hasNonce":198,"hasCapCheck":198,"file":199,"line":230},"wp_qiniu_create_floders","wp_qiniu_create_floder_nopriv",410,{"action":232,"nopriv":198,"callback":233,"hasNonce":196,"hasCapCheck":198,"file":199,"line":234},"wp_qiniu_create_floder","wp_qiniu_create_floder_ajax",416,{"action":236,"nopriv":196,"callback":237,"hasNonce":198,"hasCapCheck":198,"file":199,"line":238},"wp_qiniu_delete","wp_qiniu_delete_nopriv",473,{"action":240,"nopriv":198,"callback":241,"hasNonce":196,"hasCapCheck":198,"file":199,"line":242},"wp_qiniu_delete_files","wp_qiniu_delete_files_ajax",479,{"action":244,"nopriv":196,"callback":245,"hasNonce":198,"hasCapCheck":198,"file":199,"line":246},"wp_qiniu_file_rename","wp_qiniu_file_rename_nopriv",511,{"action":244,"nopriv":198,"callback":248,"hasNonce":196,"hasCapCheck":198,"file":199,"line":249},"wp_qiniu_file_rename_ajax",517,{"action":251,"nopriv":196,"callback":252,"hasNonce":198,"hasCapCheck":198,"file":199,"line":253},"wp_qiniu_file_sync","wp_qiniu_file_sync_nopriv",551,{"action":251,"nopriv":198,"callback":255,"hasNonce":196,"hasCapCheck":198,"file":199,"line":256},"wp_qiniu_file_sync_ajax",557,[],[259,263,267,271,273,275,277,279,281],{"tag":260,"callback":261,"file":173,"line":262},"qiniuaudio","wp_qiniu_audio_shortcode",39,{"tag":264,"callback":265,"file":173,"line":266},"qiniuvideo","wp_qiniu_video_shortcode",111,{"tag":268,"callback":269,"file":173,"line":270},"qiniufile","wp_qiniu_file_shortcode",134,{"tag":260,"callback":261,"file":177,"line":272},46,{"tag":264,"callback":265,"file":177,"line":274},112,{"tag":268,"callback":269,"file":177,"line":276},136,{"tag":260,"callback":261,"file":180,"line":278},53,{"tag":264,"callback":265,"file":180,"line":280},153,{"tag":268,"callback":269,"file":180,"line":282},184,[284],{"hook":150,"callback":150,"file":138,"line":285},80,26,{"dangerousFunctions":288,"sqlUsage":289,"outputEscaping":307,"fileOperations":429,"externalRequests":32,"nonceChecks":203,"capabilityChecks":430,"bundledLibraries":431},[],{"prepared":290,"raw":291,"locations":292},21,6,[293,296,298,300,303,305],{"file":199,"line":294,"context":295},395,"$wpdb->get_results() with variable interpolation",{"file":138,"line":297,"context":295},105,{"file":138,"line":299,"context":295},122,{"file":301,"line":302,"context":295},"wp-qiniu-functions.php",202,{"file":301,"line":304,"context":295},409,{"file":185,"line":274,"context":306},"$wpdb->get_var() with variable interpolation",{"escaped":174,"rawEcho":308,"locations":309},61,[310,312,313,315,317,319,321,323,325,327,329,331,333,335,337,339,341,343,345,347,349,351,353,355,357,359,361,363,365,367,369,371,373,375,377,379,381,383,385,387,389,391,393,395,397,399,401,402,403,405,407,409,411,413,415,417,419,421,423,425,427],{"file":199,"line":165,"context":311},"raw output",{"file":199,"line":286,"context":311},{"file":199,"line":314,"context":311},31,{"file":199,"line":316,"context":311},37,{"file":199,"line":318,"context":311},104,{"file":199,"line":320,"context":311},146,{"file":199,"line":322,"context":311},155,{"file":199,"line":324,"context":311},216,{"file":199,"line":326,"context":311},227,{"file":199,"line":328,"context":311},240,{"file":199,"line":330,"context":311},247,{"file":199,"line":332,"context":311},252,{"file":199,"line":334,"context":311},259,{"file":199,"line":336,"context":311},266,{"file":199,"line":338,"context":311},273,{"file":199,"line":340,"context":311},280,{"file":199,"line":342,"context":311},287,{"file":199,"line":344,"context":311},292,{"file":199,"line":346,"context":311},299,{"file":199,"line":348,"context":311},306,{"file":199,"line":350,"context":311},325,{"file":199,"line":352,"context":311},332,{"file":199,"line":354,"context":311},350,{"file":199,"line":356,"context":311},355,{"file":199,"line":358,"context":311},373,{"file":199,"line":360,"context":311},401,{"file":199,"line":362,"context":311},404,{"file":199,"line":364,"context":311},423,{"file":199,"line":366,"context":311},430,{"file":199,"line":368,"context":311},435,{"file":199,"line":370,"context":311},448,{"file":199,"line":372,"context":311},453,{"file":199,"line":374,"context":311},462,{"file":199,"line":376,"context":311},466,{"file":199,"line":378,"context":311},486,{"file":199,"line":380,"context":311},506,{"file":199,"line":382,"context":311},524,{"file":199,"line":384,"context":311},531,{"file":199,"line":386,"context":311},536,{"file":199,"line":388,"context":311},546,{"file":199,"line":390,"context":311},564,{"file":199,"line":392,"context":311},574,{"file":394,"line":316,"context":311},"wp-qiniu-debug.php",{"file":394,"line":396,"context":311},42,{"file":394,"line":398,"context":311},55,{"file":394,"line":400,"context":311},63,{"file":394,"line":34,"context":311},{"file":394,"line":299,"context":311},{"file":394,"line":404,"context":311},124,{"file":394,"line":406,"context":311},128,{"file":156,"line":408,"context":311},126,{"file":161,"line":410,"context":311},120,{"file":177,"line":412,"context":311},83,{"file":185,"line":414,"context":311},382,{"file":185,"line":416,"context":311},383,{"file":185,"line":418,"context":311},384,{"file":185,"line":420,"context":311},385,{"file":185,"line":422,"context":311},386,{"file":185,"line":424,"context":311},387,{"file":185,"line":426,"context":311},388,{"file":185,"line":428,"context":311},389,34,5,[],[433,451,464,476,497,518,543],{"entryPoint":434,"graph":435,"unsanitizedCount":27,"severity":450},"wp_qiniu_create_floder_ajax (wp-qiniu-ajax.php:417)",{"nodes":436,"edges":448},[437,442],{"id":438,"type":439,"label":440,"file":199,"line":441},"n0","source","$_REQUEST",420,{"id":443,"type":444,"label":445,"file":199,"line":446,"wp_function":447},"n1","sink","get_var() [SQLi]",445,"get_var",[449],{"from":438,"to":443,"sanitized":196},"low",{"entryPoint":452,"graph":453,"unsanitizedCount":27,"severity":450},"wp_qiniu_action (wp-qiniu.php:168)",{"nodes":454,"edges":462},[455,458],{"id":438,"type":439,"label":456,"file":185,"line":457},"$_POST (x15)",179,{"id":443,"type":444,"label":459,"file":185,"line":460,"wp_function":461},"update_option() [Settings Manipulation]",180,"update_option",[463],{"from":438,"to":443,"sanitized":196},{"entryPoint":465,"graph":466,"unsanitizedCount":27,"severity":450},"wp_qiniu_pannel (wp-qiniu.php:340)",{"nodes":467,"edges":474},[468,471],{"id":438,"type":439,"label":469,"file":185,"line":470},"$_GET['page'] (x2)",398,{"id":443,"type":444,"label":472,"file":185,"line":470,"wp_function":473},"echo() [XSS]","echo",[475],{"from":438,"to":443,"sanitized":196},{"entryPoint":477,"graph":478,"unsanitizedCount":27,"severity":450},"\u003Cwp-qiniu> (wp-qiniu.php:0)",{"nodes":479,"edges":493},[480,481,482,484,486,490],{"id":438,"type":439,"label":456,"file":185,"line":457},{"id":443,"type":444,"label":459,"file":185,"line":460,"wp_function":461},{"id":483,"type":439,"label":469,"file":185,"line":470},"n2",{"id":485,"type":444,"label":472,"file":185,"line":470,"wp_function":473},"n3",{"id":487,"type":439,"label":488,"file":185,"line":489},"n4","$_POST",230,{"id":491,"type":444,"label":472,"file":185,"line":492,"wp_function":473},"n5",441,[494,495,496],{"from":438,"to":443,"sanitized":196},{"from":483,"to":485,"sanitized":196},{"from":487,"to":491,"sanitized":196},{"entryPoint":498,"graph":499,"unsanitizedCount":32,"severity":517},"wp_qiniu_get_uptoken_ajax (wp-qiniu-ajax.php:10)",{"nodes":500,"edges":513},[501,503,505,506,509],{"id":438,"type":439,"label":440,"file":199,"line":502},16,{"id":443,"type":444,"label":445,"file":199,"line":504,"wp_function":447},45,{"id":483,"type":439,"label":440,"file":199,"line":429},{"id":485,"type":507,"label":508,"file":199,"line":429},"transform","→ wp_qiniu_get_prefix_by_pid()",{"id":487,"type":444,"label":510,"file":301,"line":511,"wp_function":512},"get_row() [SQLi]",158,"get_row",[514,515,516],{"from":438,"to":443,"sanitized":196},{"from":483,"to":485,"sanitized":198},{"from":485,"to":487,"sanitized":198},"high",{"entryPoint":519,"graph":520,"unsanitizedCount":14,"severity":517},"wp_qiniu_file_rename_ajax (wp-qiniu-ajax.php:518)",{"nodes":521,"edges":537},[522,524,525,527,529,530,532,535],{"id":438,"type":439,"label":440,"file":199,"line":523},521,{"id":443,"type":444,"label":472,"file":199,"line":388,"wp_function":473},{"id":483,"type":439,"label":440,"file":199,"line":526},542,{"id":485,"type":507,"label":528,"file":199,"line":526},"→ wp_qiniu_folder_rename()",{"id":487,"type":444,"label":445,"file":301,"line":336,"wp_function":447},{"id":491,"type":439,"label":440,"file":199,"line":531},544,{"id":533,"type":507,"label":534,"file":199,"line":531},"n6","→ wp_qiniu_file_rename()",{"id":536,"type":444,"label":445,"file":301,"line":489,"wp_function":447},"n7",[538,539,540,541,542],{"from":438,"to":443,"sanitized":196},{"from":483,"to":485,"sanitized":198},{"from":485,"to":487,"sanitized":198},{"from":491,"to":533,"sanitized":198},{"from":533,"to":536,"sanitized":198},{"entryPoint":544,"graph":545,"unsanitizedCount":200,"severity":517},"\u003Cwp-qiniu-ajax> (wp-qiniu-ajax.php:0)",{"nodes":546,"edges":566},[547,549,550,551,552,553,554,555,556,558,560,562,564],{"id":438,"type":439,"label":548,"file":199,"line":502},"$_REQUEST (x2)",{"id":443,"type":444,"label":445,"file":199,"line":504,"wp_function":447},{"id":483,"type":439,"label":548,"file":199,"line":523},{"id":485,"type":444,"label":472,"file":199,"line":388,"wp_function":473},{"id":487,"type":439,"label":440,"file":199,"line":429},{"id":491,"type":507,"label":508,"file":199,"line":429},{"id":533,"type":444,"label":510,"file":301,"line":511,"wp_function":512},{"id":536,"type":439,"label":440,"file":199,"line":526},{"id":557,"type":507,"label":528,"file":199,"line":526},"n8",{"id":559,"type":444,"label":445,"file":301,"line":336,"wp_function":447},"n9",{"id":561,"type":439,"label":440,"file":199,"line":531},"n10",{"id":563,"type":507,"label":534,"file":199,"line":531},"n11",{"id":565,"type":444,"label":445,"file":301,"line":489,"wp_function":447},"n12",[567,568,569,570,571,572,573,574],{"from":438,"to":443,"sanitized":196},{"from":483,"to":485,"sanitized":196},{"from":487,"to":491,"sanitized":198},{"from":491,"to":533,"sanitized":198},{"from":536,"to":557,"sanitized":198},{"from":557,"to":559,"sanitized":198},{"from":561,"to":563,"sanitized":198},{"from":563,"to":565,"sanitized":198},{"summary":576,"deductions":577},"The wp-qiniu v2.0.5 plugin exhibits a mixed security posture. While it has no recorded vulnerability history and utilizes prepared statements for a significant portion of its SQL queries, several concerning aspects were identified in the static analysis.  A notable concern is the large attack surface exposed through AJAX handlers, with 10 out of 17 handlers lacking authentication checks. This presents a significant risk of unauthorized actions being performed by unauthenticated users. Furthermore, the taint analysis revealed three flows with unsanitized paths, all classified as high severity. These unsanitized paths could potentially lead to code injection or other malicious operations if exploited. The moderate output escaping (53% properly escaped) also indicates potential for cross-site scripting vulnerabilities. While the absence of known CVEs and the use of prepared statements are positive indicators, the identified unauthenticated AJAX endpoints and high-severity unsanitized paths necessitate immediate attention to mitigate potential security risks.",[578,580,583],{"reason":579,"points":45},"Unauthenticated AJAX handlers",{"reason":581,"points":582},"High severity unsanitized paths",15,{"reason":584,"points":430},"Moderate output escaping","2026-03-16T21:50:19.120Z",{"wat":587,"direct":606},{"assetPaths":588,"generatorPatterns":596,"scriptPaths":597,"versionParams":598},[589,590,591,592,593,594,595],"\u002Fwp-content\u002Fplugins\u002Fwp-qiniu\u002Fcss\u002Fwp-qiniu-upload-file.css","\u002Fwp-content\u002Fplugins\u002Fwp-qiniu\u002Fjs\u002Fwp-qiniu-upload-file.js","\u002Fwp-content\u002Fplugins\u002Fwp-qiniu\u002Fcss\u002Fwp-qiniu-file-manage.css","\u002Fwp-content\u002Fplugins\u002Fwp-qiniu\u002Fjs\u002Fwp-qiniu-file-manage.js","\u002Fwp-content\u002Fplugins\u002Fwp-qiniu\u002Fcss\u002Fwp-qiniu-setting.css","\u002Fwp-content\u002Fplugins\u002Fwp-qiniu\u002Fjs\u002Fwp-qiniu-setting.js","\u002Fwp-content\u002Fplugins\u002Fwp-qiniu\u002Fjs\u002Fqiniu.js",[],[595],[599,600,601,602,603,604,605],"wp-qiniu\u002Fcss\u002Fwp-qiniu-upload-file.css?ver=","wp-qiniu\u002Fjs\u002Fwp-qiniu-upload-file.js?ver=","wp-qiniu\u002Fcss\u002Fwp-qiniu-file-manage.css?ver=","wp-qiniu\u002Fjs\u002Fwp-qiniu-file-manage.js?ver=","wp-qiniu\u002Fcss\u002Fwp-qiniu-setting.css?ver=","wp-qiniu\u002Fjs\u002Fwp-qiniu-setting.js?ver=","wp-qiniu\u002Fjs\u002Fqiniu.js?ver=",{"cssClasses":607,"htmlComments":612,"htmlAttributes":619,"restEndpoints":624,"jsGlobals":629,"shortcodeOutput":633},[608,609,610,611],"wp-qiniu-upload-btn","wp-qiniu-file-manage-header","wp-qiniu-setting-tab","wp-qiniu-logo",[613,614,615,616,616,615,617,618,618],"\u003C!-- 引入七牛JS -->","\u003C!-- 引入七牛CSS -->","\u003C!-- 引入JS -->","\u003C!-- 引入CSS -->","\u003C!-- 优化七牛CDN -->","\u003C!-- 插件启动 -->",[620,621,622,623],"data-qiniu-key","data-qiniu-token","data-qiniu-domain","data-qiniu-bucket",[625,626,627,628],"\u002Fwp-json\u002Fwp-qiniu\u002Fv1\u002Fupload","\u002Fwp-json\u002Fwp-qiniu\u002Fv1\u002Ffile-list","\u002Fwp-json\u002Fwp-qiniu\u002Fv1\u002Ffile-delete","\u002Fwp-json\u002Fwp-qiniu\u002Fv1\u002Fbucket-list",[630,631,632],"wp_qiniu_upload_config","wp_qiniu_file_manage_config","Qiniu",[634,635],"[wp_qiniu_list]","[wp_qiniu_upload]",{"slug":4,"current_version":6,"total_versions":637,"versions":638},14,[639,644,651,658,665,672,679,686,693,700,707,714,720,726],{"version":6,"download_url":25,"svn_tag_url":640,"released_at":28,"has_diff":198,"diff_files_changed":641,"diff_lines":28,"trac_diff_url":642,"vulnerabilities":643,"is_current":196},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F2.0.5\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F2.0.4&new_path=%2Fwp-qiniu%2Ftags%2F2.0.5",[],{"version":645,"download_url":646,"svn_tag_url":647,"released_at":28,"has_diff":198,"diff_files_changed":648,"diff_lines":28,"trac_diff_url":649,"vulnerabilities":650,"is_current":198},"2.0.4","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.2.0.4.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F2.0.4\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F2.0.3&new_path=%2Fwp-qiniu%2Ftags%2F2.0.4",[],{"version":652,"download_url":653,"svn_tag_url":654,"released_at":28,"has_diff":198,"diff_files_changed":655,"diff_lines":28,"trac_diff_url":656,"vulnerabilities":657,"is_current":198},"2.0.3","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.2.0.3.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F2.0.3\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F2.0.2&new_path=%2Fwp-qiniu%2Ftags%2F2.0.3",[],{"version":659,"download_url":660,"svn_tag_url":661,"released_at":28,"has_diff":198,"diff_files_changed":662,"diff_lines":28,"trac_diff_url":663,"vulnerabilities":664,"is_current":198},"2.0.2","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.2.0.2.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F2.0.2\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F2.0.1&new_path=%2Fwp-qiniu%2Ftags%2F2.0.2",[],{"version":666,"download_url":667,"svn_tag_url":668,"released_at":28,"has_diff":198,"diff_files_changed":669,"diff_lines":28,"trac_diff_url":670,"vulnerabilities":671,"is_current":198},"2.0.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.2.0.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F2.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F2.0.0&new_path=%2Fwp-qiniu%2Ftags%2F2.0.1",[],{"version":673,"download_url":674,"svn_tag_url":675,"released_at":28,"has_diff":198,"diff_files_changed":676,"diff_lines":28,"trac_diff_url":677,"vulnerabilities":678,"is_current":198},"2.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.2.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F2.0.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F1.6.1&new_path=%2Fwp-qiniu%2Ftags%2F2.0.0",[],{"version":680,"download_url":681,"svn_tag_url":682,"released_at":28,"has_diff":198,"diff_files_changed":683,"diff_lines":28,"trac_diff_url":684,"vulnerabilities":685,"is_current":198},"1.6.1","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.1.6.1.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F1.6.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F1.6.0&new_path=%2Fwp-qiniu%2Ftags%2F1.6.1",[],{"version":687,"download_url":688,"svn_tag_url":689,"released_at":28,"has_diff":198,"diff_files_changed":690,"diff_lines":28,"trac_diff_url":691,"vulnerabilities":692,"is_current":198},"1.6.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.1.6.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F1.6.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F1.5.0&new_path=%2Fwp-qiniu%2Ftags%2F1.6.0",[],{"version":694,"download_url":695,"svn_tag_url":696,"released_at":28,"has_diff":198,"diff_files_changed":697,"diff_lines":28,"trac_diff_url":698,"vulnerabilities":699,"is_current":198},"1.5.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.1.5.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F1.5.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F1.4.0&new_path=%2Fwp-qiniu%2Ftags%2F1.5.0",[],{"version":701,"download_url":702,"svn_tag_url":703,"released_at":28,"has_diff":198,"diff_files_changed":704,"diff_lines":28,"trac_diff_url":705,"vulnerabilities":706,"is_current":198},"1.4.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.1.4.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F1.4.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F1.3.0&new_path=%2Fwp-qiniu%2Ftags%2F1.4.0",[],{"version":708,"download_url":709,"svn_tag_url":710,"released_at":28,"has_diff":198,"diff_files_changed":711,"diff_lines":28,"trac_diff_url":712,"vulnerabilities":713,"is_current":198},"1.3.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.1.3.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F1.3.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F1.2.0&new_path=%2Fwp-qiniu%2Ftags%2F1.3.0",[],{"version":59,"download_url":715,"svn_tag_url":716,"released_at":28,"has_diff":198,"diff_files_changed":717,"diff_lines":28,"trac_diff_url":718,"vulnerabilities":719,"is_current":198},"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.1.2.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F1.2.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F1.1.0&new_path=%2Fwp-qiniu%2Ftags%2F1.2.0",[],{"version":97,"download_url":721,"svn_tag_url":722,"released_at":28,"has_diff":198,"diff_files_changed":723,"diff_lines":28,"trac_diff_url":724,"vulnerabilities":725,"is_current":198},"https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.1.1.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F1.1.0\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fwp-qiniu%2Ftags%2F1.0.0&new_path=%2Fwp-qiniu%2Ftags%2F1.1.0",[],{"version":727,"download_url":728,"svn_tag_url":729,"released_at":28,"has_diff":198,"diff_files_changed":730,"diff_lines":28,"trac_diff_url":28,"vulnerabilities":731,"is_current":198},"1.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-qiniu.1.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fwp-qiniu\u002Ftags\u002F1.0.0\u002F",[],[]]