Plugins
0

Automatic Submenu for Categories & Pages

LICENSE TYPE: INFINITE

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

  1. Upload the plugin folder to the /wp-content/plugins/ directory, or install the plugin through the WordPress plugins screen directly.
  2. Activate the plugin through the Plugins screen in WordPress
  3. Go to Appearance->Menu and config each menu item as you like

FAQ

Plain and simple

  1. Upload the plugin folder to the /wp-content/plugins/ directory, or install the plugin through the WordPress plugins screen directly.
  2. Activate the plugin through the Plugins screen in WordPress
  3. Go to Appearance->Menu and config each menu item as you like

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.

Leave a Reply

Your email address will not be published.

Fill out this field
Fill out this field
Please enter a valid email address.
You need to agree with the terms to proceed

Most Viewed Posts
Menu