DOCS

Child Actions

FREE block. Displays a grid of sub-campaigns that have a WordPress post-parent relationship to the current action.

Child actions example

Why use this

When a fundraising campaign is structured so that individual supporter pages are created as WordPress child posts of a parent campaign, this block automatically generates a browseable grid of those sub-campaigns.

What it does

The block runs a WP_Query for get_fund_action posts with post_parent = $post_id. For each result it renders a card showing the title, a short excerpt (15 words), progress statistics, and the creator’s name (respecting the anonymous meta). Cards link to the individual action page.

Important distinction from Campaign Members: This block uses WordPress post-parent hierarchy (post_parent). The Campaign Members block uses the _get_fund_campaign_id meta relationship. These serve different structural setups and should not be interchanged.

This block does not support Query Loop context. It is intended for single action pages.

How to use it

  1. Add the Child Actions block to a campaign page template.
  2. Set the number of columns in the grid.
  3. The block automatically queries for child posts.

Settings and options

OptionTypeDefaultDescription
Post ID overridenumber0Force a specific parent post ID
Columnsnumber3Number of grid columns

What you can and cannot do

  • The block only shows actions linked via post_parent, not via _get_fund_campaign_id meta.
  • Cards are not paginated; up to the query default limit are shown.
  • Currency symbol is hardcoded to in card amounts.

Developer reference

Filter: query arguments

apply_filters(
    'get_fund_child_actions_query_args',
    array $args,
    int   $post_id
);
ParameterDescription
$argsWP_Query args: post_type, post_parent, posts_per_page, orderby, order
$post_idParent post ID

Filter: output

apply_filters(
    'get_fund_child_actions_block_output',
    string $output,
    array  $attributes,
    int    $post_id
);

Example: increase posts per page

add_filter( 'get_fund_child_actions_query_args', function( $args, $post_id ) {
    $args['posts_per_page'] = 12;
    return $args;
}, 10, 2 );