Auto Submenu
The default custom menu in WordPress only allows checking the “Automatically add new top-level pages” (Appearance > Menus) or adding a Navigation block with all pages and all child pages (Appearance > Editor). With Auto Submenu you get extra functionality to automatically include child pages into the menu. NEW: ASM now provides support for the Customizer via Appearance > Customize NEW: ASM now provides support for Full Site Editing with the Gutenberg Block Editor via Appearance > Editor Using it Enable the plugin and go to Appearance > Editor. For each Page in your menu, you now have the following extra configuration options: Add child pages as submenu y/n; child pages are ordered ascending by Menu Order; specify the (maximum) nesting depth of children you want to show (max 3); specify the title for the child pages. For this you can use %post_title, %post_author and other wildcards, see ‘Other Notes > Wildcards’. Default value: %post_title Via Appearance > Menus and Appearance > Customize you also get the following option: Check the “Automatically add new top-level and all its child pages to this menu (Auto Submenu)”-checkbox. If this option is checked, all top-level pages will automatically be added and will automatically have all child pages added as submenu. With the Free version you cannot control the nesting depth of the child pages, all subpages are added, regardless the depth of the page tree. Wildcards You can control the title of the menu items generated by the plug-in with the following wildcards: %post_title %post_author %post_date for the unformatted post date: 2012-11-10 18:14:23 %post_date() for a formatted post date with the following default formatting: November 10th, 2012 %post_date( ) for custom date formatting. Example: %post_date(l jS \of F Y, h:i:s A). See https://codex.wordpress.org/Formatting_Date_and_Time for formatting options. %post_date_gmt %post_date_gmt() %post_date_gmt( )
Top keywords
- post14×4.43%
- date11×3.48%
- pages11×3.48%
- post date9×2.85%
- child8×2.53%
- child pages8×2.53%
- appearance7×2.22%
- menu6×1.90%
- automatically5×1.58%
- title5×1.58%
- editor4×1.27%
- following4×1.27%
CC Child Pages
CC Child Pages displays WordPress child pages of any parent page in a responsive grid or list layout, making it easy to display hierarchical page structures, subpages and navigation. You can use it in page content, widget areas, or templates using: the [child_pages] shortcode, the CC Child Pages Gutenberg block, or the CC Child Pages Elementor widget (when Elementor is active). All output methods use a modern CSS system based on CSS variables and flexible grid layouts for improved theme compatibility. For older or heavily customised themes, a Legacy CSS mode is available — either by checking the Use Legacy CSS option in the block or Elementor sidebar, or by setting use_legacy_css="true" in the shortcode. This makes it ideal for building sub-navigation sections, page directories, or visual site maps. Full documentation is available at docs.ccplugins.co.uk Features Display WordPress child pages in grid or list layout Supports shortcode, Gutenberg block and Elementor widget Flexible column layouts (1–6 columns) Modern CSS system based on CSS variables Optional Legacy CSS mode for older themes Pagination and sorting controls Custom field overrides Lazy loading support Fully translatable A Pro add-on is also available at ccplugins.co.uk which adds additional display skins, advanced layout controls, colour customisation options and Elementor enhancements. What’s New in 2.x Gutenberg block with live preview Elementor widget integration Modern CSS skins using CSS variables Legacy CSS compatibility toggle Reorganised shortcode structure Continued support for the classic widget (legacy) How It Works Gutenberg Block Insert the CC Child Pages block in the editor. Configure: Parent page Columns Thumbnails Excerpt display Sorting Legacy CSS toggle The block provides a live preview while editing. Elementor Widget If Elementor is installed and active, a CC Child Pages widget becomes available. The widget is located inside the CC Plugins category within the Elementor panel. You can: Select the parent page Choose columns (1–6) Enable thumbnails and lazy loading Control excerpt display Configure sorting Enable Legacy CSS if required All shortcode options are available via intuitive controls in the Elementor sidebar. The widget renders the same output structure as the shortcode and block, ensuring consistent styling across editors. Shortcode Insert: [child_pages] By default, this displays the child pages of the current page. To enable legacy styling: [child_pages use_legacy_css="true"] The shortcode supports detailed layout and query control, documented below. Complete Shortcode Guide 1. Basic Usage Display children of current page: [child_pages] Display children of a specific page: [child_pages id="42"] Display specific pages only: [child_pages page_ids="3,7,10"] Exclude specific pages: [child_pages exclude="5,9,12"] 2. Grid Layout Options Choose number of columns: [child_pages cols="1"] [child_pages cols="2"] [child_pages cols="3"] [child_pages cols="4"] [child_pages cols="5"] [child_pages cols="6"] Choose skin: [child_pages skin="simple"] [child_pages skin="red"] [child_pages skin="green"] [child_pages skin="blue"] [child_pages skin="sleek"] [child_pages skin="bold"] Add custom wrapper class: [child_pages class="my-custom-grid"] 3. List Mode (Instead of Grid) Display as unordered list: [child_pages list="true"] Control hierarchy depth: [child_pages list="true" depth="0"] Depth values: 0 – unlimited depth (nested list) -1 – flat list 1 – top level only 2, 3, 4 – specific depth In list mode, only these attributes apply: id, `exclude`, `orderby`, `order`, `cols`, `class`, `depth` 4. Thumbnails Show featured images: [child_pages thumbs="true"] Specify size: [child_pages thumbs="large"] [child_pages thumbs="full"] [child_pages thumbs="my-custom-size"] Make thumbnails clickable: [child_pages thumbs="medium" link_thumbs="true"] Enable lazy loading: [child_pages thumbs="medium" lazy_load="true"] [child_pages thumbs="medium" link_thumbs="true" lazy_load="true"] 5. Titles & Links Make titles clickable: [child_pages link_titles="true"] Hide titles: [child_pages hide_title="true"] Hide “Read more” link: [child_pages hide_more="true"] Change “Read more” text: [child_pages more="View Details"] Open links in new tab: [child_pages link_target="_blank"] 6. Excerpt Control Limit word count: [child_pages words="20"] Disable excerpt truncation: [child_pages truncate_excerpt="false"] Hide excerpt completely: [child_pages hide_excerpt="true"] Hide WordPress “Continue reading” text: [child_pages hide_wp_more="true"] Show full page content: [child_pages show_page_content="true"] 7. Sorting & Query Control Order results: [child_pages orderby="title" order="ASC"] Supported orderby values: menu_order (default) id title slug author date modified rand Limit number displayed: [child_pages limit="5"] Offset results: [child_pages offset="2"] Display sibling pages: [child_pages siblings="true"] Include current page with siblings: [child_pages siblings="true" show_current_page="true"] 8. Pagination Enable pagination: [child_pages posts_per_page="6"] Force a specific page: [child_pages posts_per_page="6" page="2"] Pagination does not apply in list mode. 9. Post Status Control By default: Published pages are shown Private pages are shown to authorised users Specify manually: [child_pages post_status="publish"] [child_pages post_status="publish,private"] 10. Display Meta Information Show author: [child_pages show_author="true"] Show creation date: [child_pages show_date_created="true"] Show modified date: [child_pages show_date_modified="true"] 11. Custom Fields (Advanced) Override default values using meta fields. [child_pages use_custom_excerpt="custom_excerpt"] [child_pages use_custom_title="custom_title"] [child_pages use_custom_thumbs="custom_thumb"] [child_pages use_custom_link="custom_link"] [child_pages use_custom_link_target="custom_target"] Custom field overrides are ignored in list mode. 12. Sticky Posts Sticky posts are ignored by default. To include them: [child_pages ignore_sticky_posts="false"] License This plugin is free software; you may redistribute it and/or modify it under the terms of the GNU General Public License v2 or later. See https://www.gnu.org/licenses/gpl-2.0.html