Description
Ever wanted to be able to automatically have category and pages children automatically added to your menus? Im sure I did and was disappointed to not find something that dead simple that works and doesnt mess up with the theme or other plugins.
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.
How it works:
- On each menu item that is either a category or a page you get an option to automatically append their children as a submenu
- You get to decide how many children to show and how theyre gonna be ordered (Title or Date)
- And thats it, all you have to do is create content and never worry about your menu again.
- As promised, it doesnt 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
Code hacks
There is no settings page for the plugin but you can change a couple default behaviours from the code itself
Changing the default maximum children number when the field is empty
$item->automatic_max = 5; just change the number at line 220
Bring only direct children of Pages and not all ascendants
$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
Upcoming Features:
Due to lack of time i will implement the following features upon demand. Please post your requests in the forum.
- Settings Page
- Submenu items ordering
- Support for custom post types and taxonomies
Credits:
- I have used the menu walker created by zviryatko (https://plugins.trac.wordpress.org/browser/menu-image/trunk/menu-image.php)
Screenshots
Installation
Plain and simple
- Upload the plugin folder to the
/wp-content/plugins/
directory, or install the plugin through the WordPress plugins screen directly. - Activate the plugin through the Plugins screen in WordPress
- Go to Appearance->Menu and config each menu item as you like
FAQ
-
Plain and simple
- Upload the plugin folder to the
/wp-content/plugins/
directory, or install the plugin through the WordPress plugins screen directly. - Activate the plugin through the Plugins screen in WordPress
- Go to Appearance->Menu and config each menu item as you like
- Upload the plugin folder to the
-
No, you can have it enabled on whatever category or page manu you like, no matter how many or how deep they are in your menu structure
-
Yes that is correct, the children are shown only in the front-end of your website else you would have problems when saving your menu.
-
No, currently you cannot. All automatic children will be appended (added to the end) of the submenu. Leave a request on the forum if you would like this feature.
-
No, currently you cannot. It works with pages and posts assigned to a category. Leave a request on the forum if you would like this feature.
-
Yes, all this plugin does is inject items to the nav menu array for the front-end. It doesnt affect the rendering of the menu. Nonetheless; I cannot guarantee the behaviour of third-party menu plugins which rely on custom post types other than nav_menu_item.