[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fLIn0MwC_AkXskiILTlUYH44-QskWrjGIwVdA6IAl92A":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":35,"analysis":145,"fingerprints":247},"wp-snap","WP-SNAP!","0.9.4","nateomedia","https:\u002F\u002Fprofiles.wordpress.org\u002Fnateomedia\u002F","\u003Cp>WP-SNAP! (WordPress System for Navigating Alphabetized Posts) creates an alphabetical listing of post titles on a Category or Page template file. Navigation through the listings WP-SNAP! generates is accomplished using the alphabet itself. (For example, if a site visitor clicked on the letter D, any post titles that began with that letter would be showcased.) WP-SNAP! will work on any WordPress 2.5 or higher site, but is particularly useful managing glossaries, indexes, reviews, or directories.\u003C\u002Fp>\n\u003Cp>WP-SNAP! offers three different navigational styles and integration with both custom permalinks and the WordPress loop. Plugin options can be managed both site-wide and on the template itself with results either restricted to one category or broadened to include child categories as well. The clever web developer should have no problem seamlessly integrating WP-SNAP! into their latest project. Options have also been added to allow the customization of css class names and the appearance of html mark-up.\u003C\u002Fp>\n","WP-SNAP! (WordPress System for Navigating Alphabetized Posts) creates an user interface for navigating alphabetized post titles.",90,23822,0,"2010-08-06T02:15:00.000Z","3.0.5","2.5","",[19,20,21,22,23],"alphabetical","glossary","navigation","page","post","http:\u002F\u002Fwww.nateomedia.com\u002Fwares\u002Fdownloads\u002Fwordpress\u002Fwp-snap","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-snap.0.9.4.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":31,"total_installs":11,"avg_security_score":26,"avg_patch_time_days":32,"trust_score":33,"computed_at":34},1,30,84,"2026-04-04T11:38:00.093Z",[36,56,79,102,122],{"slug":37,"name":38,"version":39,"author":40,"author_profile":41,"description":42,"short_description":43,"active_installs":44,"downloaded":45,"rating":11,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":17,"tags":50,"homepage":54,"download_link":55,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"posts-list","Posts List","0.4.2","wokamoto","https:\u002F\u002Fprofiles.wordpress.org\u002Fwokamoto\u002F","\u003Cp>Adds a posts (or pages) list of your blog pages (or posts) by entering the shortcode [posts-list].\u003C\u002Fp>\n\u003Cp>First example shows how to add the posts list in its simplest form.\u003Cbr \u002F>\n    [posts-list]\u003C\u002Fp>\n\u003Cp>Example shortcode will add a pages list to a page.\u003Cbr \u002F>\n    [posts-list type=page]\u003C\u002Fp>\n\u003Cp>Example shortcode will add a posts list to a page displaying a year 2011 and 2010.\u003Cbr \u002F>\n    [posts-list year=”2011,2010″]\u003C\u002Fp>\n\u003Cp>Example shortcode will add a posts list to a page displaying a category id 10 and 11.\u003Cbr \u002F>\n    [posts-list category=”10,11″]\u003C\u002Fp>\n\u003Cp>Example display ONLY the title.\u003Cbr \u002F>\n    [posts-list date_format=FALSE]\u003C\u002Fp>\n","Adds a posts (or pages) list of your blog pages (or posts) by entering the shortcode [posts-list].",7000,14257,2,"2013-06-06T06:28:00.000Z","3.2.1","3.0",[51,52,21,22,53],"archive","list","posts","http:\u002F\u002Fwppluginsj.sourceforge.jp\u002Fposts-list\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fposts-list.0.4.2.zip",{"slug":57,"name":58,"version":59,"author":60,"author_profile":61,"description":62,"short_description":63,"active_installs":64,"downloaded":65,"rating":66,"num_ratings":31,"last_updated":67,"tested_up_to":68,"requires_at_least":69,"requires_php":70,"tags":71,"homepage":76,"download_link":77,"security_score":78,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"styles-for-wp-pagenavi-addon","Styles For WP Pagenavi Addon – Better design for post pagination","1.2.4","Essential Plugin","https:\u002F\u002Fprofiles.wordpress.org\u002Fessentialplugin\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fwww.essentialplugin.com\u002Fwordpress-plugin\u002Fstyles-wp-pagenavi-addon\u002F?utm_source=WP&utm_medium=Pagenavi&utm_campaign=Read-Me\" rel=\"nofollow ugc\">View here for more detail\u003C\u002Fa> | \u003Ca href=\"https:\u002F\u002Fwww.essentialplugin.com\u002Fpricing\u002F?utm_source=WP&utm_medium=Pagenavi&utm_campaign=Read-Me\" rel=\"nofollow ugc\">Annual or Lifetime Bundle Deal\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>Want to replace the old \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">←\u003C\u002Fspan> Older posts | Newer posts \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> links with some page links?\u003C\u002Fp>\n\u003Cp>This plugin adds a more styling options to Wp-PageNavi WordPress plugin OR  the_posts_pagination(); WordPress navigation function.\u003C\u002Fp>\n\u003Cp>To Use this plugin you must have \u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-pagenavi\u002F\" rel=\"ugc\">Wp Pagenavi\u003C\u002Fa>  plugin installed on your wordpress blog\u003C\u002Fp>\n\u003Cp>\u003Cstrong>OR\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>If you are not using WP Pagenavi plugin\u003C\u002Fstrong> then use \u003Ccode>\u003C?php the_posts_pagination(); ?>\u003C\u002Fcode> WordPress navigation function and our plugin will help you to give a better design to your post navigation or post pagination.\u003C\u002Fp>\n\u003Ch4>Features include\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>5+ styles\u003C\u002Fli>\n\u003Cli>Colors change options \u003C\u002Fli>\n\u003Cli>Use it with Wp-PageNavi WordPress plugin or \u003Ccode>\u003C?php the_posts_pagination(); ?>\u003C\u002Fcode> WordPress navigation function and our plugin will help you to give a better design for post navigation or post pagination.\u003C\u002Fli>\n\u003C\u002Ful>\n","Adds a more styling options to Wp-PageNavi WordPress plugin OR  the_posts_pagination() WordPress navigation function.",1000,33648,40,"2026-02-20T19:20:00.000Z","6.8.5","4.0","7.4",[21,72,73,74,75],"pagenavi-style","pagination","post-navigation","wp-pagenavi-styling","https:\u002F\u002Fwww.essentialplugin.com\u002Fwordpress-plugin\u002Fstyles-wp-pagenavi-addon\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fstyles-for-wp-pagenavi-addon.1.2.4.zip",100,{"slug":80,"name":81,"version":82,"author":83,"author_profile":84,"description":85,"short_description":86,"active_installs":87,"downloaded":88,"rating":89,"num_ratings":90,"last_updated":91,"tested_up_to":92,"requires_at_least":69,"requires_php":93,"tags":94,"homepage":100,"download_link":101,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"intelliwidget-per-page-featured-posts-and-menus","IntelliWidget Per Page Custom Menus and Dynamic Content","2.3.9.2","lilaeamedia","https:\u002F\u002Fprofiles.wordpress.org\u002Flilaeamedia\u002F","\u003Cp>IntelliWidget is a versatile WordPress plugin that makes your dynamic sidebars “page-specific.” It allows you to create custom “Profiles” for any page or post that can be used where the default sidebar widget would normally appear. You set the rules for each profile to display custom widget content any way you want.\u003C\u002Fp>\n\u003Cp>Use the shortcode option to put custom menus, featured posts and other dynamic content anywhere on your site.\u003C\u002Fp>\n\u003Cp>Because it is generated using active titles and permalinks, your sidebar content is always current with the latest versions.\u003C\u002Fp>\n\u003Cp>Select posts by title, date, category, tag, and many other ways. Combine with custom post types to create unlimited custom sidebar content. Combine with your favorite jQuery Slider plugin to display animated slideshows.\u003C\u002Fp>\n\u003Cp>Reuse the settings from existing profiles to save hours of setup time.\u003C\u002Fp>\n\u003Cp>With Per Page Menus and Featured Posts IntelliWidget you can add just a few widget areas and create unlimited per page custom menus and featured posts and other custom text.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"http:\u002F\u002Fcoderisk.com\u002Fwp\u002Fplugin\u002Fintelliwidget-per-page-featured-posts-and-menus\u002FRIPS-sL_vZYjKfO\" rel=\"nofollow ugc\">\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Tabbed Profile Panels\u003C\u002Fh4>\n\u003Cp>All of the IntelliWidget Profile settings panels are combined into a single tab menu on the Edit Post admin pages. You can hover over the tab to see the IntelliWidget the Profile replaces.\u003C\u002Fp>\n\u003Ch4>Intuitive Settings Panels\u003C\u002Fh4>\n\u003Cp>Settings have been organized into collapsible sections so the settings you use most can be found in one place.\u003C\u002Fp>\n\u003Cp>Hover over any input label and more details describing the input will appear.\u003C\u002Fp>\n\u003Cp>General Settings include a new “IntelliWidget Type,” which controls whether a normal custom menu, featured post list, WordPress Navigation Menu, or taxonomy menu is displayed. Section title, unique id and classes fields are grouped together for easy access.\u003C\u002Fp>\n\u003Cp>We have moved the “Template,” “Post Types,” “Specific Posts,” and “Terms” menus to a “Post Selection” new panel to keep the most-used settings together in one place. Here you will also find the Post Custom Data Field Date condition checkboxes.\u003C\u002Fp>\n\u003Ch4>Select Posts Using Any Taxonomy\u003C\u002Fh4>\n\u003Cp>You can select posts based on Tags and Custom Taxonomies as well as Categories. You can also use multiple terms in the same profile.\u003C\u002Fp>\n\u003Cp>You can control the way posts are sorted, post sort order, number posts shown, excerpt length, HTML filters, image size and image alignment.\u003C\u002Fp>\n\u003Cp>You can add a block of text or HTML and control where it appears relative to the custom menus and featured posts. You can even use any shortcodes your theme supports.\u003C\u002Fp>\n\u003Ch4>Works with the Customizer\u003C\u002Fh4>\n\u003Cp>Test adjustments to your custom menus and featured posts in real time using the Customizer. See how each setting makes any dynamic sidebar content aware by viewing actual pages and posts.\u003C\u002Fp>\n\u003Ch4>Written for stability and performance\u003C\u002Fh4>\n\u003Cp>Database queries are optimized and cached. Admin functions are only loaded on demand. Long menus are loaded dynamically to reduce admin page size.\u003C\u002Fp>\n\u003Ch4>Actions and Filters\u003C\u002Fh4>\n\u003Cp>We’ve made IntelliWidget extensible by utilizing action and filter hooks at key points of the execution.\u003C\u002Fp>\n\u003Ch4>Introducing IntelliWidget Pro\u003C\u002Fh4>\n\u003Cp>Now you can have custom IntelliWidgets on any Archive page! Choose the criteria and customize the Profiles for Blog pages, Categories, Tags and more.\u003Cbr \u002F>\nSee http:\u002F\u002Fwww.lilaeamedia.com\u002Fplugins\u002Fintelliwidget-pro for more information.\u003C\u002Fp>\n\u003Ch4>Coming Soon to Pro: IntelliWidget Template Configurator\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Create your own custom templates right from the IntelliWidget admin.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>More Reasons to use IntelliWidget to add Custom Menus, Featured Posts and Dynamic Sidebar Content\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Powerful and extensible, does the work of multiple plugins\u003C\u002Fli>\n\u003Cli>No new dynamic sidebars necessary – uses the dynamic sidebars you already have\u003C\u002Fli>\n\u003Cli>Displays page-specific content aware custom menus and featured posts and other dynamic content\u003C\u002Fli>\n\u003Cli>If settings are not set up on a page or post it will default to site-wide widget settings\u003C\u002Fli>\n\u003Cli>Supports Custom Post Types and Custom Navigation Menus\u003C\u002Fli>\n\u003Cli>Doubles as a Text Widget customizable to any page\u003C\u002Fli>\n\u003Cli>Works with the theme customizer\u003C\u002Fli>\n\u003Cli>Use as many different custom menus or featured posts on a single page as you wish\u003C\u002Fli>\n\u003Cli>Saves hours setting up and maintaining your WordPress site\u003C\u002Fli>\n\u003Cli>Set up one page and reuse settings on other pages\u003C\u002Fli>\n\u003Cli>No new database tables\u003C\u002Fli>\n\u003Cli>Lets you keep using all your other widgets\u003C\u002Fli>\n\u003Cli>Shows or hides dynamic sidebar content by date and time\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>IntelliWidget is flexible and versatile. Please read the documentation to see more ideas how to use it to its full potential.\u003C\u002Fp>\n\u003Cp>Spanish translation courtesy of Andrew Kurtis at WebHostingHub.com.\u003C\u002Fp>\n\u003Ch3>Getting Started\u003C\u002Fh3>\n\u003Cp>Here is a very simple example that illustrates the basics: a Parent Profile replaced by a Child Profile.\u003C\u002Fp>\n\u003Col>\n\u003Cli>\n\u003Cp>Start by dragging the widget labeled “IntelliWidget” over to one of your existing sidebars. The new IntelliWidget panel will open revealing the various settings groups. This is now the “Parent Profile” for this IntelliWidget instance.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Open the “Post Selection” panel by clicking the bar. You will see a multi-select menu containing all of your pages and posts.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Hold down the option key (“Command” on Mac) and select a few of your pages and click the “Save” button at the bottom of the widget panel.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Load a page from your site in a browser that uses the sidebar you just modified. You will see a custom menu of the pages you added in the previous step. This is the default behavior: a custom menu of page links sorted by title.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>In the WordPress Admin, go to “Pages” and select the page you just viewed. You will now see a new meta box labeled “IntelliWidget Profiles.”\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Click “+ Add New Profile.” A tabbed panel will appear containing settings almost exactly like the ones in the Widgets Admin.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Click the “Parent Profile to Replace” dropdown menu and you will see an option for the sidebar where you added the IntelliWidget Parent Profile. Select this option.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Open the “Additional Text\u002FHTML” Panel by clicking the bar.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Select “This text only (no posts)” option in the “Display” dropdown menu.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Type some text in the “Custom Text\u002FHTML” textarea. Click “Save Settings.”\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Now load the page you just edited in your browser. Instead of the custom menu from before, you now see the new title and the custom text you typed. If you go to any other page that uses the same sidebar, you will see the custom menu from before.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Finally, you can select this page in the “Use Profiles From” menu from any other page to re-use these settings. This is useful if you have a sub-set of pages that need to re-use the same dynamic sidebar content.\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>Checking “Only Future Posts” excludes posts with a Start Date \u003C current date\u002Ftime, regardless of Expire Date. (Formerly “Only Future Events.”)\u003Cbr \u002F>\nChecking “Exclude Future Posts” hides posts with a Start Date > current date\u002Ftime, regardless of Expire Date. (Formerly “Only Active Events.”)\u003Cbr \u002F>\nThe “Exclude Expired Posts” behavior has not changed.\u003C\u002Fp>\n\u003Ch3>Documentation\u003C\u002Fh3>\n\u003Cp>Can be found at http:\u002F\u002Fwww.lilaeamedia.com\u002Fplugins\u002Fintelliwidget\u002F\u003C\u002Fp>\n\u003Cp>Interested in translating? Contact us at http:\u002F\u002Fwww.lilaeamedia.com\u002Fabout\u002Fcontact\u002F\u003C\u002Fp>\n","Display custom menus, featured posts, custom post types and other dynamic content on a per page, per post or site-wide basis.",700,80441,94,20,"2020-02-10T15:11:00.000Z","5.2.24","5.6",[95,96,97,98,99],"content-aware","featured-post","navigation-menu","page-menu","vertical-menu","http:\u002F\u002Fwww.lilaeamedia.com\u002Fplugins\u002Fintelliwidget","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fintelliwidget-per-page-featured-posts-and-menus.2.3.9.2.zip",{"slug":103,"name":104,"version":105,"author":106,"author_profile":107,"description":108,"short_description":109,"active_installs":78,"downloaded":110,"rating":89,"num_ratings":111,"last_updated":112,"tested_up_to":113,"requires_at_least":114,"requires_php":17,"tags":115,"homepage":120,"download_link":121,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"admin-quick-jump","Admin Quick Jump","1.4","jamesckemp","https:\u002F\u002Fprofiles.wordpress.org\u002Fjamesckemp\u002F","\u003Cp>Admin Quick Jump is a very simple plugin that adds a dropdown list to the admin edit-post area. The list contains posts of the same post_type as the one you are currently editing, and allows you to quickly jump between other draft and published posts. This is much less time-consuming than navigating back to the posts list and choosing the post you need.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Perfect for quickly jumping between editing posts, pages and custom posts.\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>\u003Cstrong>No plugin settings page required, simply install and activate the plugin.\u003C\u002Fstrong>\u003C\u002Fli>\n\u003C\u002Ful>\n","Admin Quick Jump adds a dropdown list to the admin edit-post area. This allows you to quickly jump to other draft and published posts\u002Fpages.",6919,6,"2013-12-03T15:30:00.000Z","3.5.2","2.0.2",[116,117,118,21,119],"admin","edit-page","edit-post","quick-jump","http:\u002F\u002Fwordpress.org\u002Fextend\u002Fplugins\u002Fadmin-quick-jump\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fadmin-quick-jump.zip",{"slug":123,"name":124,"version":125,"author":126,"author_profile":127,"description":128,"short_description":129,"active_installs":78,"downloaded":130,"rating":131,"num_ratings":132,"last_updated":133,"tested_up_to":134,"requires_at_least":135,"requires_php":17,"tags":136,"homepage":142,"download_link":143,"security_score":144,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"wp-different-navigation-on-each-page-and-post","WP Different Navigation on Each Page And Post","1.1","Rajesh Kumawat","https:\u002F\u002Fprofiles.wordpress.org\u002Frajeshkumawat78\u002F","\u003Cp>This plugin are display different-different navigation on each page and post.You Can easily setup different navigation or menu on pages and single posts. please follow these steps:\u003C\u002Fp>\n\u003Cp>Step 1: First click on “WP Different Navigation Box Settings” sub menu in settings menu in wordpress admin section. Then select Posttypes. You want to display “Different Navigation Box” MetaBox on Posttypes.\u003C\u002Fp>\n\u003Cp>Step 2: Select Menu in “Different Navigation Box” Metabox for Current Page\u002FPost Display Menu.\u003C\u002Fp>\n\u003Cp>Step 3: “WP Different Navigation Widget” put this widget you want display menu in widget area. and enter widget title and select default menu and click on save button.\u003C\u002Fp>\n\u003Cp>Easy to use Different Menu on the page or post by shortcode “\u003Cstrong>[wpdnepp_menu]\u003C\u002Fstrong>” Or Use This Code in Page Template \u003Cstrong>\u003Ccode>\u003C?php echo do_shortcode('[wpdnepp_menu]'); ?>\u003C\u002Fcode>\u003C\u002Fstrong>.\u003C\u002Fp>\n","This plugin are display different-different navigation on each page and post.You Can easily setup different navigation or menu on pages and single pos &hellip;",9061,88,7,"2024-06-21T07:14:00.000Z","6.0.11","3.0.1",[137,138,139,140,141],"custom-navigation","different-menu","different-navigation-page","different-different-menu-on-each-page","different-different-menu-on-each-post","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-different-navigation-on-each-page-and-post\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-different-navigation-on-each-page-and-post.zip",92,{"attackSurface":146,"codeSignals":171,"taintFlows":202,"riskAssessment":240,"analyzedAt":246},{"hooks":147,"ajaxHandlers":167,"restRoutes":168,"shortcodes":169,"cronEvents":170,"entryPointCount":13,"unprotectedCount":13},[148,154,158,162],{"type":149,"name":150,"callback":151,"file":152,"line":153},"action","admin_menu","wp_snap_add_option_page","wp-snap.php",167,{"type":149,"name":155,"callback":156,"file":152,"line":157},"init","wp_snap_load_language",168,{"type":149,"name":155,"callback":159,"priority":160,"file":152,"line":161},"wp_snap_fancy_url",10,174,{"type":163,"name":164,"callback":165,"priority":160,"file":152,"line":166},"filter","plugin_action_links","snap_add_settings_link",815,[],[],[],[],{"dangerousFunctions":172,"sqlUsage":173,"outputEscaping":175,"fileOperations":13,"externalRequests":13,"nonceChecks":31,"capabilityChecks":31,"bundledLibraries":201},[],{"prepared":31,"raw":13,"locations":174},[],{"escaped":13,"rawEcho":176,"locations":177},11,[178,181,183,185,187,189,191,193,195,197,199],{"file":152,"line":179,"context":180},854,"raw output",{"file":152,"line":182,"context":180},865,{"file":152,"line":184,"context":180},872,{"file":152,"line":186,"context":180},873,{"file":152,"line":188,"context":180},874,{"file":152,"line":190,"context":180},890,{"file":152,"line":192,"context":180},896,{"file":152,"line":194,"context":180},902,{"file":152,"line":196,"context":180},908,{"file":152,"line":198,"context":180},926,{"file":152,"line":200,"context":180},932,[],[203,229],{"entryPoint":204,"graph":205,"unsanitizedCount":13,"severity":228},"wp_snap_options_subpanel (wp-snap.php:822)",{"nodes":206,"edges":224},[207,212,217,220],{"id":208,"type":209,"label":210,"file":152,"line":211},"n0","source","$_POST['key_snap_exclude']",838,{"id":213,"type":214,"label":215,"file":152,"line":211,"wp_function":216},"n1","sink","update_option() [Settings Manipulation]","update_option",{"id":218,"type":209,"label":219,"file":152,"line":179},"n2","$_SERVER['REQUEST_URI']",{"id":221,"type":214,"label":222,"file":152,"line":179,"wp_function":223},"n3","echo() [XSS]","echo",[225,227],{"from":208,"to":213,"sanitized":226},true,{"from":218,"to":221,"sanitized":226},"low",{"entryPoint":230,"graph":231,"unsanitizedCount":13,"severity":228},"\u003Cwp-snap> (wp-snap.php:0)",{"nodes":232,"edges":237},[233,234,235,236],{"id":208,"type":209,"label":210,"file":152,"line":211},{"id":213,"type":214,"label":215,"file":152,"line":211,"wp_function":216},{"id":218,"type":209,"label":219,"file":152,"line":179},{"id":221,"type":214,"label":222,"file":152,"line":179,"wp_function":223},[238,239],{"from":208,"to":213,"sanitized":226},{"from":218,"to":221,"sanitized":226},{"summary":241,"deductions":242},"The \"wp-snap\" v0.9.4 plugin exhibits a generally strong security posture based on the provided static analysis.  The absence of any AJAX handlers, REST API routes, shortcodes, or cron events with unprotected entry points, combined with the presence of nonce and capability checks, suggests a well-defined and secured attack surface.  Furthermore, the fact that all SQL queries utilize prepared statements is a significant strength, mitigating common SQL injection risks. The plugin also shows no known historical vulnerabilities, indicating a consistent effort towards security or a lack of targeted analysis until now.\n\nHowever, a critical concern arises from the output escaping. With 11 total outputs and 0% properly escaped, this presents a significant risk for Cross-Site Scripting (XSS) vulnerabilities. Any data outputted by the plugin, if not properly sanitized on input, could be injected with malicious scripts that would then execute in the user's browser. While taint analysis did not reveal any unsanitized paths, this could be an artifact of the limited analysis scope or the nature of the flows examined. The lack of file operations and external HTTP requests further contributes to a reduced risk profile in those specific areas.\n\nIn conclusion, \"wp-snap\" v0.9.4 has several commendable security practices, particularly in its handling of entry points and database queries. The primary weakness is the complete lack of output escaping, which is a serious deficiency that must be addressed to prevent XSS attacks. The clean vulnerability history is positive, but the identified output escaping issue overshadows this strength, necessitating immediate attention.",[243],{"reason":244,"points":245},"All output is unescaped",8,"2026-03-16T21:15:55.977Z",{"wat":248,"direct":257},{"assetPaths":249,"generatorPatterns":252,"scriptPaths":253,"versionParams":254},[250,251],"\u002Fwp-content\u002Fplugins\u002Fwp-snap\u002Fwp-snap.css","\u002Fwp-content\u002Fplugins\u002Fwp-snap\u002Fwp-snap.js",[],[251],[255,256],"wp-snap\u002Fwp-snap.css?ver=","wp-snap\u002Fwp-snap.js?ver=",{"cssClasses":258,"htmlComments":261,"htmlAttributes":262,"restEndpoints":264,"jsGlobals":265,"shortcodeOutput":268},[259,260],"snap_nav","snap_selected",[],[263],"data-snap-nav",[],[266,267],"wp_snap_nav","wp_snap_vars",[269,270],"[wp_snap]","[wp_snap_browse]"]