Home Plugins cc child pages
CC Child Pages logo

CC Child Pages

by caterhamcomputing on WordPress.org

Adds a responsive shortcode to list child and sibling pages. Pre-styled or specify your own CSS class for custom styling. Includes child pages widget.

(48)
One column: [child_pages cols="1"]

One column: [child_pages cols="1"]

CC Child Pages is a simple plugin to show links to child pages via a shortcode.

Child Pages are displayed in responsive boxes, and include the page title, an excerpt and a “Read more…” link.

You can choose between 1, 2, 3 & 4 column layouts.

3 & 4 column layouts will resize to a 2 column layout on small devices to ensure that they remain readable.

CC Child Pages editor button

CC Child Pages now adds a button to the WordPress text editor, allowing you to quickly insert the shortcode and select many common options

CC Child Pages widget

CC Child Pages also includes a widget for displaying child pages within your sidebars.

The widget can be set to show the children of the current page or a specific page, or to show all pages.

Pages can be sorted by their menu order, title or ID. You can also select the depth of pages to be displayed.

You can now also tick the checkbox to show all pages, in which case the widget will behave much like the standard Pages widget but with additional options.

Using the shortcode

The simplest usage would be to use the shortcode with no parameters:

[child_pages]

This would show the Child Pages for the current page in 2 columns.

You can add the cols parameter to choose the number of columns:

[child_pages cols="1"]
[child_pages cols="2"]
[child_pages cols="3"]
[child_pages cols="4"]

… if cols is set to anything other than 1, 2, 3 or 4 the value will be ignored.

You can also show the child pages of a specific page by adding the ID of the page as follows:

[child_pages id="42"]

… or you can specify multiple IDs in a comma-separated list (does not work when using list="true")

[child_pages id="42,53,76"]

To exclude pages, use the exclude parameter. This allows you to specify a comma separated list of Page IDs to be exclude from the output of the shortcode.

[child_pages exclude="5,33,45"]

To display only specific pages, you can use the page_ids paremeter. This accepts a comma separated list of IDs. If this parameter is used, the id and exclude parameters are ignored.

[child_pages page_ids="3,7,10,35"]

The above code will display only the listed pages.

If you want to prefer to use text other than the standard “Read more …” to link to the pages, this can be specified with the more parameter:

[child_pages more="More..."]

You may also hide the “Read more …” link altogether by setting the hide_more parameter to "true":

[child_pages hide_more="true"]

Since there is no other way for the visitor to link to the child page, you can choose to make the page titles link to the child page by setting the link_titles parameter to "true":

[child_pages link_titles="true"]

(This is mainly designed to be used with the hide_more parameter, but can be used independently if you want to have both the titles and “Read more …” text link to the child page.)

When specifying link_titles="true", you may wish to apply your own styling to the links. To do so, you can specify a style using the title_link_class parameter:

[child_pages link_titles="true" title_link_class="my_title_link_class"]

You may also hide the titles altogether by setting the hide_title parameter to "true":

[child_pages hide_title="true"]

You can display a thumbnail of the featured image for each page (if set) by setting the thumbs parameter to "true":

[child_pages thumbs="true"]

You can now also display thumbnails at different sizes to the default (‘medium’) size. Simply specify the thumbnail size in the thumbs parameter. You can even specify custom image sizes.

[child_pages thumbs='large']

You can make thumbnails link to the related child page by setting the link_thumbs to "true":

[child_pages thumbs='large' link_thumbs="true"]

… note that specifying the link_thumbs parameter will have no effect unless the thumbs parameter is set to either true or a thumbnail size.

You can specify a target for the links added by the plugin by setting the link_target parameter. This will work exactly the same as setting the target parameter for the HTML tag:

[child_pages link_target="_blank"]

You can limit the length of the excerpt by specifying the words parameter:

[child_pages words="10"]

You can hide the excerpt altogether by setting the hide_excerpt parameter to "true":

[child_pages hide_excerpt="true"]

You can stop Custom Excerpts from being truncated by setting the truncate_excerpt parameter to “false”:

[child_pages truncate_excerpt="false"]

… this will display custom excerpts exactly as entered without being shortened. (Especially useful if using the Rich Text Excerpts plugin, in which case all styling will be preserved.)

When truncate_excerpt is set to true, excerpts will be truncated only if they exceed the specified word count (default 55). When custom excerpts are truncated, any HTML will be removed.

If you have inserted more tags into your posts/pages, you may find that the Continue reading message is included in the excerpt. To hide this, set the hide_wp_more parameter to true:

[child_pages hide_wp_more="true"]

IF you wish to display the full contents of the listed pages, you can set the show_page_content parameter to true:

[child_pages show_page_content="true"]

To change the order in which the child pages are listed, you can use the orderby and order parameters:

[child_pages orderby="title" order="ASC"]

The orderby parameter can have one of the following values:
menu_order (the default value) – shows the pages sorted by the order in which they appear within the WordPress admin

id sorts the pages according to the ID of the page
title sorts the pages alphabetically by the title
slug sorts the pages alphabetically according to the slug (page_name) of the page
author sorts the pages by author
date sorts the pages by the date they were created
modified sorts the pages by the date they were modified
rand shows the pages in a random order

The order parameter can be set to:

ASC shows the pages in ascending order, sorted by the value of `orderby`
DESC shows the pages in descending order, sorted by the value of `orderby`

You can now also use the skin parameter to choose a colour scheme for the Child Pages as follows:

[child_pages skin="simple"] (the default colour scheme)
[child_pages skin="red"]
[child_pages skin="green"]
[child_pages skin="blue"]

If you want to style the child page boxes yourself, you can also specify the class parameter. If used, this overrides the span parameter and adds the specified class name to the generated HTML:

[child_pages class="myclass"]

If you are not using the provided skins, you can prevent the CSS file for the skins from being loaded from the CC Child Pages options under the Settings menu.

Finally, you can also display just an unordered list (

Active installations10K+
Weekly downloads
59-28.92%
Version1.45
Last updated1/20/2025
WordPress version4.0
Tested up to6.7.2
PHP version5.4
Tags
child pagesshortcodesub pagessubpages