

CC Child Pages block in the Gutenberg editor.
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:
[child_pages] shortcode,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
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.
Insert the CC Child Pages block in the editor. Configure:
The block provides a live preview while editing.
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:
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.
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.
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"]<h3>2. Grid Layout Options</h3>
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"]<h3>3. List Mode (Instead of Grid)</h3>
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 list1 – top level only2, 3, 4 – specific depthIn list mode, only these attributes apply:
id, `exclude`, `orderby`, `order`, `cols`, `class`, `depth`<h3>4. Thumbnails</h3>
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"]<h3>5. Titles & Links</h3>
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"]<h3>6. Excerpt Control</h3>
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"]<h3>7. Sorting & Query Control</h3>
Order results:
[child_pages orderby="title" order="ASC"]
Supported orderby values:
menu_order (default)idtitleslugauthordatemodifiedrandLimit 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"]<h3>8. Pagination</h3>
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.
By default:
Specify manually:
[child_pages post_status="publish"]
[child_pages post_status="publish,private"]<h3>10. Display Meta Information</h3>
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"]<h3>11. Custom Fields (Advanced)</h3>
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.
Sticky posts are ignored by default.
To include them:
[child_pages ignore_sticky_posts="false"]<h3>License</h3>
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