{"id":359443,"date":"2026-08-31T01:31:17","date_gmt":"2026-08-31T01:31:17","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/attic-safe-database-audit\/"},"modified":"2026-09-30T15:52:55","modified_gmt":"2026-09-30T15:52:55","slug":"attic-safe-database-audit","status":"publish","type":"plugin","link":"https:\/\/vec.wordpress.org\/plugins\/attic-safe-database-audit\/","author":23097907,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.1.0","stable_tag":"2.1.0","tested":"7.1.2","requires":"5.6","requires_php":"7.4","requires_plugins":null,"header_name":"Attic \u2014 Safe Database Cleanup (Undo-Friendly)","header_author":"Bishal Shrestha","header_description":"A read-only database audit that quarantines instead of deleting, and searches your code before it calls anything orphaned.","assets_banners_color":"0c1118","last_updated":"2026-09-30 15:52:55","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/attic-safe-database-audit\/","header_author_uri":"https:\/\/profiles.wordpress.org\/rainynewt\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":284,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"rainynewt","date":"2026-08-31 01:30:44","revision":3673275},"1.0.1":{"tag":"1.0.1","author":"rainynewt","date":"2026-08-31 17:26:39","revision":3674723},"2.0.0":{"tag":"2.0.0","author":"rainynewt","date":"2026-09-10 16:39:14","revision":3690212},"2.1.0":{"tag":"2.1.0","author":"rainynewt","date":"2026-09-30 15:52:55","revision":3721616}},"upgrade_notice":{"2.1.0":"<p>Now works on WordPress 5.6+ and PHP 7.4+. Fixes a blank screen after quarantining and correctly flags leftover tables from deleted plugins. Run a new scan after updating.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3721616,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3721616,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3721616,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3721616,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3721619,"resolution":false,"location":"assets","locale":"","contents":"{\"$schema\":\"https:\\\/\\\/playground.wordpress.net\\\/blueprint-schema.json\",\"meta\":{\"title\":\"Attic demo\",\"description\":\"A site with leftovers from deleted plugins, ready to scan.\",\"author\":\"rainynewt\"},\"landingPage\":\"\\\/wp-admin\\\/tools.php?page=attic-safe-database-audit\",\"preferredVersions\":{\"php\":\"8.3\",\"wp\":\"latest\"},\"steps\":[{\"step\":\"login\"},{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"attic-safe-database-audit\"},\"options\":{\"activate\":true}},{\"step\":\"runPHP\",\"code\":\"<?php\\nrequire '\\\/wordpress\\\/wp-load.php';\\nglobal $wpdb;\\n\\n\\\/\\\/ Autoloaded bloat left by \\\"deleted\\\" Elementor and Yoast SEO.\\nadd_option( 'elementor_remote_info_library', str_repeat( 'x', 350 * 1024 ), '', 'yes' );\\nadd_option( 'wpseo_titles', str_repeat( 'y', 60 * 1024 ), '', 'yes' );\\nadd_option( 'wpforms_settings', array( 'currency' => 'USD' ), '', 'yes' );\\n\\n\\\/\\\/ Orphaned tables.\\n$wpdb->query( \\\"CREATE TABLE {$wpdb->prefix}yoast_indexable ( id bigint(20) unsigned NOT NULL AUTO_INCREMENT, permalink text, PRIMARY KEY (id) )\\\" );\\n$wpdb->query( \\\"CREATE TABLE {$wpdb->prefix}e_events ( id bigint(20) unsigned NOT NULL AUTO_INCREMENT, event_data text, PRIMARY KEY (id) )\\\" );\\nfor ( $i = 0; $i < 200; $i++ ) {\\n\\t$wpdb->insert( $wpdb->prefix . 'yoast_indexable', array( 'permalink' => home_url( '\\\/?p=' . $i ) ) );\\n\\t$wpdb->insert( $wpdb->prefix . 'e_events', array( 'event_data' => str_repeat( 'e', 512 ) ) );\\n}\\n\\n\\\/\\\/ Ghost cron event with no callback.\\nwp_schedule_event( time() + 3600, 'hourly', 'elementor_1_elementor_updater' );\\n\\n\\\/\\\/ Expired transient that was never cleaned up.\\nadd_option( '_transient_timeout_wc_report_sales_by_date', time() - DAY_IN_SECONDS, '', 'no' );\\nadd_option( '_transient_wc_report_sales_by_date', str_repeat( 'r', 4096 ), '', 'no' );\\n\\n\\\/\\\/ Post meta whose post no longer exists.\\n$wpdb->insert( $wpdb->postmeta, array( 'post_id' => 999999, 'meta_key' => '_elementor_data', 'meta_value' => '[]' ) );\\n\"}]}"}},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","2.0.0","2.1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3721616,"resolution":"1","location":"assets","locale":"","width":2342,"height":1662},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3721616,"resolution":"2","location":"assets","locale":"","width":2420,"height":1747},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3721616,"resolution":"3","location":"assets","locale":"","width":1492,"height":420},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3721616,"resolution":"4","location":"assets","locale":"","width":2342,"height":1658},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3721616,"resolution":"5","location":"assets","locale":"","width":2344,"height":1610}},"screenshots":{"1":"Scan results: every finding shows its rule, confidence, size and the plugin it belongs to.","2":"Finding evidence: whether the owning plugin is on disk and how many code references were found.","3":"Quarantine: restore a whole batch in one click within the 30-day window.","4":"Autoload trend chart against Site Health's 800 KB limit.","5":"Settings: scan thresholds, quarantine purge window and scheduled scans."}},"plugin_section":[],"plugin_tags":[3786,153,17806,247,151481],"plugin_category":[52,54,59],"plugin_contributors":[271439],"plugin_business_model":[],"class_list":["post-359443","plugin","type-plugin","status-publish","hentry","plugin_tags-cleanup","plugin_tags-database","plugin_tags-database-cleanup","plugin_tags-performance","plugin_tags-site-health","plugin_category-performance","plugin_category-security-and-spam-protection","plugin_category-utilities-and-tools","plugin_contributors-rainynewt","plugin_committers-rainynewt"],"banners":{"banner":"https:\/\/ps.w.org\/attic-safe-database-audit\/assets\/banner-772x250.png?rev=3721616","banner_2x":"https:\/\/ps.w.org\/attic-safe-database-audit\/assets\/banner-1544x500.png?rev=3721616","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/attic-safe-database-audit\/assets\/icon-128x128.png?rev=3721616","icon_2x":"https:\/\/ps.w.org\/attic-safe-database-audit\/assets\/icon-256x256.png?rev=3721616","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/attic-safe-database-audit\/assets\/screenshot-1.png?rev=3721616","caption":"Scan results: every finding shows its rule, confidence, size and the plugin it belongs to."},{"src":"https:\/\/ps.w.org\/attic-safe-database-audit\/assets\/screenshot-2.png?rev=3721616","caption":"Finding evidence: whether the owning plugin is on disk and how many code references were found."},{"src":"https:\/\/ps.w.org\/attic-safe-database-audit\/assets\/screenshot-3.png?rev=3721616","caption":"Quarantine: restore a whole batch in one click within the 30-day window."},{"src":"https:\/\/ps.w.org\/attic-safe-database-audit\/assets\/screenshot-4.png?rev=3721616","caption":"Autoload trend chart against Site Health's 800 KB limit."},{"src":"https:\/\/ps.w.org\/attic-safe-database-audit\/assets\/screenshot-5.png?rev=3721616","caption":"Settings: scan thresholds, quarantine purge window and scheduled scans."}],"raw_content":"<!--section=description-->\n<p><strong>Site Health says \"Autoloaded options could affect performance\"? Attic shows you exactly what's causing it, and lets you remove it without risking your site.<\/strong><\/p>\n\n<p>https:\/\/youtu.be\/C8nLYrIFiVk<\/p>\n\n<p>Every plugin you've ever installed left something behind: oversized options, dead cron jobs, orphaned database tables, stale transients. Deleting the plugin doesn't delete its data. WordPress loads a lot of that leftover data on every single page request, so years of \"uninstalled\" plugins quietly slow your site down.<\/p>\n\n<p>Attic finds it, shows you the evidence, and removes it <strong>the undo-friendly way<\/strong>:<\/p>\n\n<ul>\n<li><strong>Nothing is deleted up front.<\/strong> Tables are renamed, options are backed up. Restore anything in one click for 30 days (configurable).<\/li>\n<li><strong>Nothing is guessed.<\/strong> Before Attic calls something orphaned, it checks that the owning plugin's files are really gone and searches your code for any reference to it. Uncertain items stay marked \"review\".<\/li>\n<li><strong>Nothing changes until you say so.<\/strong> The scan is read-only.<\/li>\n<\/ul>\n\n<h4>What Attic finds<\/h4>\n\n<ul>\n<li><strong>Autoloaded option bloat<\/strong>: oversized options that load on every page, ranked by size against Site Health's 800 KB limit.<\/li>\n<li><strong>Leftovers from deleted plugins<\/strong>: options, tables and cron jobs whose plugin is no longer on disk.<\/li>\n<li><strong>Orphaned tables<\/strong>: tables no installed plugin claims, with the megabytes you'd get back.<\/li>\n<li><strong>Ghost cron events<\/strong>: scheduled jobs with no code behind them, firing forever and doing nothing.<\/li>\n<li><strong>Stranded transients<\/strong>: expired cache rows that never got cleaned up.<\/li>\n<li><strong>Orphaned meta<\/strong>: post, comment, user and term meta whose parent row is gone.<\/li>\n<\/ul>\n\n<h4>Every finding shows its evidence<\/h4>\n\n<p>Which rule fired, which plugin the data belongs to, whether that plugin is still on disk, how many code references were found, and how big it is. A finding you can't check is a finding you shouldn't act on.<\/p>\n\n<h4>Who it's for<\/h4>\n\n<ul>\n<li>Site owners who've installed and removed a lot of plugins over the years<\/li>\n<li>Agencies doing housekeeping on client sites (WP-CLI and scheduled scans included)<\/li>\n<li>Anyone whose Site Health page flags autoloaded options and doesn't know what to do about it<\/li>\n<\/ul>\n\n<h4>Also included<\/h4>\n\n<ul>\n<li><strong>Scheduled scans<\/strong> (daily, weekly or monthly) with an email digest of new and resolved findings<\/li>\n<li><strong>Autoload trend chart<\/strong> over your last 10 scans, exportable as PNG or CSV<\/li>\n<li><strong>WP-CLI<\/strong>: <code>wp attic scan<\/code>, <code>wp attic findings<\/code>, <code>wp attic quarantine<\/code><\/li>\n<li><strong>Multisite<\/strong> network dashboard with per-site scan status<\/li>\n<li><strong>No outbound requests.<\/strong> No CDN, no tracking, no account. Everything runs on your server.<\/li>\n<\/ul>\n\n<h4>How is this different from WP-Optimize or Advanced Database Cleaner?<\/h4>\n\n<p>Those are established cleanup tools with direct delete\/optimize actions. Attic takes a different default: nothing is permanently deleted up front \u2014 flagged tables are renamed (<code>wp_attic_quarantined_*<\/code>) and options are backed up first, with one-click restore inside the purge window (default 30 days, configurable). Permanent removal only happens once a quarantined batch passes the purge window un-restored, or if you purge it yourself on purpose. Attic also checks plugin files on disk and searches your code for references before promoting findings to high confidence, so uncertain items stay at \"review.\"<\/p>\n\n<h4>WP-CLI commands<\/h4>\n\n<p>Run scans from the command line, across client sites or in CI\/CD pipelines:<\/p>\n\n<ul>\n<li><code>wp attic scan<\/code> \u2014 run a full database audit<\/li>\n<li><code>wp attic findings<\/code> \u2014 list and filter findings<\/li>\n<li><code>wp attic quarantine<\/code> \u2014 manage quarantine batches<\/li>\n<li><code>wp attic status<\/code> \u2014 check plugin status<\/li>\n<li><code>wp attic map status<\/code> \u2014 inspect the bundled attribution map<\/li>\n<\/ul>\n\n<h4>Attribution Map<\/h4>\n\n<p>A curated map of plugin prefixes to their owning plugin, used to attribute\norphaned data. The map ships with the plugin and is updated with plugin\nreleases \u2014 Attic makes no outbound network requests.<\/p>\n\n<ul>\n<li><code>wp attic map status<\/code> \u2014 show the bundled map version and entry count<\/li>\n<li>Add your own attributions with the <code>attic_prefix_map_entries<\/code> filter<\/li>\n<\/ul>\n\n<h4>Third-party libraries<\/h4>\n\n<p>Attic bundles Chart.js 4.4.4 (MIT) at <code>assets\/vendor\/chart.umd.min.js<\/code>, used\nonly to draw the autoload trend chart in the admin. It is served from your own\nsite. Attic makes no outbound network requests of any kind.<\/p>\n\n<h4>Developer filters<\/h4>\n\n<p>Protecting things from ever being flagged:<\/p>\n\n<ul>\n<li><code>attic_protected_options<\/code> \u2014 additional never-flag option names<\/li>\n<li><code>attic_protected_cron_hooks<\/code> \u2014 additional never-flag cron hooks<\/li>\n<li><code>attic_protected_tables<\/code> \u2014 additional never-flag tables<\/li>\n<li><code>attic_protected_transients<\/code> \u2014 additional never-flag transient names<\/li>\n<\/ul>\n\n<p>Attribution and scanning:<\/p>\n\n<ul>\n<li><code>attic_prefix_map_entries<\/code> \u2014 add or override attribution map entries<\/li>\n<li><code>attic_prefix_map_path<\/code> \u2014 load the attribution map from a different file<\/li>\n<li><code>attic_reference_scan_roots<\/code> \u2014 where the code search looks; for unusual layouts and custom content directories<\/li>\n<li><code>attic_scan_rules<\/code> \u2014 add or remove detection rules<\/li>\n<\/ul>\n\n<p>Behaviour:<\/p>\n\n<ul>\n<li><code>attic_manage_capability<\/code> \u2014 which capability may scan and quarantine (default <code>manage_options<\/code>)<\/li>\n<li><code>attic_purge_after_days<\/code> \u2014 override the quarantine purge window<\/li>\n<li><code>attic_tracked_autoload_options<\/code> \u2014 which options usage tracking watches<\/li>\n<li><code>attic_track_autoload_usage<\/code> \u2014 return false to disable usage tracking entirely<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate.<\/li>\n<li>Go to Tools \u2192 Attic.<\/li>\n<li>Click Scan.<\/li>\n<li>Review evidence for each finding (confidence, size, code references).<\/li>\n<li>Quarantine what you want gone \u2014 recoverable for 30 days by default (configurable) if you change your mind.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20fix%20%22autoloaded%20options%20could%20affect%20performance%22%20in%20site%20health%3F\"><h3>How do I fix \"Autoloaded options could affect performance\" in Site Health?<\/h3><\/dt>\n<dd><p>Install Attic, go to Tools \u2192 Attic and run a scan. The autoload findings list every large autoloaded option by size, with the plugin it belongs to and whether that plugin is still installed. Quarantine the ones left behind by plugins you've deleted. Your autoload size drops right away, and anything you remove can be restored for 30 days.<\/p><\/dd>\n<dt id=\"will%20this%20make%20my%20site%20faster%3F\"><h3>Will this make my site faster?<\/h3><\/dt>\n<dd><p>If your autoloaded options are large, yes: WordPress loads them on every page request, so shrinking them cuts work on every page. Orphaned tables and meta mostly cost disk space and backup size rather than page speed. Attic shows sizes up front so you can see what's worth removing.<\/p><\/dd>\n<dt id=\"is%20it%20safe%20to%20delete%20leftover%20plugin%20tables%3F\"><h3>Is it safe to delete leftover plugin tables?<\/h3><\/dt>\n<dd><p>Only if the plugin that created them is really gone and nothing on your site still reads them. Some plugins share tables, and some keep data you'd want back if you reinstall. That's why Attic never drops a table straight away: it renames it to <code>wp_attic_quarantined_*<\/code>, so your site behaves as if it were deleted. If nothing breaks during the purge window, it's removed for good. If something does break, restore it in one click.<\/p><\/dd>\n<dt id=\"is%20this%20safe%3F\"><h3>Is this safe?<\/h3><\/dt>\n<dd><p>The scan is read-only. Nothing changes until you take an explicit, confirmed action. Core options like <code>siteurl<\/code>, <code>active_plugins<\/code> and <code>cron<\/code> can never be flagged, and neither can anything on your own protected list or the <code>attic_protected_options<\/code> filter.<\/p><\/dd>\n<dt id=\"how%20do%20i%20undo%20something%3F\"><h3>How do I undo something?<\/h3><\/dt>\n<dd><p>Tools \u2192 Attic \u2192 Quarantine. Every action creates a batch; restore a whole batch in one click. Batches auto-purge after 30 days (configurable).<\/p><\/dd>\n<dt id=\"why%20does%20my%20finding%20say%20%22review%22%20instead%20of%20%22high%22%3F\"><h3>Why does my finding say \"review\" instead of \"high\"?<\/h3><\/dt>\n<dd><p>For most rules, high confidence requires the owning plugin to be absent from disk (or the option to be size-flagged <em>and<\/em> unread), <strong>and<\/strong> zero literal <strong>and<\/strong> zero prefix references anywhere in your code. Dynamic option names never literal-match, so even a weak signal keeps a finding at \"review\". If your filesystem could not be read, everything is marked unverified rather than guessed at.<\/p>\n\n<p>Two rules are exceptions, because a code search cannot tell you anything useful about them: an expired transient and a meta row whose parent is gone are facts about your database, not guesses about your code. Those are reported as high confidence on their own evidence.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20external%20object%20caches%3F\"><h3>Does it work with external object caches?<\/h3><\/dt>\n<dd><p>Yes \u2014 when Redis\/Memcached is active, transients never touch the options table, and Attic says so instead of showing a meaningless clean bill of health.<\/p><\/dd>\n<dt id=\"multisite%3F\"><h3>Multisite?<\/h3><\/dt>\n<dd><p>Yes. Single-site, subdirectory multisite, and subdomain multisite installs all work. Network-wide fleet scanning is available via the network admin dashboard.<\/p><\/dd>\n<dt id=\"which%20plugins%20does%20attic%20work%20with%3F\"><h3>Which plugins does Attic work with?<\/h3><\/dt>\n<dd><p>Attic works with <strong>all WordPress plugins<\/strong> \u2014 it's a read-only cleanup tool that doesn't touch plugin data unless you explicitly quarantine it. The attribution map helps identify which plugin owns which database entries, but the scan works regardless of whether a plugin is in the map.<\/p>\n\n<p>Plugins with known prefixes in the attribution map get named attribution, and the \"leftovers from a deleted plugin\" rule relies on the map to know which prefixes belonged to which plugin.<\/p>\n\n<p>Data belonging to a plugin that is not in the map is still found by the other rules \u2014 an oversized autoloaded option, an orphaned table or a dead cron event is detected either way. It just shows its owner as \"unknown\". You can add your own entries with the <code>attic_prefix_map_entries<\/code> filter.<\/p><\/dd>\n<dt id=\"does%20attic%20delete%20plugin%20data%3F\"><h3>Does Attic delete plugin data?<\/h3><\/dt>\n<dd><p>No. Attic quarantines data (renames tables, copies options), never deletes. You can restore anything from Quarantine within the purge window (default 30 days, configurable).<\/p><\/dd>\n<dt id=\"what%20about%20multisite%20network-active%20plugins%3F\"><h3>What about multisite network-active plugins?<\/h3><\/dt>\n<dd><p>Attic correctly detects network-active plugins and never flags their data as orphaned, even if they're deactivated on individual sites.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>New: Attic now works on older sites too. It needs WordPress 5.6 or newer and PHP 7.4 or newer (before, it needed WordPress 6.5 and PHP 8.1).<\/li>\n<li>Improved: Leftover database tables from plugins you've deleted, such as Yoast SEO or Elementor, are now correctly marked as safe to clean up. Before, Attic was being too cautious and asked you to review them. Run a new scan after updating to see the difference.<\/li>\n<li>Fixed: After quarantining items from the Findings page, you could be left looking at a blank screen. Your items were always quarantined safely; now you see the confirmation message as you should.<\/li>\n<li>Fixed: The <code>wp attic scan<\/code> command (for people who manage sites from the command line) could crash while showing its progress bar.<\/li>\n<li>Improved: A clearer plugin description, answers to common questions, and a short demo video.<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li>New: Orphaned meta detection (post, comment, user, term meta with a missing parent row).<\/li>\n<li>New: Scheduled scans with an email digest, WP-CLI support, and a network dashboard for multisite.<\/li>\n<li>New: Autoload trend chart, exportable as PNG or CSV.<\/li>\n<li>Fix: Several rules were skipping findings they should have caught (stranded transients, three of four meta tables). Re-scanning is recommended.<\/li>\n<li>Fix: Orphaned-table detection no longer flags other sites on shared multisite\/database setups.<\/li>\n<li>Improved: No more per-page-load database writes; scans and quarantine are unaffected.<\/li>\n<li>Improved: No CDN or outbound requests \u2014 everything ships with the plugin.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fix: Quarantine action now correctly updates finding state (broken by SQL syntax error).<\/li>\n<li>Fix: Orphan tables rule no longer flags Attic's own tables on sites with nested table prefixes (e.g. wp_pc_attic_*).<\/li>\n<li>Add: Stop scan button to abort long-running scans mid-flight.<\/li>\n<li>Fix: Findings page defaults to latest completed scan instead of showing duplicates across all scans.<\/li>\n<li>Fix: Scan complete state now hides progress bar and stop button cleanly.<\/li>\n<li>Fix: Empty quarantine batches are cleaned up automatically.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial plugin release: read-only database audit with quarantine-based undo, five detection rules, budgeted scan engine, reference scanning, quarantine with batch restore, and attribution map.<\/li>\n<\/ul>","raw_excerpt":"Fix Site Health&#039;s &quot;autoloaded options&quot; warning and clear out junk left by deleted plugins. Quarantined first, undoable for 30 days.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/359443","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=359443"}],"author":[{"embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/rainynewt"}],"wp:attachment":[{"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=359443"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=359443"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=359443"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=359443"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=359443"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/vec.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=359443"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}