[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fr4fUnAoKVWM83oVxTuiaNrnBkgSkQfOITRThlmtN1b0":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":13,"last_updated":14,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":24,"download_link":25,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28,"vulnerabilities":29,"developer":30,"crawl_stats":27,"alternatives":36,"analysis":148,"fingerprints":434},"wp-table-pixie","WP Table Pixie","1.3.1","ianmjones","https:\u002F\u002Fprofiles.wordpress.org\u002Fianmjones\u002F","\u003Cp>Search, sort, view and edit your settings and metadata, even serialized and base64 encoded values.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>List, sort and search settings and metadata records\u003C\u002Fli>\n\u003Cli>View serialized and JSON string values in an expandable “Rich View”\u003C\u002Fli>\n\u003Cli>Add, edit and delete records\u003C\u002Fli>\n\u003Cli>Work with base64 encoded serialized and JSON string values\u003C\u002Fli>\n\u003Cli>See highlighted broken serialized values\u003C\u002Fli>\n\u003Cli>Fix broken serialized values\u003C\u002Fli>\n\u003Cli>Bulk select and delete or fix records\u003C\u002Fli>\n\u003Cli>Supports Multisites\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Tables that can be worked with: commentmeta, options, postmeta, termmeta, usermeta and sitemeta (Multisite only).\u003C\u002Fp>\n","Search, sort, view and edit your settings and metadata, even serialized and base64 encoded values.",20,3677,0,"2025-12-01T21:37:00.000Z","6.9.4","5.5","7.0",[19,20,21,22,23],"edit","metadata","options","search","sort","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-table-pixie\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-table-pixie.1.3.1.zip",100,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":32,"avg_security_score":26,"avg_patch_time_days":33,"trust_score":34,"computed_at":35},2,40,30,94,"2026-04-04T16:07:37.637Z",[37,64,85,104,125],{"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":48,"last_updated":49,"tested_up_to":50,"requires_at_least":51,"requires_php":52,"tags":53,"homepage":59,"download_link":60,"security_score":61,"vuln_count":62,"unpatched_count":13,"last_vuln_date":63,"fetched_at":28},"themify-wc-product-filter","Themify – WooCommerce Product Filter","1.5.4","themifyme","https:\u002F\u002Fprofiles.wordpress.org\u002Fthemifyme\u002F","\u003Cp>Shopping online can be very time consuming, especially if you have to shift through hundreds of products. With the Product Filter, you can help shoppers easily find products on your WooCommerce shop. This free WordPress plugin allow users to easily filter through products by price range, categories, attributes, tags, and much more. As users select a filter they’ll be able to see live search results where products will instantly be displayed on the page. In addition to this, we’ve added the ability to create filter combinations! Unlike many other product filters, where you can only select one filter at a time, Product Filter allows multiple selections which help shoppers to refine the product search results.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FZ7My8WsG11w?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Cp>Keeping you in mind, this powerful plugin comes with a simple easy-to-use drag and drop form Builder, making it easy for you to create an unlimited number of search forms. The Product Filter plugin is a must-have tool for any ecommerce site!\u003C\u002Fp>\n\u003Cp>Plugin documentation is available at: https:\u002F\u002Fthemify.me\u002Fdocs\u002Fwc-product-filter-documentation\u003C\u002Fp>\n\u003Ch4>Features:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Live search results\u003C\u002Fli>\n\u003Cli>Drag and drop form builder\u003C\u002Fli>\n\u003Cli>Multiple filter combinations\u003C\u002Fli>\n\u003Cli>Vertical or horizontal layout\u003C\u002Fli>\n\u003Cli>Works with Divi, Elementor and Themify Builder product module\u003C\u002Fli>\n\u003C\u002Ful>\n","This plugin helps shoppers quickly find products in your WooCommerce shop by filtering through price, categories, attributes, tags, and more.",20000,777511,70,72,"2025-02-27T03:13:00.000Z","6.7.5","5.0","7.2",[54,55,56,57,58],"product-filter","product-search","product-sort","woocommerce-product-filter","woocommerce-product-search","https:\u002F\u002Fthemify.me\u002Fthemify-product-filter","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fthemify-wc-product-filter.1.5.4.zip",86,6,"2024-09-23 00:00:00",{"slug":65,"name":66,"version":67,"author":68,"author_profile":69,"description":70,"short_description":71,"active_installs":72,"downloaded":73,"rating":74,"num_ratings":75,"last_updated":76,"tested_up_to":50,"requires_at_least":77,"requires_php":78,"tags":79,"homepage":83,"download_link":84,"security_score":74,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"fv-clone-screen-options","FV Clone Screen Options","0.5","FolioVision","https:\u002F\u002Fprofiles.wordpress.org\u002Ffoliovision\u002F","\u003Cp>Simple plugin which lets you manage Screen Options of all the users on your blog.\u003C\u002Fp>\n\u003Cp>First set your own Screen Options and then \u003Cstrong>clone them across all users\u003C\u002Fstrong> with our plugin.\u003C\u002Fp>\n\u003Cp>A huge time saver. Enjoy!\u003C\u002Fp>\n\u003Cp>Note: Multisite is not supported very well, plugin doesn’t distinguish between individual blogs.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Ffoliovision.com\u002Fsupport\u002Ffv-clone-screen-options\u002F\" rel=\"nofollow ugc\">Free support available on our forums\u003C\u002Fa>\u003C\u002Fp>\n","Simple plugin which lets you manage Screen Options of all the users on your blog.",2000,20205,92,11,"2024-12-31T15:32:00.000Z","2.7","",[80,81,82],"editor","screen","screen-options","http:\u002F\u002Ffoliovision.com\u002Fseo-tools\u002Fwordpress\u002Fplugins\u002Ffv-clone-screen-options","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Ffv-clone-screen-options.zip",{"slug":86,"name":87,"version":88,"author":89,"author_profile":90,"description":91,"short_description":92,"active_installs":72,"downloaded":93,"rating":26,"num_ratings":31,"last_updated":94,"tested_up_to":95,"requires_at_least":96,"requires_php":97,"tags":98,"homepage":102,"download_link":103,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"search-replace-for-block-editor","Search and Replace for Block Editor","1.8.0","badasswp","https:\u002F\u002Fprofiles.wordpress.org\u002Fbadasswp\u002F","\u003Cp>This plugin brings the familiar Search and Replace functionality that PC users have grown accustomed to in \u003Cstrong>Microsoft Word\u003C\u002Fstrong> and \u003Cstrong>Google Docs\u003C\u002Fstrong> to the Block Editor.\u003C\u002Fp>\n\u003Cp>Now you can easily search and replace text right in the Block Editor. Its easy and does exactly what it says. You can also match the text case using the ‘Match Case | Expression’ toggle.\u003C\u002Fp>\n\u003Ch4>✔️ Features\u003C\u002Fh4>\n\u003Cp>Our plugin comes with everything you need to find and replace text quicker and more efficiently.\u003C\u002Fp>\n\u003Cp>✔️ \u003Cstrong>Search & Replace\u003C\u002Fstrong> text, typos, keywords faster.\u003Cbr \u002F>\n✔️ \u003Cstrong>Shortcut Keys\u003C\u002Fstrong> – CMD + SHIFT + F.\u003Cbr \u002F>\n✔️ \u003Cstrong>Match Case\u003C\u002Fstrong> Sensitivity.\u003Cbr \u002F>\n✔️ \u003Cstrong>Custom Hooks\u003C\u002Fstrong> to help you customize plugin behaviour.\u003Cbr \u002F>\n✔️ Available in \u003Cstrong>mutiple langauges\u003C\u002Fstrong> such as Arabic, Chinese, Hebrew, Hindi, Russian, German, Italian, Croatian, Spanish & French languages.\u003Cbr \u002F>\n✔️ \u003Cstrong>Backward compatible\u003C\u002Fstrong>, works with most WP versions.\u003C\u002Fp>\n\u003Ch4>✨ Getting Started\u003C\u002Fh4>\n\u003Cp>Create a new Post or open an existing Post. Locate the ‘Search and Replace’ icon at the \u003Cstrong>top left\u003C\u002Fstrong> corner of the Block Editor and click on it. Proceed to type in the text you wish to replace and click on ‘Replace’.\u003C\u002Fp>\n\u003Cp>You can get a taste of how this works, by using the \u003Ca href=\"https:\u002F\u002Ftastewp.com\u002Fcreate\u002FNMS\u002F8.0\u002F6.7.0\u002Fsearch-replace-for-block-editor\u002Ftwentytwentythree?ni=true&origin=wp\" rel=\"nofollow ugc\">demo\u003C\u002Fa> link.\u003C\u002Fp>\n\u003Ch4>⚡ Shortcut Keys & Text Selection\u003C\u002Fh4>\n\u003Cp>To quickly access the Search and Replace modal, press \u003Cstrong>CTRL + SHIFT + F\u003C\u002Fstrong>. This will fire up the dialog box where you can quickly change things.\u003C\u002Fp>\n\u003Cp>You can also \u003Cstrong>select text\u003C\u002Fstrong> on your Block Editor and \u003Cstrong>use the Shortcut\u003C\u002Fstrong>. This will grab the text you have selected and fire up your dialog box with the text already typed into it. This makes working with the Search and Replace tool faster.\u003C\u002Fp>\n\u003Ch4>🔌🎨 Plug and Play or Customize\u003C\u002Fh4>\n\u003Cp>The Search & Replace for Block Editor plugin is built to work right out of the box. Simply install, activate and start using.\u003C\u002Fp>\n\u003Cp>Want to add your personal touch? All of our documentation can be found \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fbadasswp\u002Fsearch-and-replace\" rel=\"nofollow ugc\">here\u003C\u002Fa>. You can override the plugin’s behaviour with custom logic of your own using \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fbadasswp\u002Fsearch-and-replace?tab=readme-ov-file#hooks\" rel=\"nofollow ugc\">hooks\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Contribute\u003C\u002Fh3>\n\u003Cp>If you’d like to contribute to the development of this plugin, you can find it on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fbadasswp\u002Fsearch-and-replace\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>To build, clone repo and run \u003Ccode>npm install && npm run build\u003C\u002Fcode>\u003C\u002Fp>\n","Search and Replace text within the WordPress Block Editor just like Microsoft Word or Google Docs. It's super fast, easy & just works!",14077,"2025-12-12T09:05:00.000Z","6.8.5","6.0","7.4",[99,80,100,22,101],"block","replace","text","https:\u002F\u002Fgithub.com\u002Fbadasswp\u002Fsearch-and-replace","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsearch-replace-for-block-editor.1.8.0.zip",{"slug":105,"name":106,"version":107,"author":108,"author_profile":109,"description":110,"short_description":111,"active_installs":112,"downloaded":113,"rating":26,"num_ratings":114,"last_updated":115,"tested_up_to":116,"requires_at_least":117,"requires_php":78,"tags":118,"homepage":122,"download_link":123,"security_score":124,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"better-internal-link-search","Better Internal Link Search","1.3.0","Blazer Six","https:\u002F\u002Fprofiles.wordpress.org\u002Fblazersix\u002F","\u003Cp>Better Internal Link Search improves the default internal link searching feature in a number of ways, making it faster and easier to find the content you want to link up.\u003C\u002Fp>\n\u003Cp>The most basic feature limits results to posts and pages that contain your search term in the title, rather than returning every post that contains the term in the title \u003Cem>or content field\u003C\u002Fem> — this greatly reduces the number of results on sites with a lot of content and should improve accuracy.\u003C\u002Fp>\n\u003Cp>Beyond that simple change are more powerful features that can be customized for your particular site, including creating shortcuts for often-used links and even searching external sites without leaving WordPress!\u003C\u002Fp>\n\u003Ch3>Features\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Search by post or page title when adding links to the editor or adding pages to a nav menu.\u003C\u002Fli>\n\u003Cli>Includes terms from any taxonomy in the search results so you can easily link to term archives.\u003C\u002Fli>\n\u003Cli>Scheduled posts are included in search results.\u003C\u002Fli>\n\u003Cli>Text highlighted in the editor when opening the internal link popup is searched for automatically.\u003C\u002Fli>\n\u003Cli>Adds a shortcut for quickly linking to the homepage. Just type ‘home’.\u003C\u002Fli>\n\u003Cli>Provides the ability to create custom shortcuts with a little code.\u003C\u002Fli>\n\u003Cli>Powerful modifiers included for searching additional data sources to make linking fast and easy (Wikipedia, GitHub, iTunes, Spotify, Codex).\u003C\u002Fli>\n\u003Cli>Extendable so developers can add their own sources.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Typeahead Search\u003C\u002Fh3>\n\u003Cp>Instantly see search results for pages, posts, media items or other custom post types on their Manage Posts screens. As soon as you start typing in the search field, the table instantly updates with results for whichever post type you’re viewing. Pressing enter or clicking the search button will continue to return posts using the default search algorithm (post titles and content).\u003C\u002Fp>\n\u003Ch3>Additional Resources\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fsupport\u002Fview\u002Fplugin-reviews\u002Fbetter-internal-link-search#postform\" rel=\"ugc\">Write a review\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fcedaro\u002Fbetter-internal-link-search\" rel=\"nofollow ugc\">Contribute on GitHub\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Ftwitter.com\u002Fcedaroco\" rel=\"nofollow ugc\">Follow @cedaroco\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.cedaro.com\u002F?utm_source=wordpress.org&utm_medium=link&utm_content=better-internal-link-search-readme&utm_campaign=plugins\" rel=\"nofollow ugc\">Visit Cedaro\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Screencast\u003C\u002Fh3>\n\u003Cp>Eric Amundson over at \u003Ca href=\"https:\u002F\u002Fivycat.com\u002F\" rel=\"nofollow ugc\">Ivy Cat\u003C\u002Fa> recorded this great overview of the plugin’s features:\u003C\u002Fp>\n\u003Cp>\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002FWfyTiVTdEX8?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\u003C\u002Fp>\n","Improve the internal link popup manager with time-saving enhancements and features.",1000,56143,25,"2016-12-02T07:13:00.000Z","4.8.28","4.4",[80,119,120,121,22],"internal-links","links","nav-menus","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbetter-internal-link-search\u002F?utm_source=wordpress-plugin&utm_medium=link&utm_content=better-internal-link-search-plugin-uri&utm_campaign=plugins","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fbetter-internal-link-search.1.3.0.zip",85,{"slug":126,"name":127,"version":128,"author":129,"author_profile":130,"description":131,"short_description":132,"active_installs":112,"downloaded":133,"rating":26,"num_ratings":134,"last_updated":135,"tested_up_to":50,"requires_at_least":136,"requires_php":137,"tags":138,"homepage":144,"download_link":145,"security_score":146,"vuln_count":31,"unpatched_count":13,"last_vuln_date":147,"fetched_at":28},"dropdown-multisite-selector","Dropdown multisite selector","0.9.4","alordiel","https:\u002F\u002Fprofiles.wordpress.org\u002Falordiel\u002F","\u003Cp>With this plugin you can create fully configurable dropdown field which select options would work as links and will redirect the user to the selected one. It was originally built for multisite for faster navigation between each sub-site, but currently it also supports custom links as options from the dropdown.\u003C\u002Fp>\n\u003Ch4>There are three options:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>manually configure the number of the options from the dropdown element – pick up a name of your option and the relevant url where the user will be redirected after choosing it;\u003C\u002Fli>\n\u003Cli>get any list of all sites from WordPress Multisite network – this one picks the names of all your sites that are in the multisite network and adds them to the select element;\u003C\u002Fli>\n\u003Cli>get the same list as previous one but only with the site where the current logged-in user is registered;\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>You can manage:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Your label for the name of the select option or leave it without label\u003C\u002Fli>\n\u003Cli>Your first select option (‘Select branch’, ‘Select country’, ‘Choose Side’)\u003C\u002Fli>\n\u003Cli>Sorting of your custom list (alphabetic sorting + reverse sorting (your last entries will become first in the dropdown))\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Once you have saved your settings you can see the result using this shortcode [dms] or use the widget.\u003C\u002Fp>\n\u003Ch4>Shortcodes\u003C\u002Fh4>\n\u003Cp>[dms] – Using this shortcode will generate the same dropdown as the one you have configured in the admin settings panel.\u003C\u002Fp>\n\u003Cp>[dms_manual name=”” placeholder=”” target=”” options=””] – Use this one your own dropdown that has nothing to do with the settings you have set. The arguments of this shortcode are:\u003Cbr \u002F>\n* name – the label of the select option (leave empty for no label)\u003Cbr \u002F>\n* placeholder – the first option that is shown in the select menu (like: “–  Select –“)\u003Cbr \u002F>\n* target – could be “default” or “blank”. This is the target of the link – “blank” is to be open in new window\u003Cbr \u002F>\n* options – name-link pairs, should be placed as : “url1|name1, url2|name2, url3|name3”\u003C\u002Fp>\n\u003Cp>An example:\u003Cbr \u002F>\n[dms_manual name=”Label” placeholder=”–Select–” target=”blank” options=”Trusted search engine|https:\u002F\u002Fduckduckgo.com, Tracking search engine|https:\u002F\u002Fgoogle.bg”]\u003C\u002Fp>\n\u003Cp>If you would more functionality, please contact me to check if I can implement it. Also thanks to everyone giving me hints how to improve this plugin.\u003C\u002Fp>\n\u003Ch4>Filters in the code\u003C\u002Fh4>\n\u003Cp>Here are some filters that you can use to modify the results from the code:\u003Cbr \u002F>\n* \u003Ccode>dms_sites_arguments\u003C\u002Fcode> – to control the attributes used in the function \u003Ccode>get_sites()\u003C\u002Fcode> when ‘Show all sites in the WMN’ option is selected.\u003Cbr \u002F>\n* \u003Ccode>dms_multisite_pairs\u003C\u002Fcode> – filter the results returned from \u003Ccode>get_sites()\u003C\u002Fcode>.\u003Cbr \u002F>\n* \u003Ccode>dms_users_sites\u003C\u002Fcode> – control the sites when ‘Show only the sites where the user is registered’ option is selected.\u003C\u002Fp>\n","Gives you the resources to make select field with redirecting options to a given URLs.",31602,19,"2025-03-26T10:17:00.000Z","3.8","7.4.0",[139,140,141,142,143],"dropdown-menu","edit-select-options","flexible-select","multisite","redirect","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fdropdown-multisite-selector\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdropdown-multisite-selector.zip",91,"2025-03-28 00:00:00",{"attackSurface":149,"codeSignals":264,"taintFlows":298,"riskAssessment":420,"analyzedAt":433},{"hooks":150,"ajaxHandlers":246,"restRoutes":260,"shortcodes":261,"cronEvents":262,"entryPointCount":263,"unprotectedCount":263},[151,157,160,164,170,173,175,178,181,184,187,190,193,196,199,202,205,208,211,214,217,219,221,224,227,230,232,235,238,241,244],{"type":152,"name":153,"callback":153,"priority":154,"file":155,"line":156},"filter","screen_settings",10,"admin\\class-table-pixie-admin-edit.php",170,{"type":152,"name":153,"callback":153,"priority":154,"file":158,"line":159},"admin\\class-table-pixie-admin.php",115,{"type":152,"name":161,"callback":161,"priority":154,"file":162,"line":163},"list_table_primary_column","includes\\class-table-pixie-list-table.php",27,{"type":165,"name":166,"callback":167,"file":168,"line":169},"action","plugins_loaded","anonymous","includes\\class-table-pixie.php",109,{"type":165,"name":171,"callback":167,"file":168,"line":172},"admin_enqueue_scripts",119,{"type":165,"name":171,"callback":167,"file":168,"line":174},120,{"type":165,"name":176,"callback":167,"file":168,"line":177},"init",122,{"type":165,"name":179,"callback":167,"file":168,"line":180},"network_admin_menu",125,{"type":165,"name":182,"callback":167,"file":168,"line":183},"admin_menu",127,{"type":165,"name":185,"callback":167,"file":168,"line":186},"table_pixie_admin_page_hooked",129,{"type":152,"name":188,"callback":167,"file":168,"line":189},"set-screen-option",130,{"type":152,"name":191,"callback":167,"file":168,"line":192},"table_pixie_get_query_string",132,{"type":152,"name":194,"callback":167,"file":168,"line":195},"table_pixie_get_count",133,{"type":152,"name":197,"callback":167,"file":168,"line":198},"table_pixie_get_item",134,{"type":152,"name":200,"callback":167,"file":168,"line":201},"table_pixie_column_display",136,{"type":152,"name":203,"callback":167,"file":168,"line":204},"table_pixie_column_row_actions",137,{"type":152,"name":206,"callback":167,"file":168,"line":207},"table_pixie_extra_tablenav",138,{"type":165,"name":209,"callback":167,"file":168,"line":210},"added_user_meta",141,{"type":165,"name":212,"callback":167,"file":168,"line":213},"updated_user_meta",142,{"type":152,"name":215,"callback":167,"file":168,"line":216},"table_pixie_format_row_actions",147,{"type":165,"name":171,"callback":167,"file":168,"line":218},152,{"type":165,"name":171,"callback":167,"file":168,"line":220},153,{"type":165,"name":222,"callback":167,"file":168,"line":223},"admin_footer",154,{"type":165,"name":225,"callback":167,"file":168,"line":226},"admin_notices",155,{"type":165,"name":228,"callback":167,"file":168,"line":229},"network_admin_notices",156,{"type":165,"name":185,"callback":167,"file":168,"line":231},158,{"type":152,"name":233,"callback":167,"file":168,"line":234},"table_pixie_admin_title",159,{"type":152,"name":236,"callback":167,"file":168,"line":237},"table_pixie_set_help_tabs",160,{"type":152,"name":239,"callback":167,"file":168,"line":240},"table_pixie_get_bulk_actions",162,{"type":165,"name":242,"callback":167,"file":168,"line":243},"table_pixie_process_action",163,{"type":152,"name":203,"callback":167,"file":168,"line":245},164,[247,251,254,257],{"action":248,"nopriv":249,"callback":167,"hasNonce":249,"hasCapCheck":249,"file":168,"line":250},"table_pixie_toggle_truncate",false,139,{"action":252,"nopriv":249,"callback":167,"hasNonce":249,"hasCapCheck":249,"file":168,"line":253},"table_pixie_toggle_remember_search",140,{"action":255,"nopriv":249,"callback":167,"hasNonce":249,"hasCapCheck":249,"file":168,"line":256},"table_pixie_admin_edit_records",166,{"action":258,"nopriv":249,"callback":167,"hasNonce":249,"hasCapCheck":249,"file":168,"line":259},"table_pixie_admin_edit_toggle_delete_protected",167,[],[],[],4,{"dangerousFunctions":265,"sqlUsage":271,"outputEscaping":274,"fileOperations":13,"externalRequests":13,"nonceChecks":263,"capabilityChecks":13,"bundledLibraries":297},[266],{"fn":267,"file":268,"line":269,"context":270},"unserialize","includes\\class-table-pixie-data-format.php",337,"return @unserialize( $data, array( 'allowed_classes' => false ) );",{"prepared":272,"raw":13,"locations":273},5,[],{"escaped":275,"rawEcho":154,"locations":276},75,[277,280,282,284,286,287,289,291,294,296],{"file":155,"line":278,"context":279},548,"raw output",{"file":155,"line":281,"context":279},778,{"file":158,"line":283,"context":279},569,{"file":285,"line":134,"context":279},"admin\\partials\\table-pixie-admin-display.php",{"file":285,"line":11,"context":279},{"file":285,"line":288,"context":279},24,{"file":285,"line":290,"context":279},60,{"file":292,"line":293,"context":279},"admin\\partials\\table-pixie-admin-edit-tmpl.php",37,{"file":292,"line":295,"context":279},38,{"file":162,"line":32,"context":279},[],[299,321,341,354,368,402,411],{"entryPoint":300,"graph":301,"unsanitizedCount":263,"severity":320},"ajax_records (admin\\class-table-pixie-admin-edit.php:785)",{"nodes":302,"edges":317},[303,308,312],{"id":304,"type":305,"label":306,"file":155,"line":307},"n0","source","$_REQUEST (x4)",899,{"id":309,"type":310,"label":311,"file":155,"line":307},"n1","transform","→ _ajax_return()",{"id":313,"type":314,"label":315,"file":155,"line":281,"wp_function":316},"n2","sink","echo() [XSS]","echo",[318,319],{"from":304,"to":309,"sanitized":249},{"from":309,"to":313,"sanitized":249},"medium",{"entryPoint":322,"graph":323,"unsanitizedCount":263,"severity":320},"\u003Cclass-table-pixie-admin-edit> (admin\\class-table-pixie-admin-edit.php:0)",{"nodes":324,"edges":336},[325,328,331,332,334],{"id":304,"type":305,"label":326,"file":155,"line":327},"$_REQUEST",799,{"id":309,"type":314,"label":329,"file":155,"line":112,"wp_function":330},"update_option() [Settings Manipulation]","update_option",{"id":313,"type":305,"label":306,"file":155,"line":307},{"id":333,"type":310,"label":311,"file":155,"line":307},"n3",{"id":335,"type":314,"label":315,"file":155,"line":281,"wp_function":316},"n4",[337,339,340],{"from":304,"to":309,"sanitized":338},true,{"from":313,"to":333,"sanitized":249},{"from":333,"to":335,"sanitized":249},{"entryPoint":342,"graph":343,"unsanitizedCount":353,"severity":320},"process_action (includes\\class-table-pixie-list-table.php:403)",{"nodes":344,"edges":351},[345,348],{"id":304,"type":305,"label":346,"file":162,"line":347},"$_SERVER['REQUEST_URI']",428,{"id":309,"type":314,"label":349,"file":162,"line":347,"wp_function":350},"wp_redirect() [Open Redirect]","wp_redirect",[352],{"from":304,"to":309,"sanitized":249},1,{"entryPoint":355,"graph":356,"unsanitizedCount":13,"severity":367},"\u003Cclass-table-pixie-admin> (admin\\class-table-pixie-admin.php:0)",{"nodes":357,"edges":365},[358,361],{"id":304,"type":305,"label":359,"file":158,"line":360},"$_REQUEST (x2)",550,{"id":309,"type":314,"label":362,"file":158,"line":363,"wp_function":364},"get_row() [SQLi]",781,"get_row",[366],{"from":304,"to":309,"sanitized":338},"low",{"entryPoint":369,"graph":370,"unsanitizedCount":13,"severity":367},"\u003Ctable-pixie-admin-display> (admin\\partials\\table-pixie-admin-display.php:0)",{"nodes":371,"edges":396},[372,375,376,378,379,382,384,388,390,394],{"id":304,"type":305,"label":373,"file":285,"line":374},"$_REQUEST['_table_pixie_nonce']",33,{"id":309,"type":314,"label":315,"file":285,"line":374,"wp_function":316},{"id":313,"type":305,"label":377,"file":285,"line":295},"$_REQUEST['blog_id']",{"id":333,"type":314,"label":315,"file":285,"line":295,"wp_function":316},{"id":335,"type":305,"label":380,"file":285,"line":381},"$_REQUEST['table']",43,{"id":383,"type":314,"label":315,"file":285,"line":381,"wp_function":316},"n5",{"id":385,"type":305,"label":386,"file":285,"line":387},"n6","$_REQUEST['record_type']",48,{"id":389,"type":314,"label":315,"file":285,"line":387,"wp_function":316},"n7",{"id":391,"type":305,"label":392,"file":285,"line":393},"n8","$_REQUEST['page']",53,{"id":395,"type":314,"label":315,"file":285,"line":393,"wp_function":316},"n9",[397,398,399,400,401],{"from":304,"to":309,"sanitized":338},{"from":313,"to":333,"sanitized":338},{"from":335,"to":383,"sanitized":338},{"from":385,"to":389,"sanitized":338},{"from":391,"to":395,"sanitized":338},{"entryPoint":403,"graph":404,"unsanitizedCount":13,"severity":367},"prepare_items (includes\\class-table-pixie-list-table.php:435)",{"nodes":405,"edges":409},[406,408],{"id":304,"type":305,"label":346,"file":162,"line":407},537,{"id":309,"type":314,"label":349,"file":162,"line":407,"wp_function":350},[410],{"from":304,"to":309,"sanitized":338},{"entryPoint":412,"graph":413,"unsanitizedCount":13,"severity":367},"\u003Cclass-table-pixie-list-table> (includes\\class-table-pixie-list-table.php:0)",{"nodes":414,"edges":418},[415,417],{"id":304,"type":305,"label":416,"file":162,"line":347},"$_SERVER['REQUEST_URI'] (x2)",{"id":309,"type":314,"label":349,"file":162,"line":347,"wp_function":350},[419],{"from":304,"to":309,"sanitized":338},{"summary":421,"deductions":422},"The wp-table-pixie plugin v1.3.1 exhibits a mixed security posture. On the positive side, it demonstrates good practices by utilizing prepared statements for all SQL queries and properly escaping a high percentage of its outputs. The absence of file operations, external HTTP requests, and known historical vulnerabilities also contributes to a relatively stable foundation. However, significant security concerns arise from its attack surface. The presence of four AJAX handlers without any authentication or capability checks represents a critical weakness, potentially allowing unauthorized users to trigger plugin functionalities. Furthermore, the use of the `unserialize` function, especially in conjunction with data processed from external sources without proper sanitization, poses a risk of remote code execution or denial of service vulnerabilities. While taint analysis did not reveal critical or high severity issues, the identified flows with unsanitized paths, combined with the `unserialize` function and unprotected AJAX endpoints, suggest that these could be potential vectors for exploitation.",[423,425,428,430],{"reason":424,"points":154},"Unprotected AJAX handlers",{"reason":426,"points":427},"Use of unserialize function",8,{"reason":429,"points":272},"Flows with unsanitized paths",{"reason":431,"points":432},"Missing capability checks on AJAX",7,"2026-03-16T22:55:52.434Z",{"wat":435,"direct":448},{"assetPaths":436,"generatorPatterns":441,"scriptPaths":442,"versionParams":443},[437,438,439,440],"\u002Fwp-content\u002Fplugins\u002Fwp-table-pixie\u002Fadmin\u002Fbootstrap\u002Fcss\u002Fbootstrap.css","\u002Fwp-content\u002Fplugins\u002Fwp-table-pixie\u002Fadmin\u002Fcss\u002Ftable-pixie-admin-edit.css","\u002Fwp-content\u002Fplugins\u002Fwp-table-pixie\u002Fadmin\u002Fbootstrap\u002Fjs\u002Fbootstrap.js","\u002Fwp-content\u002Fplugins\u002Fwp-table-pixie\u002Fadmin\u002Fjs\u002Ftable-pixie-admin-edit.js",[],[439,440],[444,445,446,447],"wp-table-pixie\u002Fadmin\u002Fbootstrap\u002Fcss\u002Fbootstrap.css?ver=","wp-table-pixie\u002Fadmin\u002Fcss\u002Ftable-pixie-admin-edit.css?ver=","wp-table-pixie\u002Fadmin\u002Fbootstrap\u002Fjs\u002Fbootstrap.js?ver=","wp-table-pixie\u002Fadmin\u002Fjs\u002Ftable-pixie-admin-edit.js?ver=",{"cssClasses":449,"htmlComments":451,"htmlAttributes":452,"restEndpoints":454,"jsGlobals":455,"shortcodeOutput":457},[450],"delete-protected-tog",[],[453],"TablePixieAdminEdit.showEdit( ",[],[456],"TablePixieAdminEdit",[]]