FREE block. Displays a list of recent and highest donors for a fundraising action.

Why use this
A visible donor list builds social proof and can motivate new visitors to give. Showing the highest donation and recent activity creates a sense of momentum.
What it does
The block queries get_fund_donation posts with status paid or completed, filtered to the current action. Three display modes are available:
- Mixed (default): highlights the most recent donation and the highest donation first, then lists remaining donors
- Highest: sorts all donors by amount, highest first
- All: sorts all donors by date, most recent first
Each row can show an avatar (icon, initials, or Gravatar), the donor’s name, amount, and a time-ago label. Badge labels for “recent” and “highest” are configurable. Anonymous donors use the anonymous text setting.
Known limitation: Time-ago labels (just now, time units) are hardcoded in Dutch and are not translatable via standard WordPress i18n. A code-level change is required to translate them.
The block supports Query Loop context.
How to use it
- Add the Recent Donors block to the action page template.
- Choose a display mode in the inspector.
- Set the maximum number of donors to show.
- Configure avatar style, badge text, and color settings.

Settings and options
| Option | Type | Default | Description |
|---|---|---|---|
| Display mode | string | mixed | mixed, highest, or all |
| Max donations | number | 5 | Maximum number of rows to show |
| Show count | boolean | true | Show total donor count in the label |
| Show label | boolean | true | Show the donor count label |
| Label text | string | {count} personen hebben zojuist gedoneerd | Label text; supports {count} merge tag |
| Show donations | boolean | true | Show the donor list |
| Show highest badge | boolean | true | Highlight the highest donor with a badge |
| Highest badge text | string | Hoogste donatie | Badge label for highest donor |
| Recent badge text | string | Recente donatie | Badge label for most recent donor |
| Anonymous text | string | Anoniem | Name shown for anonymous donors |
| Show time ago | boolean | true | Display relative time next to each donation |
| Show avatar | boolean | true | Display an avatar for each donor |
| Avatar style | string | icon | icon (heart SVG), initials, or gravatar |
| Show title | boolean | false | Show a custom title above the list |
| Custom title | string | — | Title text |
| Title font size | number | 20 | Title font size |
| Title font weight | string | 700 | Title font weight |
| Title color | string | #1d2327 | Title color |
| Count color | string | #8B5CF6 | Donor count number color |
| Count font size | number | 18 | Count number font size |
| Amount color | string | #1f2937 | Donation amount color |
| Badge color | string | #6b7280 | Badge text color |
| Name font size | number | 14 | Donor name font size |
| Show border bottom | boolean | false | Divider line below each row |
| Border bottom color | string | #e0e0e0 | Divider color |
| Border bottom width | number | 1 | Divider thickness in pixels |
What you can and cannot do
- Default label and badge texts are in Dutch. Replace them with translated strings in the block inspector.
- Time-ago labels cannot be changed from the editor. They are hardcoded in Dutch at the code level.
- The block excludes tips from amounts when the Exclude Tips setting is enabled globally.
Troubleshooting
No donors shown: No paid donations exist for this action yet, or the block is on a page that is not an action page.
Labels appear in Dutch: The default attribute values are in Dutch. Override them in the block inspector with your preferred language.