[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fv6IafEAv9-NBXNvsTzAzC8vKQnTsbPDs0ejUvdLx3bE":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":21,"download_link":22,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":25,"vulnerabilities":26,"developer":27,"crawl_stats":24,"alternatives":32,"analysis":126,"fingerprints":176},"post-raw-viewer","Post Raw Viewer","1.0.0","preja","https:\u002F\u002Fprofiles.wordpress.org\u002Fpreja\u002F","\u003Cp>Display post fields, and its metadata  as is in data base,  associated with any given post. Display post fields, meta keys and  meta values inside of a post meta box.\u003C\u002Fp>\n","Peer inside your post meta and post fields",0,851,"2020-07-18T11:42:00.000Z","5.0.25","3.1","",[18,19,20],"post-fields","post-meta","tools","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fpost-raw-viewer\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpost-raw-viewer.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":28,"total_installs":11,"avg_security_score":23,"avg_patch_time_days":29,"trust_score":30,"computed_at":31},1,30,84,"2026-04-03T19:20:55.461Z",[33,50,69,89,104],{"slug":34,"name":35,"version":36,"author":37,"author_profile":38,"description":39,"short_description":40,"active_installs":41,"downloaded":42,"rating":43,"num_ratings":44,"last_updated":45,"tested_up_to":46,"requires_at_least":15,"requires_php":16,"tags":47,"homepage":48,"download_link":49,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":25},"post-meta-inspector","Post Meta Inspector","1.1.1","Automattic","https:\u002F\u002Fprofiles.wordpress.org\u002Fautomattic\u002F","\u003Cp>A quick and easy way to see post meta associated with any given post. When activated, this plugin prints your post meta keys and values inside of a post meta box.\u003C\u002Fp>\n\u003Cp>Originally developed for \u003Ca href=\"http:\u002F\u002Fvip.wordpress.com\u002F\" rel=\"nofollow ugc\">WordPress.com VIP\u003C\u002Fa>-hosted clients, we thought it would be useful for development environments, etc. too. Feel free to \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FAutomattic\u002FPost-Meta-Inspector\" rel=\"nofollow ugc\">fork the plugin in Github\u003C\u002Fa> and pull requests are always welcome. Hit us with feedback, questions, bug reports, and feature requests in the forums.\u003C\u002Fp>\n","Peer inside your post meta",3000,135781,96,10,"2016-07-31T13:37:00.000Z","4.8.28",[19,20],"http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fpost-meta-inspector\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpost-meta-inspector.1.1.1.zip",{"slug":51,"name":52,"version":53,"author":54,"author_profile":55,"description":56,"short_description":57,"active_installs":58,"downloaded":59,"rating":11,"num_ratings":11,"last_updated":60,"tested_up_to":61,"requires_at_least":62,"requires_php":16,"tags":63,"homepage":67,"download_link":68,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":25},"easy-custom-fields","Easy Custom Fields","0.6","Thorsten Ott","https:\u002F\u002Fprofiles.wordpress.org\u002Ftott\u002F","\u003Cp>Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>simply generate post boxes with multiple fields \u002F groups\u003C\u002Fli>\n\u003Cli>easily validate\u002Fsanitize input and output data\u003C\u002Fli>\n\u003Cli>easy access to field data via $easy_cf->field_id->get() or $easy_cf->field_id->get( NULL, $raw=true );\u003C\u002Fli>\n\u003Cli>get error messages for validation failures via admin notices\u003C\u002Fli>\n\u003Cli>custom post type aware\u003C\u002Fli>\n\u003Cli>extendable to your needs by extending Easy_CF_Field and Easy_CF_Validator classes (see advanced usage)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>As this script is mainly meant as basis for developers it needs minor coding skills to add this functionality\u003Cbr \u002F>\nto your theme.\u003C\u002Fp>\n\u003Cp>In order to make use of this class simply initialize it from the functions.php file of your theme as described below.\u003C\u002Fp>\n\u003Ch4>Simple Usage\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>require_once( WP_PLUGIN_DIR . '\u002Feasy-custom-fields\u002Feasy-custom-fields.php' );\n$field_data = array (\n    'testgroup' => array (              \u002F\u002F unique group id\n        'fields' => array(              \u002F\u002F array \"fields\" with field definitions\n            'field1'    => array(),     \u002F\u002F globally unique field id\n            'field2'    => array(),\n            'field3'    => array(),\n        ),\n    ),\n);\n$easy_cf = new Easy_CF($field_data);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Advanced Usage\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>require_once( WP_PLUGIN_DIR . '\u002Feasy-custom-fields\u002Feasy-custom-fields.php' );\n$field_data = array (\n    'testgroup' => array (\n        'fields' => array(\n            'field1'    => array(),\n            'field2'    => array(),\n            'field3'    => array(),\n        ),\n    ),\n    'advanced_testgroup' => array (                                     \u002F\u002F unique group id\n        'fields' => array(                                              \u002F\u002F array \"fields\" with field definitions \n            'advanced_field'    => array(                               \u002F\u002F globally unique field id\n                'label'         => 'Advanced Field Description',        \u002F\u002F Field Label\n                'hint'          => 'Long Advanced Field description',   \u002F\u002F A descriptive hint for the field\n                'type'          => 'textarea',                          \u002F\u002F Custom Field Type (see Ref: field_type)\n                'class'         => 'aclass',                            \u002F\u002F CSS Wrapper class for the field\n                'input_class'   => 'theEditor',                         \u002F\u002F CSS class for the input field\n                'error_msg'     => 'The Advanced Field is wrong' ),     \u002F\u002F Error message to show when validate fails\n                'validate'      => 'validatorname',                     \u002F\u002F Custom Validator (see Ref: validator)\n            'advanced_email' => array(\n                'label' => 'Email',\n                'hint' => 'Enter your email',\n                'validate' => 'email', )\n        ),\n        'title' => 'Product Description',   \u002F\u002F Group Title\n        'context' => 'advanced',            \u002F\u002F context as in https:\u002F\u002Fcodex.wordpress.org\u002FFunction_Reference\u002Fadd_meta_box\n        'pages' => array( 'post', 'page' ), \u002F\u002F pages as in https:\u002F\u002Fcodex.wordpress.org\u002FFunction_Reference\u002Fadd_meta_box\n    ),\n);\n\nif ( !class_exists( \"Easy_CF_Validator_Email\" ) ) {\n\n    class Easy_CF_Validator_Email extends Easy_CF_Validator {\n        public function get( $value='' ) {\n            return esc_attr( $value );\n        }\n\n        public function set( $value='' ) {\n            $value = esc_attr( trim( stripslashes( $value ) ) );\n            return $value;\n        }\n\n        public function validate( $value='' ) {\n            if ( empty( $value ) || is_email( $value ) ) \n                return true;\n            else\n                return false;\n        }\n    }\n}\n\nif ( !class_exists( \"Easy_CF_Field_Textarea\" ) ) {\n    class Easy_CF_Field_Textarea extends Easy_CF_Field {\n        public function print_form() {\n            $class = ( empty( $this->_field_data['class'] ) ) ? $this->_field_data['id'] . '_class' :  $this->_field_data['class'];\n            $input_class = ( empty( $this->_field_data['input_class'] ) ) ? $this->_field_data['id'] . '_input_class' :  $this->_field_data['input_class'];\n\n            $id = ( empty( $this->_field_data['id'] ) ) ? $this->_field_data['id'] :  $this->_field_data['id'];\n            $label = ( empty( $this->_field_data['label'] ) ) ? $this->_field_data['id'] :  $this->_field_data['label'];\n            $value = $this->get();\n            $hint = ( empty( $this->_field_data['hint'] ) ) ? '' :  '\u003Cp>\u003Cem>' . $this->_field_data['hint'] . '\u003C\u002Fem>\u003C\u002Fp>';\n\n            $label_format =\n                '\u003Cdiv class=\"%s\">'.\n                '\u003Cp>\u003Clabel for=\"%s\">\u003Cstrong>%s\u003C\u002Fstrong>\u003C\u002Flabel>\u003C\u002Fp>'.\n                '\u003Cp>\u003Ctextarea class=\"%s\" style=\"width: 100%%;\" type=\"text\" name=\"%s\">%s\u003C\u002Ftextarea>\u003C\u002Fp>'.\n                '%s'.\n                '\u003C\u002Fdiv>';\n            printf( $label_format, $class, $id, $label, $input_class, $id, $value, $hint );\n        }\n    }\n}\n\n$easy_cf = new Easy_CF($field_data);\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Note\u003C\u002Fh4>\n\u003Cp>If you’re not using auto_init then meta boxes need to be added individually using\u003Cbr \u002F>\nadd_meta_box( $group_id, $group_title, array( &$easy_cf, ‘meta_box_cb’ ), $page, $group_context );\u003Cbr \u002F>\nand the save methods need to be initialized after adding all meta boxes using\u003Cbr \u002F>\n$easy_cf->add_save_method();\u003C\u002Fp>\n","This is a set of extendable classes to allow easy handling of custom post fields.",60,9455,"2012-07-11T14:45:00.000Z","3.3.2","2.9.2",[64,65,19,66],"custom-fields","custom-post-fields","post_meta","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Feasy-custom-fields\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Feasy-custom-fields.zip",{"slug":70,"name":71,"version":72,"author":73,"author_profile":74,"description":75,"short_description":76,"active_installs":77,"downloaded":78,"rating":11,"num_ratings":11,"last_updated":79,"tested_up_to":80,"requires_at_least":81,"requires_php":82,"tags":83,"homepage":16,"download_link":87,"security_score":88,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":25},"postmeta-viewer","PostMeta Viewer – Custom Fields Inspector","1.0","wpwebguru","https:\u002F\u002Fprofiles.wordpress.org\u002Fwpwebguru\u002F","\u003Cp>\u003Cstrong>PostMeta Viewer\u003C\u002Fstrong> is an essential utility for WordPress developers who work with custom fields and post meta. Whether you’re using Advanced Custom Fields (ACF), Pods, Toolset, or custom-coded meta fields, this plugin provides a clean and developer-friendly interface to explore, search, and analyze post meta data across your site.\u003C\u002Fp>\n\u003Cp>It is designed strictly as a \u003Cstrong>read-only inspection tool\u003C\u002Fstrong>, making it safe for production environments.\u003C\u002Fp>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\n\u003Cp>\u003Cstrong>Complete Post Meta Overview\u003C\u002Fstrong>\u003Cbr \u002F>\nBrowse all posts with total custom field counts.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Detailed Meta Inspection\u003C\u002Fstrong>\u003Cbr \u002F>\nView all meta keys and values for any individual post.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Powerful Search & Filtering\u003C\u002Fstrong>\u003Cbr \u002F>\n– Search across post titles, content, meta keys, and meta values\u003Cbr \u002F>\n– Filter by post type, post status, and date range\u003Cbr \u002F>\n– Filter by specific meta key existence\u003Cbr \u002F>\n– Filter by meta value type (string, array, JSON, numeric, empty)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Post Edit Screen Meta Box\u003C\u002Fstrong>\u003Cbr \u002F>\nView custom fields directly inside the post edit screen.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Developer-Friendly Data Display\u003C\u002Fstrong>\u003Cbr \u002F>\nProper formatting for serialized, array, and JSON meta values.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Post Statistics\u003C\u002Fstrong>\u003Cbr \u002F>\nQuick insights into total posts and filtered results.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>\u003Cstrong>Responsive Admin UI\u003C\u002Fstrong>\u003Cbr \u002F>\nWorks smoothly across all screen sizes.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Ideal For\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>ACF Developers\u003C\u002Fstrong> – Debug and verify stored ACF field data  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Plugin Developers\u003C\u002Fstrong> – Inspect custom meta added by plugins  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Theme Developers\u003C\u002Fstrong> – Validate custom field implementations  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Site Debugging\u003C\u002Fstrong> – Identify and resolve metadata issues  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Migration Projects\u003C\u002Fstrong> – Analyze existing meta structures  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Learning WordPress\u003C\u002Fstrong> – Understand how post meta works internally\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Usage\u003C\u002Fh3>\n\u003Ch4>Getting Started\u003C\u002Fh4>\n\u003Col>\n\u003Cli>After activation, go to \u003Cstrong>PostMeta Viewer\u003C\u002Fstrong> (top-level menu)\u003C\u002Fli>\n\u003Cli>View a list of all posts along with their custom field counts\u003C\u002Fli>\n\u003Cli>Use search and filter options to narrow results\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>View Details\u003C\u002Fstrong> to inspect meta for a specific post\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Using Search & Filters\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Search Box\u003C\u002Fstrong> – Search across post titles, content, meta keys, and values  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Post Type Filter\u003C\u002Fstrong> – Filter posts, pages, or custom post types  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Meta Key Filter\u003C\u002Fstrong> – Filter by existing meta keys  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Date Range\u003C\u002Fstrong> – Filter posts by creation date  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Post Status\u003C\u002Fstrong> – Published, draft, pending, etc.  \u003C\u002Fli>\n\u003Cli>\u003Cstrong>Value Type Filter\u003C\u002Fstrong> – String, array, JSON, numeric, or empty  \u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>Apply Filters\u003C\u002Fstrong> to update results\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Viewing Meta Details\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Click \u003Cstrong>View Details\u003C\u002Fstrong> from the main list\u003C\u002Fli>\n\u003Cli>View a table of all meta keys and values\u003C\u002Fli>\n\u003Cli>Serialized and complex data is displayed in readable format\u003C\u002Fli>\n\u003Cli>Use \u003Cstrong>Back to List\u003C\u002Fstrong> to return\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Post Edit Screen Meta Box\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Edit any post or page\u003C\u002Fli>\n\u003Cli>Locate the \u003Cstrong>Custom Fields Inspector\u003C\u002Fstrong> meta box\u003C\u002Fli>\n\u003Cli>Instantly view all custom fields for that post\u003C\u002Fli>\n\u003Cli>Ideal for quick debugging during content editing\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>License\u003C\u002Fh3>\n\u003Cp>This plugin is licensed under the GPL v2 or later.\u003C\u002Fp>\n\u003Cp>This program is free software; you can redistribute it and\u002For modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or any later version.\u003C\u002Fp>\n\u003Cp>This program is distributed without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.\u003C\u002Fp>\n","A powerful debugging tool for WordPress developers to inspect and analyze post meta (custom fields) across posts, pages, and custom post types.",20,178,"2026-01-12T16:45:00.000Z","6.9.4","5.6","7.4",[84,64,85,86,19],"acf","debugging","developer-tools","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpostmeta-viewer.1.0.zip",100,{"slug":90,"name":91,"version":72,"author":92,"author_profile":93,"description":94,"short_description":95,"active_installs":11,"downloaded":96,"rating":11,"num_ratings":11,"last_updated":97,"tested_up_to":98,"requires_at_least":99,"requires_php":100,"tags":101,"homepage":16,"download_link":103,"security_score":23,"vuln_count":11,"unpatched_count":11,"last_vuln_date":24,"fetched_at":25},"post-meta-view-and-export","Post Meta View and Export","Matej Kravjar","https:\u002F\u002Fprofiles.wordpress.org\u002Fkravco\u002F","\u003Cp>Plugin adds section to post edit page in WordPress admin, where the post metadata are displayed in convenient table with the option to export the data into JSON format\u003C\u002Fp>\n","This plugin adds possibility to view and export post metadata for superadmins.",785,"2021-07-10T08:31:00.000Z","5.7.15","5.3","7.0",[102,19,20],"export","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fpost-meta-view-and-export.1.0.zip",{"slug":105,"name":106,"version":107,"author":108,"author_profile":109,"description":110,"short_description":111,"active_installs":112,"downloaded":113,"rating":58,"num_ratings":114,"last_updated":115,"tested_up_to":80,"requires_at_least":116,"requires_php":117,"tags":118,"homepage":122,"download_link":123,"security_score":124,"vuln_count":28,"unpatched_count":11,"last_vuln_date":125,"fetched_at":25},"hostinger","Hostinger Tools","3.0.59","Hostinger","https:\u002F\u002Fprofiles.wordpress.org\u002Fhostinger\u002F","\u003Cp>Hostinger Tools is an all-in-one plugin designed to streamline essential tasks for WordPress site administrators. This plugin offers a range of features to help you manage your site’s information, maintenance mode, security, and redirects effectively.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Features:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cem>Basic Info\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Displays the current WordPress version with automatic update checks.\u003C\u002Fli>\n\u003Cli>Shows the current PHP version with automatic update checks.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Maintenance Mode\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Easily enable or disable maintenance mode for your site.\u003C\u002Fli>\n\u003Cli>Provide a URL to bypass maintenance mode for selected users.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Security\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Enable or disable XML-RPC requests to enhance your site’s security.\u003C\u002Fli>\n\u003Cli>Enable or disable Authorize application page to enhance your site’s security.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>Redirects\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Force all URLs to use HTTPS for secure browsing.\u003C\u002Fli>\n\u003Cli>Force all URLs to use WWW to ensure consistency in site access.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cem>LLMs.txt Generation\u003C\u002Fem>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Automatically generate a structured LLMs.txt file in Markdown format.\u003C\u002Fli>\n\u003Cli>Include website title, description, posts, pages, and products (if WooCommerce is active).\u003C\u002Fli>\n\u003Cli>Keep the file updated when content changes or new content is published.\u003C\u002Fli>\n\u003Cli>Help AI-powered tools better understand and interact with your website content.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Hostinger Tools is the new version of the previous Hostinger plugin, offering an updated and enhanced experience.\u003Cbr \u002F>\nThe Onboarding assistant and the Learning section previously included in this plugin were moved to the separate plugin Hostinger Easy Onboarding.\u003C\u002Fp>\n","Simplified WordPress management. Manage site info, maintenance, security, & redirects.",3000000,16730722,25,"2026-03-03T11:48:00.000Z","5.5","8.1",[105,119,120,121,20],"https","maintenance","security","https:\u002F\u002Fhostinger.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fhostinger.3.0.59.zip",99,"2024-01-05 00:00:00",{"attackSurface":127,"codeSignals":147,"taintFlows":163,"riskAssessment":164,"analyzedAt":175},{"hooks":128,"ajaxHandlers":143,"restRoutes":144,"shortcodes":145,"cronEvents":146,"entryPointCount":11,"unprotectedCount":11},[129,135,139],{"type":130,"name":131,"callback":132,"file":133,"line":134},"action","init","action_init","post-raw-viewer.php",58,{"type":130,"name":136,"callback":137,"file":133,"line":138},"add_meta_boxes","action_add_meta_boxes",59,{"type":130,"name":140,"callback":141,"file":133,"line":142},"plugins_loaded","Post_Raw_Viewer",119,[],[],[],[],{"dangerousFunctions":148,"sqlUsage":149,"outputEscaping":151,"fileOperations":11,"externalRequests":11,"nonceChecks":11,"capabilityChecks":11,"bundledLibraries":162},[],{"prepared":11,"raw":11,"locations":150},[],{"escaped":152,"rawEcho":153,"locations":154},4,2,[155,159],{"file":156,"line":157,"context":158},"templates\\postdata.php",14,"raw output",{"file":160,"line":161,"context":158},"templates\\postmeta.php",8,[],[],{"summary":165,"deductions":166},"The plugin \"post-raw-viewer\" v1.0.0 demonstrates a generally good security posture based on the provided static analysis and vulnerability history. The absence of any entry points like AJAX handlers, REST API routes, shortcodes, or cron events significantly reduces its attack surface. Furthermore, the code shows no dangerous functions, file operations, external HTTP requests, or bundled libraries, and all SQL queries utilize prepared statements, which are excellent security practices.\n\nHowever, there are a few areas for concern. The lack of nonce checks and capability checks, combined with a notable percentage of output that is not properly escaped (33%), presents a potential risk. While the taint analysis shows no flows with unsanitized paths, the unescaped output could potentially lead to cross-site scripting (XSS) vulnerabilities if user-controlled data is rendered directly without proper sanitization. The vulnerability history being completely clean is a positive sign, suggesting a history of secure development, but it doesn't negate the potential risks identified in the code analysis.\n\nIn conclusion, \"post-raw-viewer\" v1.0.0 is strong in its foundational security practices, particularly regarding SQL and its limited attack surface. The primary weaknesses lie in the potential for XSS due to unescaped output and the absence of essential security checks like nonces and capability checks. These are important considerations for a comprehensive security assessment, even with a clean vulnerability history.",[167,170,173],{"reason":168,"points":169},"Output not properly escaped",7,{"reason":171,"points":172},"Missing nonce checks",5,{"reason":174,"points":172},"Missing capability checks","2026-03-17T06:30:20.219Z",{"wat":177,"direct":186},{"assetPaths":178,"generatorPatterns":183,"scriptPaths":184,"versionParams":185},[179,180,181,182],"\u002Fwp-content\u002Fplugins\u002Fpost-raw-viewer\u002Fmetaprovider\u002FPRVP_MetaProvider.php","\u002Fwp-content\u002Fplugins\u002Fpost-raw-viewer\u002Fmetaprovider\u002FPRVP_PostMeta.php","\u002Fwp-content\u002Fplugins\u002Fpost-raw-viewer\u002FPRVP_View.php","\u002Fwp-content\u002Fplugins\u002Fpost-raw-viewer\u002Ftemplates\u002Fpostmeta.php",[],[],[],{"cssClasses":187,"htmlComments":188,"htmlAttributes":189,"restEndpoints":190,"jsGlobals":191,"shortcodeOutput":192},[],[],[],[],[],[]]