DOCS

Editing Campaigns

Fundations provides a frontend edit form so fundraisers can update their pages without accessing the WordPress admin. This is a free feature available on all installs.

Why use it

Fundraisers need to update their story, adjust goals, add photos, and post updates as their campaign progresses. The frontend editor lets them do this from a dedicated page on your site, without giving them any admin access.

What it does

The shortcode [get_fund_edit_form] renders an edit form on any page. When a fundraiser visits that page with ?edit_fund={post_id} in the URL, they see their campaign data pre-filled and can save changes.

The form supports:

  • Title and description (TinyMCE editor with bold, italic, and list formatting)
  • Fundraising goal amount
  • End date
  • Featured image and gallery images (drag to reorder, remove existing, add new)
  • Privacy setting (hide the creator name publicly)
  • Campaign updates (add, edit, delete)
  • Event tag assignment (if the admin has enabled it for all users)
  • Per-campaign expiration visibility override (if the admin has enabled creator control)
  • Option to disable child actions (joining is one-way for non-admins)
  • Closing the campaign permanently

After saving, the fundraiser is redirected back to their campaign page.

Frontend edit form

How to use it

For administrators: initial setup

  1. Create a new page in WordPress and paste the shortcode [get_fund_edit_form] into the content.
  2. Publish the page.
  3. Go to Fundations > Settings and find the Edit Page option. Set it to the page you just created.
  4. Save settings.

Fundraisers will now see an “Edit Fundation” button on their dashboard and campaign pages, linking to this edit page.

For fundraisers: editing your campaign

  1. Log in to your account.
  2. Go to your user dashboard or open your campaign page.
  3. Click the Edit Fundation button.
  4. Make your changes in the form.
  5. Click Save Changes.
Edit button on campaign

Closing a campaign

  1. Open the edit form for your campaign.
  2. Scroll to the Close Campaign section.
  3. Optionally enter a reason and closing message.
  4. Click Close Campaign.

Closure is permanent for non-admin users. There is no reopen button in the frontend. Only administrators can reopen a closed campaign from the WordPress admin.

Reactivating an expired campaign

If your campaign has expired and the administrator has enabled the reactivation option:

  1. Open the edit form.
  2. Set a new end date in the future.
  3. Save the form.

The campaign is automatically republished and the expired status is removed.

Settings & options

OptionDefaultDescription
get_fund_edit_page_id(none)The page ID where [get_fund_edit_form] is placed
get_fund_expiration_creator_can_extendtrueAllow fundraisers to reactivate expired campaigns by setting a new end date
get_fund_expiration_creator_can_choosefalseAllow fundraisers to choose their own expiration visibility setting
get_fund_event_creationadmin_onlyWho can assign event tags: admin_only or all_users

What you can and cannot do

Fundraisers can edit their own campaigns from the frontend, add campaign updates visible to visitors, manage gallery images including reordering, and close a campaign with an optional reason and message. If the admin allows it, they can also reactivate an expired campaign by setting a future end date.

Fundraisers cannot edit another user’s campaign (unless they have the edit_others_posts WordPress capability), reopen a closed campaign from the frontend, re-enable child actions once disabled (only an admin can do that), or delete a campaign from the frontend.

Troubleshooting

ProblemLikely causeFix
The edit form shows “You do not have permission”You are not logged in, or you are not the campaign authorLog in with the correct account
There is no “Edit Fundation” buttonThe edit page ID option is not configuredAsk the admin to set the edit page in Fundations settings
The end date field does not appear after expiryget_fund_expiration_creator_can_extend is disabledAsk the admin to enable this option in settings
Changes are not savingJavaScript error or session expiryRefresh the page and try again; check the browser console for errors
Gallery reorder is not workingJavaScript is blocked or a plugin conflictDisable other plugins temporarily to identify the conflict

Developer reference

Hooks and filters

HookTypeDescription
get_fund_user_can_edit_actionfilterOverride edit permission for a specific user and post; receives bool, post_id, user_id
get_fund_edit_form_fieldsfilterModify the initial form field data loaded into the form; receives array, post_id
get_fund_edit_form_save_datafilterModify wp_update_post arguments before saving; receives array, post_id
get_fund_edit_redirect_urlfilterModify the URL the user is sent to after saving; receives string, post_id
get_fund_before_frontend_editactionFires before the form HTML is rendered; receives post_id
get_fund_after_frontend_editactionFires after the form HTML is rendered; receives post_id
get_fund_action_updatedactionFires after a successful save; receives post_id
get_fund_action_closedactionFires after a campaign is closed; receives post_id

Signatures

// Grant a custom role edit access
add_filter( 'get_fund_user_can_edit_action', function( bool $can_edit, int $post_id, int $user_id ) {
    if ( user_can( $user_id, 'manage_campaigns' ) ) {
        return true;
    }
    return $can_edit;
}, 10, 3 );

// Redirect to a custom page after saving
add_filter( 'get_fund_edit_redirect_url', function( string $url, int $post_id ) {
    return get_permalink( $post_id ) . '?updated=1';
}, 10, 2 );

// Run code after a campaign is closed
add_action( 'get_fund_action_closed', function( int $post_id ) {
    // e.g. notify a team manager
} );