Requires:
- Charitable Pro 1.8.16+
- Charitable Tributes 1.0.0+
This page is the complete reference for Charitable Tributes: every setting you can change, how it works with the other Charitable addons, and the full developer surface of hooks, AJAX actions, REST endpoints, and templates.
If you are looking for how to do a specific task, the focused guides are usually a better starting point. This page is the map of everything.
Tributes Settings
All settings live under Charitable » Tributes » Settings, organized into tabs.

General
- Default privacy level – the privacy level applied to new honorees (public, family approval, members, or private link).
- Default tribute label – the wording used when a tribute type does not specify its own.
- Form pattern – the default layout for tribute fields on donation forms.
- Donor context line – the helper text shown above the tribute fields.
- GDPR consent text – the consent wording shown when a donor chooses to notify a loved one.
Donation Form
- Form pattern – choose Blocks inline (tribute fields in the amount section) or Blocks step (tribute fields on their own step).
- Donor context line – customize the helper text in your own voice.
Integrations
A toggle for each of the five integrations, so you can turn any of them off. See the Integrations section below for what each one does.

Tributes Emails
- Enable and configure the tribute notification, including from-name, from-email, and per-tribute-type subjects and bodies.
- Configure the family digest schedule (off, weekly, biweekly, or monthly), the day it sends, and its subject.
Tributes E-card
- Enable the richer e-card format and set its headline, attribution line, and accent color.
- Set per-tribute-type subject, eyebrow, and closing wording.
- Send Test E-card to preview the result.
Custom Fields
An AJAX-driven manager for defining your own fields on honorees and on tribute campaigns. Custom fields appear on the records and are available as email tags.
Settings are stored in the charitable_tributes_settings option; custom field definitions in charitable_tributes_custom_fields.
Tributes Integrations with other addons
Tributes detects each related addon and adds tribute-aware behavior. If an addon is not installed, that integration simply does nothing. Each can be toggled off in Settings > Integrations.
| Addon | What Tributes adds | Setting |
|---|---|---|
| Recurring Donations | The annual tribute opt-in that turns a one-time gift into a recurring gift, with tribute details preserved on every renewal. | recurring_upsell |
| Donor Wall(core) | An “In Memory of [Honoree]” tag appended to the donor’s name on your site’s main donor wall. | donor_wall_tribute_tag |
| DonorTrust | Suppresses DonorTrust badges on tribute pages, which have their own donor attribution. | donortrust_suppress |
| PDF Receipts | A formatted tribute section in the generated PDF receipt. Requires PDF Receipts 1.1.3+. | pdf_receipts_tribute_section |
| Automation Connect | Registers tribute events (donation completed, campaign created, honoree created) for webhooks and automations. | automation_connect_events |
Privacy and accessibility
- GDPR – Tributes participates in WordPress’s personal-data export and erasure tools, so a data request includes tribute and honoree information tied to the person.
- Consent – family notifications only send when the donor confirms consent, and family digests require an explicit opt-in.
- Accessibility – the donor-facing surfaces are built to WCAG 2.1 AA.
Developer reference for Tributes
Actions
| Action | Fires when |
|---|---|
charitable_tributes_init | The addon container is ready. The safest place to register extensions. |
charitable_tributes_campaign_created | A tribute campaign is created. |
charitable_tributes_donation_linked | A donation is linked to an honoree (back-compat event). |
charitable_tributes_donation_completed | A tribute donation completes (canonical event, broad payload). |
charitable_tributes_donation_refunded | A tribute donation is refunded. |
charitable_tributes_honoree_created | An honoree record is created. |
charitable_tributes_honoree_merged | Two honorees are merged. |
charitable_tributes_annual_reminder_sent | An annual giving reminder is sent. |
charitable_tributes_family_digest_sent | A family digest email is sent. |
charitable_tributes_notification_send_failed | A notification or e-card send throws (payload: donation id + Throwable). |
The charitable_tributes_donation_completed payload:
add_action( 'charitable_tributes_donation_completed', function ( $donation_id, $data ) {
// $data: donation_id, honoree_id, campaign_id, amount, currency,
// tribute_type, donor_id, donor_display
}, 10, 2 );
Filters
| Filter | Default | Purpose |
|---|---|---|
charitable_tributes_admin_tabs | array | Modify the admin page tab list. |
charitable_tributes_admin_sub_tabs | array | Modify the settings sub-tabs. |
charitable_tributes_templates | array | Register custom tribute templates. |
charitable_tributes_url_base | tribute | Change the rewrite slug for tribute and honoree URLs. |
charitable_tributes_type_options | array | Filter the available tribute types, optionally per campaign. |
charitable_tributes_message_max_length | 500 | Donor message character limit. |
charitable_tributes_hide_donor_comment | false | Hide the donor message field. |
charitable_tributes_honoree_context_fallback | context | Provide honoree context for blocks with no explicit honoree. |
charitable_tributes_unsubscribe_token_max_age | 30 days | Lifetime of unsubscribe tokens. |
charitable_tributes_receipt_email_enabled | true | Show the tribute section on receipt emails. |
charitable_tributes_receipt_email_show_photo | true | Include the honoree photo on the receipt. |
charitable_tributes_receipt_email_show_message | true | Include the donor message on the receipt. |
charitable_tributes_receipt_email_show_ecard | true | Reflect e-card styling on the receipt. |
charitable_tributes_receipt_email_show_tribute_link | true | Link to the tribute page from the receipt. |
charitable_send_tribute_notification | true | Gate the standard notification per donation. |
charitable_send_tribute_ecard | true | Gate the e-card per donation. |
AJAX endpoints
All are wp_ajax_ only (no public access), require a nonce, and check the manage_charitable_settings capability.
| Action | Purpose |
|---|---|
charitable_tributes_wizard_open | Initialize the wizard session. |
charitable_tributes_wizard_step | Render and handle a wizard step. |
charitable_tributes_wizard_set_campaign_status | Publish or draft the new campaign. |
charitable_tributes_wizard_discard | Discard the wizard session. |
charitable_tributes_save_honoree_notes | Save admin notes on an honoree. |
charitable_tributes_save_custom_fields | Save custom field definitions. |
charitable_tributes_add_family_contact | Add a family contact. |
charitable_tributes_update_family_contact | Update a family contact. |
charitable_tributes_delete_family_contact | Delete a family contact. |
charitable_tributes_honoree_merge | Merge two honorees. |
charitable_tributes_honoree_search | Search honorees by name. |
charitable_tributes_dismiss_banner | Dismiss the welcome banner. |
charitable_tributes_ecard_test_action | Send a test e-card. |
REST API
Read-only endpoints for syncing tribute data into an external CRM or reporting stack.
Tribute campaigns – GET /wp-json/wp/v2/tribute_campaigns
| Query param | Example | Filters by |
|---|---|---|
tribute_type | in-memory-of | Tribute type. |
template | in-loving-memory | Template used. |
honoree | 123 | Honoree ID. |
date_from / date_to | 2026-01-01 | Date range. |
Each response includes a tribute_meta object with honoree_id, template_id, total_raised, and donor_count.
Honorees – GET /wp-json/wp/v2/charitable-honorees
| Query param | Example | Filters by |
|---|---|---|
template | in-loving-memory | Linked tribute template. |
has_donations | 1 or 0 | Only honorees with, or without, donations. |
Each response includes a tribute_meta object with total_raised, donor_count, gift_count, last_donation_at, and linked_campaigns_count.
Database schema
| Table | Purpose |
|---|---|
wp_charitable_honoree_donations | One denormalized row per gift, linked to an honoree. |
wp_charitable_honoree_family_contacts | Family contact records. |
wp_charitable_honoree_totals_cache | Cached per-honoree totals. |
Use the repositories rather than querying directly:
use Charitable\Pro\Tributes\Repositories\Repositories;
Repositories::honorees();
Repositories::honoree_donations();
Repositories::honoree_family_contacts();
Repositories::honoree_totals_cache();
Templates
Override any of these by copying them into your theme, following Charitable’s template loader convention:
templates/single-tribute_campaign.phptemplates/emails/tribute-notification.php(and-plain.php)templates/emails/tribute-ecard.phptemplates/emails/family-digest.php(and-plain.php)blocks/<block>/render.phpfor each of the six blocks.
Automation Connect events
When Automation Connect is active, Tributes registers its events through the charitable_automation_connect_events filter, exposing tribute donation completed, tribute campaign created, and new honoree events for no-code automations.
Related
- Charitable Tributes Guide
- Creating Tribute Campaigns
- Honoree Records and the CRM
- Tribute Emails, E-cards, and Receipts
Helpful Links
🤝 Get help when you need it
Connect with Customer Support →
📑 Find the guide you need
Browse the Documentation Hub →
⬇️ Download proven strategies, campaign ideas, and expert tools
Get the Fundraising Kit →
💸 Get Free Fundraising Resources
Head to the Charitable Fundraising Hub →
🤔 Got questions about Charitable?
Charitable FAQs →
Need help understanding non-profit terms and jargon?
See our Non-Profit Glossary →





