[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fpvoRRk_23kI6iKH_ZFdxgv-7R2daSZu2LQMcETBUQzQ":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":38,"analysis":126,"fingerprints":208},"sf-bootstrap-menu","SF Bootstrap Menu","2.4.1","Studiofreya","https:\u002F\u002Fprofiles.wordpress.org\u002Fstudiofreya\u002F","\u003Cp>SF Bootstrap Menu is an easy customizable widget to show hierarchical pages. The menu uses the latest Bootstrap 3.0 framework and provides responsive design for desktops, phones and tablets.\u003C\u002Fp>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fstudiofreya.com\u002Fwordpress\u002Fsf-bootstrap-menu\u002F\" rel=\"nofollow ugc\">Plugin website\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>The plugin allows the user to insert the widget into any widget area.\u003C\u002Fp>\n\u003Ch4>Features:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Choose between Horizontal and Vertical menu in each widget instance\u003C\u002Fli>\n\u003Cli>New child pages are added to the menu automatically\u003C\u002Fli>\n\u003Cli>Select your own colors\u003C\u002Fli>\n\u003Cli>Select which parent pages to include into the menu or show all\u003C\u002Fli>\n\u003Cli>Exclude pages\u003C\u002Fli>\n\u003Cli>Multiple menu instances with different parent pages\u003C\u002Fli>\n\u003Cli>Supports up to 3 levels\u003C\u002Fli>\n\u003Cli>Mute top-level pages\u003Cbr \u002F>\n‘ Show top-level pages only\u003C\u002Fli>\n\u003Cli>Expanded vertical menus. These can be used for online books like our \u003Ca href=\"https:\u002F\u002Fstudiofreya.com\u002Fcpp\u002Fconcepts\u002F\" rel=\"nofollow ugc\">C++ Concepts book\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n","Responsive sidebar menu wdiget for hierarchical pages with Bootstrap 3.0.",10,4296,0,"2018-03-23T07:30:00.000Z","4.9.29","3.8","",[19,20,21,22,23],"child","hierarchical","menu","pages","sidebar","https:\u002F\u002Fstudiofreya.com\u002Fsf-bootstrap-menu","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsf-bootstrap-menu.zip",85,null,"2026-03-15T15:16:48.613Z",[],{"slug":31,"display_name":7,"profile_url":8,"plugin_count":32,"total_installs":33,"avg_security_score":34,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},"studiofreya",3,50,90,30,87,"2026-04-05T12:07:47.117Z",[39,57,77,94,108],{"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":13,"last_updated":49,"tested_up_to":50,"requires_at_least":51,"requires_php":17,"tags":52,"homepage":55,"download_link":56,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"collapsing-pages","Collapsing Pages","2.0.3","robfelty","https:\u002F\u002Fprofiles.wordpress.org\u002Frobfelty\u002F","\u003Cp>This is a very simple plugin that uses Javascript to form a collapsable set of\u003Cbr \u002F>\nlinks in the sidebar for the pages. Every page corresponding to a given\u003Cbr \u002F>\nparent page will be expanded.\u003C\u002Fp>\n\u003Cp>It is largely based off of my Collapsing Pages and Collapsing Pages\u003Cbr \u002F>\nplugins.\u003C\u002Fp>\n\u003Ch3>What’s new?\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\n\u003Cp>2.0.3 (2024.01.01)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Fixed issue with subsubpages not closing correctly\u003C\u002Fli>\n\u003Cli>Got rid of some more warnings\u003C\u002Fli>\n\u003Cli>Tested with 6.4.2\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>2.0.2 (2023.12.01)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Got rid of some warnings\u003C\u002Fli>\n\u003Cli>Updated deprecated property __experimentalGroup\u003C\u002Fli>\n\u003Cli>Tested with 6.4.1\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>2.0.1 (2023.06.16)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Bug fixes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>2.0.0 (2023.03.17)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Updated to use Gutenberg block\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>1.0.1 (2016.05.09)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Fixed bug where sometimes setting accordion to false broke javascript\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>1.0 (2015.08.12)\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Compatible with WordPress 4.3\u003C\u002Fli>\n\u003Cli>Fixed bug where expanding symbol showed up at lowest depth specified instead\u003Cbr \u002F>\n(thanks to tkibler for pointing it out)\u003C\u002Fli>\n\u003Cli>Added option to only display pages of the current subpage\u003C\u002Fli>\n\u003Cli>Added option to show top-level page (previously it was always shown)\u003C\u002Fli>\n\u003Cli>Added accordion style option\u003C\u002Fli>\n\u003Cli>Cleaned up widget settings\u003C\u002Fli>\n\u003Cli>improved style management, including the ability to specify style per widget\u003C\u002Fli>\n\u003Cli>Switched from unicode symbols to html entities\u003C\u002Fli>\n\u003Cli>Not showing tags for title if empty\u003C\u002Fli>\n\u003Cli>Fixed bug with title attribute of pages\u003C\u002Fli>\n\u003Cli>Totally rewrote javascript\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Options\u003C\u002Fh3>\n\u003Cp>If using the manual version, you can pass options either as an array, or using\u003Cbr \u002F>\nthe query style, just like for other wordpress functions such as\u003Cbr \u002F>\n    wp_list_pages\u003C\u002Fp>\n\u003Cpre>\u003Ccode>  $defaults=array(\n    'title' => __('Pages', 'collapsing-pages'), \n    'sortOrder'=> 'ASC' ,\n    'sort'=> 'pageName' ,\n    'defaultExpand'=> '',\n    'expand' => 0,\n    'depth' =>-1,\n    'inExcludePage' => 'exclude',\n    'linkToPage' => true,\n    'inExcludePages' => '',\n    'showPosts' => false,\n    'animate' => 0,\n    'useCookies' => true,\n    'postTitleLength' => 0,\n    'showTopLevel' => true,\n    'currentPageOnly' => false,\n    'debug' => false,\n  );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cul>\n\u003Cli>inExcludePage\n\u003Cul>\n\u003Cli>Whether to include or exclude certain pages\n\u003Cul>\n\u003Cli>‘exclude’ (default) \u003C\u002Fli>\n\u003Cli>‘include’\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>inExcludePages\n\u003Cul>\n\u003Cli>The pages which should be included or excluded\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>showPosts\n\u003Cul>\n\u003Cli>Whether or not to include posts as well as pages. Default if false\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>linkToPage\n\u003Cul>\n\u003Cli>True, clicking on a parent page title will link to that page (default)\u003C\u002Fli>\n\u003Cli>False, clicking on a parent page will expand to show sub-pages\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>sort\n\u003Cul>\n\u003Cli>How to sort the pages. Possible values:\n\u003Cul>\n\u003Cli>‘pageName’ the title of the page (default)\u003C\u002Fli>\n\u003Cli>‘pageId’ the Id of the page\u003C\u002Fli>\n\u003Cli>‘pageSlug’ the url of the page\u003C\u002Fli>\n\u003Cli>‘menuOrder’ custom order specified in the pages settings\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>sortOrder\n\u003Cul>\n\u003Cli>Whether pages should be sorted in normal or reverse\u003Cbr \u002F>\norder. Possible values:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>‘ASC’ normal order (a-z 0-9) (default)\u003C\u002Fli>\n\u003Cli>‘DESC’ reverse order (z-a 9-0)  \u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>expand\n\u003Cul>\n\u003Cli>The symbols to be used to mark expanding and collapsing. Possible values:\n\u003Cul>\n\u003Cli>‘0’ Triangles (default)\u003C\u002Fli>\n\u003Cli>‘1’ + –\u003C\u002Fli>\n\u003Cli>‘2’ [+] [-]\u003C\u002Fli>\n\u003Cli>‘3’ images (you can upload your own if you wish)\u003C\u002Fli>\n\u003Cli>‘4’ custom symbols\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>customExpand\n\u003Cul>\n\u003Cli>If you have selected ‘4’ for the expand option, this character will be\u003Cbr \u002F>\nused to mark expandable link categories\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>customCollapse\n\u003Cul>\n\u003Cli>If you have selected ‘4’ for the expand option, this character will be\u003Cbr \u002F>\nused to mark collapsible link categories\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>postTitleLength\n\u003Cul>\n\u003Cli>Truncate post titles to this number of characters (default: 0 = don’t\u003Cbr \u002F>\ntruncate)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>animate\n\u003Cul>\n\u003Cli>When set to true, collapsing and expanding will be animated\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>useCookies\n\u003Cul>\n\u003Cli>When true, expanding and collapsing of pages is remembered for each\u003Cbr \u002F>\nvisitor. When false, pages are always display collapsed (unless\u003Cbr \u002F>\nexplicitly set to auto-expand). Possible values:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>true (default)\u003C\u002Fli>\n\u003Cli>false\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>showTopLevel\n\u003Cul>\n\u003Cli>True –  show top level pages (default)\u003C\u002Fli>\n\u003Cli>False – only display sub-pages and below\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>currentPageOnly\n\u003Cul>\n\u003Cli>True –  show only parent and sub pages of the current page\u003C\u002Fli>\n\u003Cli>False – show all pages (subject to the include or exclude parameters\u003Cbr \u002F>\nset) (default)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>debug\n\u003Cul>\n\u003Cli>When set to true, extra debugging information will be displayed in the\u003Cbr \u002F>\nunderlying code of your page (but not visible from the browser). Use\u003Cbr \u002F>\nthis option if you are having problems\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Examples\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>collapsPage('animate=true&sort=ASC&expand=3,inExcludePages=about')\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>This will produce a list with:\u003Cbr \u002F>\n* animation on\u003Cbr \u002F>\n* shown in alphabetical order\u003Cbr \u002F>\n* using images to mark collapsing and expanding\u003Cbr \u002F>\n* exclude page about\u003C\u002Fp>\n\u003Ch3>Demo\u003C\u002Fh3>\n\u003Cp>I use this plugin in my blog at http:\u002F\u002Fblog.robfelty.com\u003C\u002Fp>\n\u003Ch3>CAVEAT\u003C\u002Fh3>\n\u003Cp>Currently this plugin relies on Javascript to expand and collapse the links.\u003Cbr \u002F>\nIf a user’s browser doesn’t support javascript they won’t see the links to the\u003Cbr \u002F>\nposts, but the links to the pages will still work (which is the default\u003Cbr \u002F>\nbehavior in wordpress anyways)\u003C\u002Fp>\n","This plugin uses Javascript to dynamically expand or collapsable the set of pages for each parent page.",200,41129,"2024-01-01T11:21:00.000Z","6.4.8","5.0",[21,53,22,23,54],"navigation","widget","http:\u002F\u002Frobfelty.com\u002Fplugins\u002Fcollapsing-pages","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcollapsing-pages.2.0.3.zip",{"slug":58,"name":59,"version":60,"author":61,"author_profile":62,"description":63,"short_description":64,"active_installs":47,"downloaded":65,"rating":13,"num_ratings":13,"last_updated":66,"tested_up_to":67,"requires_at_least":68,"requires_php":69,"tags":70,"homepage":17,"download_link":75,"security_score":76,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"menu-based-sidebar","Menu Based Sidebar","1.7","WP-EXPERTS.IN","https:\u002F\u002Fprofiles.wordpress.org\u002Findia-web-developer\u002F","\u003Cp>A smart way to display child menu items in the widget sidebar. The Menu-Based Sidebar plugin provides an option to display child menu items in the sidebar based on the currently selected parent menu item.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cp> * Shortcode [mbs_menu menu_id=”MENU_ID_GOES_HERE”]\u003Cbr \u002F>\n * Display menu items in sidebar on based current main menu item\u003Cbr \u002F>\n * Auto display child pages on based of current main menu item\u003C\u002Fp>\n\u003Ch4>Note: If you are using any cache plugin on your website then please clear site cache after enable\u002Fupdate plugin settings\u003C\u002Fh4>\n\u003Cp>Please don’t forget to leave your valuable feedback and suggestions to make our plugin much better compared to other plugins.\u003C\u002Fp>\n\u003Cp> \u003Cstrong>\u003Ca href=\"mailto:raghunath.0087@gmail.com\" rel=\"nofollow ugc\">Have you any suggestion? share it\u003C\u002Fa>\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp> \u003C\u002Fp>\n","Displays child menu items in the sidebar based on the currently selected parent menu item.",2618,"2026-02-16T13:12:00.000Z","6.9.4","6.0","8.0",[71,72,58,73,74],"child-menu-items","dynamic-menu","navigation-menu","sidebar-widget","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fmenu-based-sidebar.1.7.zip",100,{"slug":78,"name":79,"version":80,"author":81,"author_profile":82,"description":83,"short_description":84,"active_installs":85,"downloaded":86,"rating":76,"num_ratings":87,"last_updated":88,"tested_up_to":89,"requires_at_least":90,"requires_php":17,"tags":91,"homepage":92,"download_link":93,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"lj-subpages-widget","LJ Subpages Widget","1.3","littlejon","https:\u002F\u002Fprofiles.wordpress.org\u002Flittlejon\u002F","\u003Cp>LJ Subpages Widget allows you to display a menu listing subpages from a chosen page.\u003C\u002Fp>\n\u003Cp>This plugin was developed as I needed a widget to display a list of subpages in my sidebar. All the other plugins that I found would only display subpages from the current page being displayed.\u003C\u002Fp>\n\u003Cp>Features:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Will display the subpages of a chosen Parent page (as of version 1.1 will show subpages of current page if required).\u003C\u002Fli>\n\u003Cli>Customizable Title with the choice of using the Parent Page Title or writing your own\u003C\u002Fli>\n\u003Cli>Compatible with subpages of subpages. You have the option of displaying Subpages of the Subpages being displayed (This is theme dependant, your theme must support submenus in the sidebar for this option to function as expected)\u003C\u002Fli>\n\u003Cli>If there are no subpages to display the widget outputs nothing rather then leaving a heading without any content\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>This widget was built using the new WordPress Widget API and as such it supports multi instance copies. For this reason it means that this widget is only supported by WordPress 2.8 and above. If you have a requirement for this plugin for a version of WordPress lower then 2.8 please contact me on the plugins homepage via a comment.\u003C\u002Fp>\n","LJ Subpages Widget allows you to display a menu listing subpages from a chosen page.",60,8409,1,"2011-03-17T07:29:00.000Z","3.1.4","2.8",[21,53,22,23,54],"http:\u002F\u002Fwww.thelazysysadmin.net\u002Fsoftware\u002Fwordpress-plugins\u002Flj-subpages-widget\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Flj-subpages-widget.1.3.zip",{"slug":95,"name":96,"version":97,"author":7,"author_profile":8,"description":98,"short_description":99,"active_installs":100,"downloaded":101,"rating":76,"num_ratings":87,"last_updated":17,"tested_up_to":15,"requires_at_least":16,"requires_php":17,"tags":102,"homepage":105,"download_link":106,"security_score":76,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":107},"sf-category-menu","SF Category Menu","1.5","\u003Cp>Plugin is based on jQuery Treeview Plugin and gives an easy Treeview Menu for WordPress categories. It will display the current page or category and all child pages.\u003Cbr \u002F>\n\u003Ca href=\"https:\u002F\u002Fstudiofreya.com\u002Fwordpress\u002Fsf-category-menu\u002Fchangelog\u002F\" rel=\"nofollow ugc\">Plugin website\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch4>Features:\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>Choose from 5 different styles \u003C\u002Fli>\n\u003Cli>Exclude categories\u003C\u002Fli>\n\u003Cli>Translation ready\u003C\u002Fli>\n\u003Cli>Doesn’t show empty categories\u003C\u002Fli>\n\u003Cli>Shortcode to list categories with thumbnails\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Live demo:\u003C\u002Fh4>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fsftextures.com\" rel=\"nofollow ugc\">Photo website\u003C\u002Fa>\u003C\u002Fp>\n","Easy treeview menu for WordPress categories.",20,3321,[103,19,21,22,104],"categories","posts","https:\u002F\u002Fstudiofreya.com\u002Fsf-category-menu\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fsf-category-menu.zip","2026-03-15T10:48:56.248Z",{"slug":109,"name":110,"version":111,"author":112,"author_profile":113,"description":114,"short_description":115,"active_installs":11,"downloaded":116,"rating":85,"num_ratings":117,"last_updated":118,"tested_up_to":119,"requires_at_least":120,"requires_php":17,"tags":121,"homepage":124,"download_link":125,"security_score":26,"vuln_count":13,"unpatched_count":13,"last_vuln_date":27,"fetched_at":28},"automatic-submenu","Automatic Submenu for Categories & Pages","1.0.0","rallisf1","https:\u002F\u002Fprofiles.wordpress.org\u002Frallisf1\u002F","\u003Cp>Ever wanted to be able to automatically have category and pages children automatically added to your menus? I’m sure I did and was disappointed to not find something that dead simple that works and doesn’t mess up with the theme or other plugins.\u003C\u002Fp>\n\u003Cp>Now bear with me on this one as it is my first WP plugin for like a decade and the first ever to be shared so i kept it quite basic.\u003C\u002Fp>\n\u003Cp>How it works:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>On each menu item that is either a category or a page you get an option to automatically append their children as a submenu\u003C\u002Fli>\n\u003Cli>You get to decide how many children to show and how they’re gonna be ordered (Title or Date)\u003C\u002Fli>\n\u003Cli>And that’s it, all you have to do is create content and never worry about your menu again.\u003C\u002Fli>\n\u003Cli>As promised, it doesn’t mess with the theme or other plugins, it just injects the children found in the corresponding place of the nav menu array when that is triggered in the frontend\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Code hacks\u003C\u002Fh3>\n\u003Cp>There is no settings page for the plugin but you can change a couple default behaviours from the code itself\u003C\u002Fp>\n\u003Ch4>Changing the default maximum children number when the field is empty\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>$item->automatic_max = 5; just change the number at line 220\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Bring only direct children of Pages and not all ascendants\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>$children = get_pages( array( 'child_of' => $item->object_id, 'number' => $item->automatic_max, 'sort_column' => 'post_'.$ordering[0], 'sort_order' => strtoupper( $ordering[1] ) ) ); just change 'child_of' to 'parent' at line 226\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Upcoming Features:\u003C\u002Fp>\n\u003Cp>Due to lack of time i will implement the following features upon demand. Please post your requests in the forum.\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Settings Page\u003C\u002Fli>\n\u003Cli>Submenu items ordering\u003C\u002Fli>\n\u003Cli>Support for custom post types and taxonomies\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Credits:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>I have used the menu walker created by zviryatko (https:\u002F\u002Fplugins.trac.wordpress.org\u002Fbrowser\u002Fmenu-image\u002Ftrunk\u002Fmenu-image.php)\u003C\u002Fli>\n\u003C\u002Ful>\n","Automatically append children posts and pages as submenu items in the frontend",2693,2,"2017-11-13T11:45:00.000Z","4.8.28","3.1",[122,21,22,104,123],"children","submenu","https:\u002F\u002Fgithub.com\u002Fwp-automatic-plugin","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fautomatic-submenu.zip",{"attackSurface":127,"codeSignals":151,"taintFlows":192,"riskAssessment":193,"analyzedAt":207},{"hooks":128,"ajaxHandlers":147,"restRoutes":148,"shortcodes":149,"cronEvents":150,"entryPointCount":13,"unprotectedCount":13},[129,135,139,143],{"type":130,"name":131,"callback":132,"file":133,"line":134},"action","widgets_init","sf_bootstrap_menu_init","sf-menu.php",19,{"type":130,"name":136,"callback":137,"file":133,"line":138},"in_widget_form","spice_get_widget_id",21,{"type":130,"name":140,"callback":141,"file":133,"line":142},"wp_enqueue_scripts","sf_menu_load_scripts",55,{"type":130,"name":144,"callback":145,"file":133,"line":146},"plugins_loaded","sf_bootstrap_menu_load",62,[],[],[],[],{"dangerousFunctions":152,"sqlUsage":153,"outputEscaping":155,"fileOperations":87,"externalRequests":13,"nonceChecks":13,"capabilityChecks":13,"bundledLibraries":191},[],{"prepared":13,"raw":13,"locations":154},[],{"escaped":156,"rawEcho":157,"locations":158},4,16,[159,163,165,167,169,171,173,175,177,178,180,181,183,185,187,189],{"file":160,"line":161,"context":162},"sf-menu-widget.php",119,"raw output",{"file":160,"line":164,"context":162},164,{"file":160,"line":166,"context":162},165,{"file":160,"line":168,"context":162},167,{"file":160,"line":170,"context":162},282,{"file":160,"line":172,"context":162},297,{"file":160,"line":174,"context":162},298,{"file":160,"line":176,"context":162},493,{"file":160,"line":176,"context":162},{"file":160,"line":179,"context":162},494,{"file":160,"line":179,"context":162},{"file":160,"line":182,"context":162},496,{"file":160,"line":184,"context":162},504,{"file":160,"line":186,"context":162},507,{"file":160,"line":188,"context":162},517,{"file":133,"line":190,"context":162},27,[],[],{"summary":194,"deductions":195},"The \"sf-bootstrap-menu\" plugin v2.4.1 exhibits a generally good security posture, with a clean vulnerability history and no known CVEs. The static analysis reveals a commendable absence of common attack vectors such as dangerous functions, external HTTP requests, and raw SQL queries. Notably, all SQL queries utilize prepared statements, and the attack surface appears minimal, with no identified AJAX handlers, REST API routes, shortcodes, or cron events that lack authorization checks.\n\nHowever, there are specific areas of concern that warrant attention. The plugin has a very low percentage (20%) of properly escaped output, indicating a significant risk of cross-site scripting (XSS) vulnerabilities. Furthermore, the presence of file operations without apparent authorization or sanitization checks could potentially lead to unauthorized file access or manipulation. The lack of nonce checks and capability checks, especially given the file operation, increases the likelihood of these vulnerabilities being exploitable. While taint analysis shows no identified flows, the lack of proper output escaping and the presence of file operations could still lead to vulnerabilities if they interact with untrusted data.\n\nIn conclusion, while the plugin's lack of past vulnerabilities and its minimal attack surface are positive indicators, the low output escaping rate and the file operation without clear security controls are significant weaknesses. These issues create potential avenues for exploitation, particularly XSS, and potentially arbitrary file operations. Developers should prioritize addressing the output escaping and thoroughly reviewing the security implications of the file operation.",[196,199,202,205],{"reason":197,"points":198},"Low output escaping rate",15,{"reason":200,"points":201},"File operations without clear auth\u002Fsanitization",12,{"reason":203,"points":204},"Missing nonce checks",5,{"reason":206,"points":204},"Missing capability checks","2026-03-16T23:45:11.595Z",{"wat":209,"direct":222},{"assetPaths":210,"generatorPatterns":215,"scriptPaths":216,"versionParams":217},[211,212,213,214],"\u002Fwp-content\u002Fplugins\u002Fsf-bootstrap-menu\u002Fcss\u002Fstyle.min.css","\u002Fwp-content\u002Fplugins\u002Fsf-bootstrap-menu\u002Fcss\u002Fbootstrap.min.css","\u002Fwp-content\u002Fplugins\u002Fsf-bootstrap-menu\u002Fcss\u002Ffont-awesome.min.css","\u002Fwp-content\u002Fplugins\u002Fsf-bootstrap-menu\u002Fjs\u002Fbootstrap.min.js",[],[214],[218,219,220,221],"sf-bootstrap-menu\u002Fcss\u002Fstyle.min.css?ver=","sf-bootstrap-menu\u002Fcss\u002Fbootstrap.min.css?ver=","sf-bootstrap-menu\u002Fcss\u002Ffont-awesome.min.css?ver=","sf-bootstrap-menu\u002Fjs\u002Fbootstrap.min.js?ver=",{"cssClasses":223,"htmlComments":227,"htmlAttributes":228,"restEndpoints":231,"jsGlobals":232,"shortcodeOutput":234},[224,225,226],"sfmenuwidget","child_page_row","always-open",[],[229,230],"data-widget_type","data-widget-id",[],[233],"sf_bootstrap_walker_page",[]]