[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fFgofDA9OLSmfT-9JWJp-0q5Ki0g1HM5aQUAuNUhOQHw":3,"$f0n5kcL3AtkMOv4asEdGiS7MOfiH_qF790jViMWUMg5c":253,"$fiLz5kKuFG5CccuDyK44Tzezp71uRUzXHkC1cUSANhN0":257},{"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":13,"vuln_count":11,"unpatched_count":11,"last_vuln_date":27,"fetched_at":28,"discovery_status":29,"vulnerabilities":30,"developer":31,"crawl_stats":27,"alternatives":38,"analysis":148,"fingerprints":225},"meta-ledger","Meta Ledger – Track, compare, and restore post meta Changes","1.0.1","SmilingSyntax","https:\u002F\u002Fprofiles.wordpress.org\u002Fsmilingsyntax\u002F","\u003Cp>Meta Ledger automatically tracks all post meta changes for posts, custom post types, and WooCommerce products. It stores a versioned history, allows field-level diffs, and provides a restore option. Designed for developers, high-performance, and WordPress standards.\u003C\u002Fp>\n\u003Cp>Perfect for tracking product prices, custom fields, metadata changes, and any post meta modifications with complete audit trails.\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Automatic Tracking\u003C\u002Fstrong>: Hooks into WordPress meta functions to automatically track all meta changes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Version History\u003C\u002Fstrong>: Complete history of all meta changes with timestamps, user information, and action types\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Field-Level Diffs\u003C\u002Fstrong>: View side-by-side comparisons of old and new values\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Restore Functionality\u003C\u002Fstrong>: Restore any meta field to a previous version with one click\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Source Tracking\u003C\u002Fstrong>: See which file and line triggered each meta change, including changes from Meta Ledger UI\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Inline Editing\u003C\u002Fstrong>: Edit meta values directly from the admin interface\u003C\u002Fli>\n\u003Cli>\u003Cstrong>REST API\u003C\u002Fstrong>: Developer-friendly REST API endpoints for programmatic access\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WP-CLI Support\u003C\u002Fstrong>: Command-line tools for viewing and restoring meta versions\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Performance Optimized\u003C\u002Fstrong>: Configurable retention policies, batching, and efficient database storage\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WooCommerce Compatible\u003C\u002Fstrong>: Works seamlessly with WooCommerce products\u003C\u002Fli>\n\u003C\u002Ful>\n","Automatically track all post meta changes with versioned history, field-level diffs, and restore functionality.",0,136,100,1,"2026-01-29T11:47:00.000Z","6.9.4","6.0","8.0",[20,21,22,23,24],"history","post-meta","postmeta","restore","woocommerce","https:\u002F\u002Fsmilingsyntax.com\u002Fplugin\u002Fmeta-ledger","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmeta-ledger.1.0.1.zip",null,"2026-04-06T09:54:40.288Z","no_bundle",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":33,"total_installs":34,"avg_security_score":13,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},"smilingsyntax",3,10,30,94,"2026-05-20T11:19:13.729Z",[39,63,85,107,128],{"slug":40,"name":41,"version":42,"author":43,"author_profile":44,"description":45,"short_description":46,"active_installs":47,"downloaded":48,"rating":13,"num_ratings":49,"last_updated":50,"tested_up_to":16,"requires_at_least":51,"requires_php":52,"tags":53,"homepage":57,"download_link":58,"security_score":59,"vuln_count":60,"unpatched_count":11,"last_vuln_date":61,"fetched_at":62},"wc-price-history","WC Price History","3.2.3","kkarpieszuk","https:\u002F\u002Fprofiles.wordpress.org\u002Fkkarpieszuk\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fwcpricehistory.com\" rel=\"nofollow ugc\">WC Price History\u003C\u002Fa> plugin allows you to track WooCommerce© Products prior prices history and display the lowest price in the last 30 days. This plugin allows your WC shop to be compliant with European law which specifies price reduction announcement policy.\u003C\u002Fp>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Cp>The plugin works out of the box: install and activate and your discounted products will be compatible with Omnibus directive!\u003C\u002Fp>\n\u003Cp>Plugin is configurable via \u003Ccode>WooCommerce\u003C\u002Fcode> > \u003Ccode>Price History\u003C\u002Fcode> screen. You can configure:\u003Cbr \u002F>\n↪ Where to display the price history information:\u003Cbr \u002F>\n&raquo; on the single product page\u003Cbr \u002F>\n&raquo; upsell and related products\u003Cbr \u002F>\n&raquo; main shop page\u003Cbr \u002F>\n&raquo; product category pages\u003Cbr \u002F>\n&raquo; product tag pages\u003Cbr \u002F>\n↪ When to display minimal price (always or only when the product is on sale)\u003Cbr \u002F>\n↪ How to count minimal price (the minimal from the moment product went on sale to 30 days before that moment or the minimal price from today to 30 days ago)\u003Cbr \u002F>\n↪ How many days take into account when calculating minimal price (30 days by default)\u003Cbr \u002F>\n↪ How to display the price history information\u003Cbr \u002F>\n↪ What to do if the price didn’t change in the last N days (hide price information \u002F display current price \u002F display custom text)\u003C\u002Fp>\n\u003Cp>At the configuration screen you will find additional information how to configure the plugin to be compliant with Omnibus directive (European Commission Directive 98\u002F6\u002FEC Article 6a) and link to legal acts.\u003C\u002Fp>\n","What was the lowest price recently? Build customer trust through transparency! Track and display product price history in WooCommerce store.",4000,51647,24,"2026-03-09T09:24:00.000Z","5.8","7.2",[20,54,55,56,24],"lowest","omnibus","prices","https:\u002F\u002Fgithub.com\u002Fkkarpieszuk\u002Fwc-price-history","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwc-price-history.3.2.3.zip",98,2,"2025-01-07 00:00:00","2026-04-16T10:56:18.058Z",{"slug":64,"name":65,"version":66,"author":67,"author_profile":68,"description":69,"short_description":70,"active_installs":71,"downloaded":72,"rating":13,"num_ratings":73,"last_updated":74,"tested_up_to":16,"requires_at_least":75,"requires_php":76,"tags":77,"homepage":83,"download_link":84,"security_score":13,"vuln_count":11,"unpatched_count":11,"last_vuln_date":27,"fetched_at":62},"order-status-history-for-woocommerce","Order Status History for WooCommerce","2.0.2","alx359","https:\u002F\u002Fprofiles.wordpress.org\u002Falx359\u002F","\u003Cp>\u003Cem>Order Status History for WooCommerce\u003C\u002Fem> (OSHWOO) speeds up your daily analysis and processing of orders. Unobtrusive visual cues in all the orders screens show when someone has ordered from your shop before, your (most) repeating customers, and spurts of unusual activity (like  customers with due payments and cancellations).\u003C\u002Fp>\n\u003Ch4>Main features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>A graphical add-on for WooCommerce. Simply install and you’re ready to go\u003C\u002Fli>\n\u003Cli>For each Order in the \u003Cem>Orders\u003C\u002Fem> table, get additional data displayed, like: has a customer ordered before, repeatedness, and unusual behavior (e.g. due payments and cancellations)\u003C\u002Fli>\n\u003Cli>The newly added \u003Cem>Order history column\u003C\u002Fem> is also sortable. The Shop Manager now can easily discern their most repeating customers, or those with the most issues, for example\u003C\u002Fli>\n\u003Cli>Shows Order history statuses as color swatches in 3 different places: the \u003Cem>Orders\u003C\u002Fem> page, the \u003Cem>Edit Order\u003C\u002Fem> page, and the \u003Cem>Users\u003C\u002Fem> page \u003C\u002Fli>\n\u003Cli>Status colors are fully customizable, including the default WooCommerce statuses. Many color themes also available, inspired from major shopping carts\u003C\u002Fli>\n\u003Cli>Can work in conjunction with, or replace altogether, the default WooCommerce status swatches\u003C\u002Fli>\n\u003Cli>Fully supports Guest, registered Customer, and mixed Guest \u002F Customer Orders\u003C\u002Fli>\n\u003Cli>Detailed reports of past Orders,  purchased Products, and all notes sent to Customer or private, for any registered or Guest Customer \u003C\u002Fli>\n\u003Cli>CSV export of Orders, Products, and Notes reports\u003C\u002Fli>\n\u003Cli>Support of composite products within Reports\u003C\u002Fli>\n\u003Cli>Multi-currency support, with some extra usability features\u003C\u002Fli>\n\u003Cli>Translation-ready\u003C\u002Fli>\n\u003Cli>Completely free, with no limitations. Donations welcome.\u003C\u002Fli>\n\u003C\u002Ful>\n","Speed up your daily processing of orders by getting to know more about who's ordering. Themed order status color swatches, Reports, CSV, free.",1000,12582,14,"2026-01-07T17:09:00.000Z","5.0","7.0",[78,79,80,81,82],"order-status","past-orders","woocommerce-history","woocommerce-order-history","woocommerce-orders","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Forder-status-history-for-woocommerce","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Forder-status-history-for-woocommerce.2.0.2.zip",{"slug":86,"name":87,"version":88,"author":89,"author_profile":90,"description":91,"short_description":92,"active_installs":93,"downloaded":94,"rating":95,"num_ratings":96,"last_updated":97,"tested_up_to":98,"requires_at_least":99,"requires_php":100,"tags":101,"homepage":104,"download_link":105,"security_score":106,"vuln_count":11,"unpatched_count":11,"last_vuln_date":27,"fetched_at":62},"custom-metadata","Custom Metadata Manager","0.7.1","Mohammad Jangda","https:\u002F\u002Fprofiles.wordpress.org\u002Fbatmoo\u002F","\u003Cp>An easy way to add custom fields to your object types (post, pages, custom post types, users) & to generate option pages.\u003C\u002Fp>\n\u003Cp>The goal of this plugin is to help you rapidly build familiar, intuitive interfaces for your users in a very WordPress-native way.\u003C\u002Fp>\n\u003Cp>The custom field panel is nice, but not quite the easiest thing for users to work with. Adding your own metaboxes and fields involves a lot of time and repetitive code that could be better used elsewhere.\u003C\u002Fp>\n\u003Cp>This plugin handles all that heavy-lifting for you behind-the-scenes, so that you can focus on more on building out and connecting your data rather than all the minor details. This single piece of code \u003Ccode>x_add_metadata_field( 'my-field-name', 'post' );\u003C\u002Fcode> generates a metabox with a text field inside it, with the necessary hooks to save the entered values.\u003C\u002Fp>\n\u003Cp>The API is similar to that used for registering custom post types and taxonomies so it should be familiar territory.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>NOTE\u003C\u002Fstrong>: The plugin now requires WordPress 3.3+ (chiefly for the wysiwyg & datepicker fields)\u003C\u002Fp>\n\u003Cp>Like what you see? Want more field types and features added? \u003Ca href=\"mailto:tech@stresslimitdesign.com\" rel=\"nofollow ugc\">Get in touch\u003C\u002Fa> or \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fjkudish\u002Fcustom-metadata\" rel=\"nofollow ugc\">contribute on github\u003C\u002Fa>\u003C\u002Fp>\n\u003Cblockquote>\n\u003Cp>\u003Cem>See “Other Notes” section for usage information\u003C\u002Fem>\u003C\u002Fp>\n\u003C\u002Fblockquote>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Ch4>Object Types\u003C\u002Fh4>\n\u003Cp>The main idea behind this plugin is to have a single API to work with regardless of the object type. Currently, Custom Metadata Manager works with \u003Ccode>user\u003C\u002Fcode>, \u003Ccode>comment\u003C\u002Fcode> and any built-in or custom post types, e.g. \u003Ccode>post\u003C\u002Fcode>, \u003Ccode>page\u003C\u002Fcode>, etc.\u003C\u002Fp>\n\u003Ch4>Registering your fields\u003C\u002Fh4>\n\u003Cp>For the sake of performance (and to avoid potential race conditions), always register your custom fields in the \u003Ccode>admin_menu\u003C\u002Fcode> hook. This way your front-end doesn’t get bogged down with unnecessary processing and you can be sure that your fields will be registered safely. Here’s a code sample:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>add_action( 'admin_menu', 'my_theme_init_custom_fields' );\n\nfunction my_theme_init_custom_fields() {\n    if( function_exists( 'x_add_metadata_field' ) && function_exists( 'x_add_metadata_group' ) ) {\n        x_add_metadata_field( 'my_field', array( 'user', 'post' ) );\n    }\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Getting the data\u003C\u002Fh4>\n\u003Cp>You can get the data as you normally would using the \u003Ccode>get_metadata\u003C\u002Fcode> function. Custom Metadata manager stores all data using the WordPress metadata APIs using the slug name you provide. That way, even if you decide to deactivate this wonderful plugin, your data is safe and accessible. For options, you can use \u003Ccode>get_option\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Cp>Example:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$value = get_metadata( 'post', get_the_ID(), 'featured', true ); \u002F\u002F Returns post metadata value for the field 'featured'\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Adding Metadata Groups\u003C\u002Fh4>\n\u003Cp>A group is essentially a metabox that groups together multiple fields. Register the group before any fields\u003C\u002Fp>\n\u003Cpre>\u003Ccode>x_add_metadata_group( $slug, $object_types, $args );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Parameters\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>$slug\u003C\u002Fcode> (string) The key under which the metadata will be stored.\u003C\u002Fli>\n\u003Cli>\u003Ccode>$object_types\u003C\u002Fcode> (string|array) The object types to which this field should be added. Supported: post, page, any custom post type, user, comment.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Options and Overrides\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$args = array(\n    'label' => $group_slug, \u002F\u002F Label for the group\n    'context' => 'normal', \u002F\u002F (post only)\n    'priority' => 'default', \u002F\u002F (post only)\n    'autosave' => false, \u002F\u002F (post only) Should the group be saved in autosave? NOT IMPLEMENTED YET!\n    'exclude' => '', \u002F\u002F see below for details\n    'include' => '', \u002F\u002F see below for details\n);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Adding Metadata Fields\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>x_add_metadata_field( $slug, $object_types, $args );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>\u003Cstrong>Parameters\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Ccode>$slug\u003C\u002Fcode> (string) The key under which the metadata will be stored. For post_types, prefix the slug with an underscore (e.g. \u003Ccode>_hidden\u003C\u002Fcode>) to hide it from the the Custom Fields box.\u003C\u002Fli>\n\u003Cli>\u003Ccode>$object_types\u003C\u002Fcode> (string|array) The object types to which this field should be added. Supported: post, page, any custom post type, user, comment.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Options and Overrides\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$args = array(\n    'group' => '', \u002F\u002F The slug of group the field should be added to. This needs to be registered with x_add_metadata_group first.\n    'field_type' => 'text', \u002F\u002F The type of field; 'text', 'textarea', 'password', 'checkbox', 'radio', 'select', 'upload', 'wysiwyg', 'datepicker', 'taxonomy_select', 'taxonomy_radio'\n    'label' => '', \u002F\u002F Label for the field\n    'description' => '', \u002F\u002F Description of the field, displayed below the input\n    'values' => array(), \u002F\u002F Values for select and radio buttons. Associative array\n    'display_callback' => '', \u002F\u002F Callback to custom render the field\n    'sanitize_callback' => '', \u002F\u002F Callback to sanitize data before it's saved\n    'display_column' => false, \u002F\u002F Add the field to the columns when viewing all posts\n    'display_column_callback' => '', \u002F\u002F Callback to render output for the custom column\n    'required_cap' => '', \u002F\u002F The cap required to view and edit the field\n    'exclude' => '', \u002F\u002F see below for details\n    'include' => '', \u002F\u002F see below for details\n    'multiple' => false, \u002F\u002F true or false, can the field be duplicated with a click of a button?\n    'readonly' => false, \u002F\u002F makes the field be readonly (works with text, textarea, password, upload and datepicker fields)\n);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Include \u002F Exclude\u003C\u002Fh4>\n\u003Cp>You can exclude fields and groups from specific object. For example, with the following, field-1 will show up for all posts except post #123:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$args = array(\n    'exclude' => 123\n);\nx_add_metadata_field( 'field-1', 'post', $args );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Alternatively, you can limit (“include”) fields and groups to specific objects. The following will ”only” show group-1 to post #456:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$args = array(\n    'include' => 123\n);\nx_add_metadata_group( 'group-1', 'post', $args );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>You can pass in an array of IDs:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>$args = array(\n    'include' => array( 123, 456, 789 );\n);\n\nWith multiple object types, you can pass in an associative array:\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>$args = array(\u003Cbr \u002F>\n    ‘exclude’ => array(\u003Cbr \u002F>\n        ‘post’ => 123,\u003Cbr \u002F>\n        ‘user’ => array( 123, 456, 789 )\u003Cbr \u002F>\n    )\u003Cbr \u002F>\n);\u003C\u002Fp>\n\u003Ch4>Examples\u003C\u002Fh4>\n\u003Cp>For examples, please see the \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fjkudish\u002Fcustom-metadata\u002Fblob\u002Fmaster\u002Fcustom_metadata_examples.php\" rel=\"nofollow ugc\">custom_metadata_examples.php\u003C\u002Fa> file included with the plugin. Add a constant to your wp-config.php called \u003Ccode>CUSTOM_METADATA_MANAGER_DEBUG\u003C\u002Fcode> with a value of \u003Ccode>true\u003C\u002Fcode> to see it in action:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>define( 'CUSTOM_METADATA_MANAGER_DEBUG', true );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>TODOs\u003C\u002Fh4>\n\u003Cp>Stuff we have planned for the future:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Ability to clone (multiple) groups of fields\u003C\u002Fli>\n\u003Cli>Ability Pass in attributes for built-in fields (e.g. class, data-*, etc.)\u003C\u002Fli>\n\u003Cli>Additional field types (multi-select, multi-checkbox)\u003C\u002Fli>\n\u003Cli>Limit or exclude groups and fields using a custom callback\u003C\u002Fli>\n\u003Cli>Autosave support for fields on post types\u003C\u002Fli>\n\u003Cli>Client- and server-side validation support\u003C\u002Fli>\n\u003Cli>Add groups and fields to Quick Edit\u003C\u002Fli>\n\u003C\u002Ful>\n","An easy way to add custom fields to your object types (post, pages, custom post types, users)",800,16586,88,5,"2012-07-11T19:02:00.000Z","3.4.2","3.3","",[86,102,21,22,103],"custom-metadata-manager-metadata","user-meta","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fcustom-metadata\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcustom-metadata.0.7.1.zip",85,{"slug":108,"name":109,"version":110,"author":111,"author_profile":112,"description":113,"short_description":114,"active_installs":115,"downloaded":116,"rating":13,"num_ratings":33,"last_updated":117,"tested_up_to":16,"requires_at_least":118,"requires_php":76,"tags":119,"homepage":124,"download_link":125,"security_score":126,"vuln_count":14,"unpatched_count":11,"last_vuln_date":127,"fetched_at":62},"export-customers-data","Export Customers Data","1.2.7","Fahad Mahmood","https:\u002F\u002Fprofiles.wordpress.org\u002Ffahadmahmood\u002F","\u003Cp>This plugin allows you to export WooCommerce customer data with full flexibility. Whether you need email lists, order history, customer lifetime value, or any other detail — this plugin gives you control over what to export, and how.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features:\u003C\u002Fstrong>\u003Cbr \u002F>\n* Export customers in CSV or XLSX format\u003Cbr \u002F>\n* Include custom user meta fields\u003Cbr \u002F>\n* Support for WooCommerce Analytics fields like \u003Ccode>total_spend\u003C\u002Fcode>, \u003Ccode>orders_count\u003C\u002Fcode>, etc.\u003Cbr \u002F>\n* Smart field mapping (like \u003Ccode>phone\u003C\u002Fcode>, \u003Ccode>address\u003C\u002Fcode>, \u003Ccode>name\u003C\u002Fcode>)\u003Cbr \u002F>\n* Apply filters (date range, country, payment method, role, etc.)\u003Cbr \u002F>\n* Built-in support for special fields not available in user meta\u003Cbr \u002F>\n* Works great even with large stores using AJAX-based chunk exports\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Author:\u003C\u002Fstrong> \u003Ca href=\"https:\u002F\u002Fwww.androidbubbles.com\u002Fcontact\" rel=\"nofollow ugc\">Fahad Mahmood\u003C\u002Fa>\u003Cbr \u002F>\n\u003Cstrong>Project URI:\u003C\u002Fstrong> \u003Ca href=\"https:\u002F\u002Fandroidbubble.com\u002Fblog\u002Fwordpress\u002Fplugins\u002Fexport-customers-data\" rel=\"nofollow ugc\">https:\u002F\u002Fandroidbubble.com\u002Fblog\u002Fwordpress\u002Fplugins\u002Fexport-customers-data\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Tags\u003C\u002Fh4>\n\u003Cp>woocommerce, orders, users, customers, data, export, analytics, filters, user meta\u003C\u002Fp>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under the GNU General Public License v2 or later.\u003Cbr \u002F>\nYou may modify and redistribute it freely, but without any warranty.\u003Cbr \u002F>\nSee http:\u002F\u002Fwww.gnu.org\u002Flicenses\u002Fgpl-2.0.html for full terms.\u003C\u002Fp>\n","Easily export WooCommerce customers' data to CSV or XLSX with advanced filters and smart field support.",500,6957,"2026-03-07T02:14:00.000Z","4.4",[120,121,122,123,24],"analytics","csv-export","customer-data","order-history","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fexport-customers-data","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fexport-customers-data.1.2.7.zip",99,"2024-12-23 00:00:00",{"slug":129,"name":130,"version":131,"author":132,"author_profile":133,"description":134,"short_description":135,"active_installs":136,"downloaded":137,"rating":138,"num_ratings":34,"last_updated":139,"tested_up_to":16,"requires_at_least":140,"requires_php":141,"tags":142,"homepage":146,"download_link":147,"security_score":13,"vuln_count":11,"unpatched_count":11,"last_vuln_date":27,"fetched_at":62},"wp-admin-search-meta","WP-Admin Search Post Meta","0.4","meloniq","https:\u002F\u002Fprofiles.wordpress.org\u002Fmeloniq\u002F","\u003Cp>Enhance the default WordPress admin search by including custom fields (post meta) in search results.\u003Cbr \u002F>\nThis plugin seamlessly extends the post listing (edit.php) search functionality, allowing administrators to quickly find content based on values stored in custom fields.\u003C\u002Fp>\n\u003Cp>It works out of the box with no configuration required—just activate and start searching.\u003Cbr \u002F>\nEspecially useful for sites that rely heavily on custom fields, such as those built with ACF or other meta-based data structures.\u003C\u002Fp>\n\u003Cp>Lightweight, efficient, and fully integrated with the native WordPress admin experience.\u003C\u002Fp>\n","Search WordPress admin posts by custom fields (post meta) directly from the default search.",300,6597,86,"2026-04-05T21:44:00.000Z","4.9","7.4",[143,21,22,144,145],"custom-fields","search","wp-admin","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-admin-search-meta\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-admin-search-meta.0.4.zip",{"attackSurface":149,"codeSignals":210,"taintFlows":220,"riskAssessment":221,"analyzedAt":224},{"hooks":150,"ajaxHandlers":196,"restRoutes":207,"shortcodes":208,"cronEvents":209,"entryPointCount":60,"unprotectedCount":11},[151,157,161,165,169,174,178,182,186,191],{"type":152,"name":153,"callback":154,"file":155,"line":156},"action","add_meta_boxes","add_meta_box","includes\u002Fclass-meta-ledger-admin.php",68,{"type":152,"name":158,"callback":159,"file":155,"line":160},"admin_enqueue_scripts","enqueue_scripts",69,{"type":152,"name":162,"callback":163,"file":155,"line":164},"admin_menu","add_settings_page",70,{"type":152,"name":166,"callback":167,"file":155,"line":168},"admin_init","register_settings",71,{"type":152,"name":170,"callback":171,"priority":34,"file":172,"line":173},"add_post_meta","track_add_meta","includes\u002Fclass-meta-ledger-core.php",102,{"type":152,"name":175,"callback":176,"priority":34,"file":172,"line":177},"update_post_meta","track_update_meta",103,{"type":152,"name":179,"callback":180,"priority":34,"file":172,"line":181},"delete_post_meta","track_delete_meta",104,{"type":152,"name":183,"callback":184,"priority":11,"file":172,"line":185},"shutdown","flush_pending_changes",114,{"type":152,"name":187,"callback":188,"file":189,"line":190},"rest_api_init","register_routes","includes\u002Fclass-meta-ledger-rest.php",76,{"type":152,"name":192,"callback":193,"file":194,"line":195},"plugins_loaded","init","meta-ledger.php",120,[197,203],{"action":198,"nopriv":199,"callback":200,"hasNonce":201,"hasCapCheck":201,"file":155,"line":202},"meta_ledger_save_meta",false,"ajax_save_meta",true,74,{"action":204,"nopriv":199,"callback":205,"hasNonce":201,"hasCapCheck":201,"file":155,"line":206},"meta_ledger_delete_meta","ajax_delete_meta",75,[],[],[],{"dangerousFunctions":211,"sqlUsage":212,"outputEscaping":215,"fileOperations":11,"externalRequests":11,"nonceChecks":60,"capabilityChecks":218,"bundledLibraries":219},[],{"prepared":213,"raw":11,"locations":214},12,[],{"escaped":216,"rawEcho":11,"locations":217},133,[],4,[],[],{"summary":222,"deductions":223},"The 'meta-ledger' plugin v1.0.1 exhibits a strong security posture based on the provided static analysis. The absence of any dangerous functions, file operations, or external HTTP requests is commendable.  Furthermore, all SQL queries utilize prepared statements, and all output is properly escaped, mitigating significant risks of SQL injection and cross-site scripting vulnerabilities.\n\nThe plugin's entry points are limited to two AJAX handlers, and importantly, both appear to have proper nonce and capability checks implemented, indicating a solid defense against unauthorized access and manipulation. The lack of any recorded vulnerabilities, past or present, also suggests a development team that prioritizes security. The zero taint flows further reinforce the idea that data handling within the plugin is likely robust.\n\nOverall, 'meta-ledger' v1.0.1 presents a low-risk profile. The strengths lie in its adherence to secure coding practices for SQL and output handling, combined with a seemingly secure implementation of its limited attack surface. The absence of any vulnerability history is a significant positive indicator.  While the static analysis provides a good overview, ongoing vigilance and regular updates are always recommended for any software.",[],"2026-04-16T13:20:42.845Z",{"wat":226,"direct":235},{"assetPaths":227,"generatorPatterns":230,"scriptPaths":231,"versionParams":232},[228,229],"\u002Fwp-content\u002Fplugins\u002Fmeta-ledger\u002Fassets\u002Fcss\u002Fadmin.css","\u002Fwp-content\u002Fplugins\u002Fmeta-ledger\u002Fassets\u002Fjs\u002Fadmin.js",[],[229],[233,234],"meta-ledger\u002Fassets\u002Fcss\u002Fadmin.css?ver=","meta-ledger\u002Fassets\u002Fjs\u002Fadmin.js?ver=",{"cssClasses":236,"htmlComments":242,"htmlAttributes":243,"restEndpoints":246,"jsGlobals":250,"shortcodeOutput":252},[237,238,239,240,241],"meta-ledger-meta-box-history","meta-ledger-meta-box-form","meta-ledger-restore-button","meta-ledger-delete-button","meta-ledger-meta-field",[],[244,245],"data-meta-ledger-post-id","data-meta-ledger-field-key",[247,248,249],"\u002Fwp-json\u002Fmeta-ledger\u002Fv1\u002Fhistory","\u002Fwp-json\u002Fmeta-ledger\u002Fv1\u002Fsave","\u002Fwp-json\u002Fmeta-ledger\u002Fv1\u002Fdelete",[251],"metaLedger",[],{"error":201,"url":254,"statusCode":255,"statusMessage":256,"message":256},"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fmeta-ledger\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":60,"versions":258},[259,264],{"version":6,"download_url":26,"svn_tag_url":260,"released_at":27,"has_diff":199,"diff_files_changed":261,"diff_lines":27,"trac_diff_url":262,"vulnerabilities":263,"is_current":201},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fmeta-ledger\u002Ftags\u002F1.0.1\u002F",[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fmeta-ledger%2Ftags%2F1.0.0&new_path=%2Fmeta-ledger%2Ftags%2F1.0.1",[],{"version":265,"download_url":266,"svn_tag_url":267,"released_at":27,"has_diff":199,"diff_files_changed":268,"diff_lines":27,"trac_diff_url":27,"vulnerabilities":269,"is_current":199},"1.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmeta-ledger.1.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fmeta-ledger\u002Ftags\u002F1.0.0\u002F",[],[]]