Modern Fundraising Site using TeamRaiser/Luminate API Example
Options
Hi all,
Just wanted to pass on an example of a WordPress based site I put together for the BC SPCA that uses Luminate API, custom PHP libraries and Javascript to push the envelope for TeamRaiser. This site adds some new features on top of base TeamRaiser sites, giving it a modern take on fundraising that's still backed by the solid TeamRaiser platform.
https://treatweek.ca
Here's a few of the new features:



Just wanted to pass on an example of a WordPress based site I put together for the BC SPCA that uses Luminate API, custom PHP libraries and Javascript to push the envelope for TeamRaiser. This site adds some new features on top of base TeamRaiser sites, giving it a modern take on fundraising that's still backed by the solid TeamRaiser platform.
https://treatweek.ca
Here's a few of the new features:
- Tile based search system with participant profile image and thermometer displayed (includes pagination and fully responsive to display tiles correctly on mobile)
- Participant page with Facebook commenting and moderation, and two high res images- one for participant's profile image, and one for a banner image
- Modern participant centre with high res image support, image cropping built in, image compression built in, and support for both a banner and profile image on fundraiser pages
- Easier options for domains by using WordPress as a platform (ex treatweek.ca instead of secure.convio.net/pagebuilder etc)
- Fully HTTPS on every page by using WordPress
- Facebook sharing that uses a high res image and fundraiser text when sharing. Also flushes Facebook's page cache whenever a participant updates their page, so sharing always reflects the current image/text on their fundraising page.
- Two step process for teamraiser registration, no long process for registrations
- Modern donation and registration forms with UI/UX enhancements, form feedback, and custom error reporting so people know what's wrong if their transaction doesn't go through




Tagged:
11
Comments
-
Super nice, very well thought out. Pretty tidy code too.
Your registration has a Designation question (Area of greatest need). How are you handling applying that designation to all of that fundraiser's donations?
Where are you storing the banner images? I'm guessing in WordPress?
Interesting that you create a cons record right in the first page so you catch an email for people that don't complete the registration process.
Also interesting that you default to an event gift form with links to participant search, rather than the reverse. Has that increased the need to do soft credits very much?
BPM0 -
Your registration has a Designation question (Area of greatest need). How are you handling applying that designation to all of that fundraiser's donations?
We'd experimented with trying to save a fundraiser designation to a constituent's profile (eg treet week gift designation would appear in their LO profile), but had some serious issues with reliability. We ended up having to recode the majority of transactions when we tried to do that, so we redesigned our system to have a separate teamraiser created for each fund. When someone selects gift designation during registration, it's really just registering them for a different teamraiser for each fund. While we do have to create more teamraisers this way, we found it to be much less work and 100% reliable. Having separate teamraisers for each fund (or branch in our case) has some other benefits too, since we can customize some of the settings for each branch on an individual basis now and quickly run reports on each branch to see where their fundraising goals are at too.
Where are you storing the banner images? I'm guessing in WordPress?
Initially we'd thought we'd have to do that, but there's actually an option to store a second image on TeamRaisers on the personal pages (graphic_upload2_file on the api page for uploadPersonalPhoto). Keeping all data stored within LO was a goal we wanted to achieve and luckily we were able to do it thanks to this.
Also interesting that you default to an event gift form with links to participant search, rather than the reverse. Has that increased the need to do soft credits very much?
Last year our donation form wasn't as clear about where the donation funds are going to and we did have quite a few soft credits we had to do, but we've been able to deal with some of that by making the text about who you're donating to on the top of the donation form much more clearer/bolder and with a link to search. We might still adjust this a bit depending on how it goes though, it's definitely something we're thinking about!
Let me know if you have any more questions!
1 -
That list was pretty long wasn't it? It must be a lot of teamraisers!
I wrote a JQuery plugin to do something just like this with designations, but in our case, we're adding the cons info to a JSON file after we approve their registration. My script sets the designation field on the form based on a lookup to that file.
https://secure3.convio.net/cmf/site/Donation2?df_id=12064&12064.donation=form1&FR_ID=1720&mfc_pref=T&PROXY_ID=1959772&PROXY_TYPE=20&s_debug=true
Note: The orange fields are ordinarily hidden (I show them with that s_debug session var.) Here's my script: https://secure3.convio.net/cmf/_resources-teamraiser/reus_js/jquery.madFunds.js
We were only offering this option to a few key participants initially, so the JSON seemed like an acceptable way to go. I've been thinking of changing it to something similar to what you tried - storing the designation id in a custom field - so anyone could use it and also avoid the manual set-up.
Did you ever figure out what the stumbling block was on your initial attempt? Seems like it should work.
I just finished a new version of the form that is all API, and allows up to a four-way split, though it also still uses a JSON file to hold the designation selection.
https://secure3.convio.net/cmf/site/SPageServer?pagename=_template_designated_fundraising_teamraiser&FR_ID=1234&PROXY_ID=1105632&PROXY_TYPE=20&s_debug=true
Great work for BCSPCA. Lots of good stuff to steal!
BPM
PS - You should give a session about this project at BBCon 2019.
1 -
It's a pretty big list, but I was surprised how easy it was to set them up with an xml list we uploaded using the api register teamraiser process.
Interesting solution using the JSON file for a few key participants!
For the gift designation, I think the issue partly was the implementation we had done up by a contractor. It didn't work with gifts to teams and ended up only working (some of the time) with donations to personal pages. Bottom line it wasn't reliable when it was actually implemented. Moving things to separate teamraisers also worked better for branches too, since they can just get a quick report from their teamraiser for what their fundraising is at and see who of their top fundraisers had registered just by printing off their branch teamraiser report.
I'll take a look at BBCon 2019, great idea!0 -
This is glorious! So curious on how you tackled some of this:
- Are you using any WP plugins here, or is everything custom?
- Are you creating users in wordpress when folks create pages?
- Are these pages completely created on the Wordpress side, or are you populating everything through the API as it's needed?
- If the latter, is there anything being added to the wordpress database at all when people sign up?
- How do you handle the participant center; did you recreate that in WP too?
1 -
Are you using any WP plugins here, or is everything custom?
Everything is custom (except for some basic website plugins for instagram and the FAQ system which it didn't make sense for us to put any development time into given that there's great options available in WP).
Are you creating users in wordpress when folks create pages?
We aren't, since we have fundraisers who participate on different campaigns for the BC SPCA we wanted them to be able to just use their LO login for the site
Are these pages completely created on the Wordpress side, or are you populating everything through the API as it's needed?
It's all API/some CURL requests from the secure.convio.net/tr/yourpage when it's quicker to grab the data there than to have multiple API requests for different data. This took some doing to get the speed up and make things usable. I've been working on a side project updating the Luminate API PHP wrapper to have more useful functions/do parallel requests for API functions, so that was helpful here for getting data quickly!
If the latter, is there anything being added to the wordpress database at all when people sign up?
Nope, nothing being added! Our goal was to keep almost everything in LO.
How do you handle the participant center; did you recreate that in WP too?
We created a new PC in WP to do this, yes! It took some doing but we were able to add some new features in and make it a better experience for users.
If you have any other questions let me know- I'll be working on getting an updated PHP wrapper out at some point this year, still a few things to streamline!1
Categories
- All Categories
- Shannon parent
- shannon 2
- shannon 1
- 21 Advocacy DC Users Group
- 14 BBCRM PAG Discussions
- 89 High Education Program Advisory Group (HE PAG)
- 28 Luminate CRM DC Users Group
- 8 DC Luminate CRM Users Group
- Luminate PAG
- 5.9K Blackbaud Altru®
- 58 Blackbaud Award Management™ and Blackbaud Stewardship Management™
- 409 bbcon®
- 2K Blackbaud CRM™ and Blackbaud Internet Solutions™
- donorCentrics®
- 1.1K Blackbaud eTapestry®
- 2.8K Blackbaud Financial Edge NXT®
- 1.1K Blackbaud Grantmaking™
- 527 Education Management Solutions for Higher Education
- 21 Blackbaud Impact Edge™
- 1 JustGiving® from Blackbaud®
- 4.6K Education Management Solutions for K-12 Schools
- Blackbaud Luminate Online & Blackbaud TeamRaiser
- 16.4K Blackbaud Raiser's Edge NXT®
- 4.1K SKY Developer
- 547 ResearchPoint™
- 151 Blackbaud Tuition Management™
- 1 YourCause® from Blackbaud®
- 61 everydayhero
- 3 Campaign Ideas
- 58 General Discussion
- 115 Blackbaud ID
- 87 K-12 Blackbaud ID
- 6 Admin Console
- 949 Organizational Best Practices
- 353 The Tap (Just for Fun)
- 235 Blackbaud Community Feedback Forum
- 124 Ninja Secret Society
- 32 Blackbaud Raiser's Edge NXT® Receipting EAP
- 55 Admissions Event Management EAP
- 18 MobilePay Terminal + BBID Canada EAP
- 36 EAP for New Email Campaigns Experience in Blackbaud Luminate Online®
- 109 EAP for 360 Student Profile in Blackbaud Student Information System
- 41 EAP for Assessment Builder in Blackbaud Learning Management System™
- 9 Technical Preview for SKY API for Blackbaud CRM™ and Blackbaud Altru®
- 55 Community Advisory Group
- 46 Blackbaud Community Ideas
- 26 Blackbaud Community Challenges
- 7 Security Testing Forum
- 1.1K ARCHIVED FORUMS | Inactive and/or Completed EAPs
- 3 Blackbaud Staff Discussions
- 7.7K ARCHIVED FORUM CATEGORY [ID 304]
- 1 Blackbaud Partners Discussions
- 1 Blackbaud Giving Search™
- 35 EAP Student Assignment Details and Assignment Center
- 39 EAP Core - Roles and Tasks
- 59 Blackbaud Community All-Stars Discussions
- 20 Blackbaud Raiser's Edge NXT® Online Giving EAP
- Diocesan Blackbaud Raiser’s Edge NXT® User’s Group
- 2 Blackbaud Consultant’s Community
- 43 End of Term Grade Entry EAP
- 92 EAP for Query in Blackbaud Raiser's Edge NXT®
- 38 Standard Reports for Blackbaud Raiser's Edge NXT® EAP
- 12 Payments Assistant for Blackbaud Financial Edge NXT® EAP
- 6 Ask an All Star (Austen Brown)
- 8 Ask an All-Star Alex Wong (Blackbaud Raiser's Edge NXT®)
- 1 Ask an All-Star Alex Wong (Blackbaud Financial Edge NXT®)
- 6 Ask an All-Star (Christine Robertson)
- 21 Ask an Expert (Anthony Gallo)
- Blackbaud Francophone Group
- 22 Ask an Expert (David Springer)
- 4 Raiser's Edge NXT PowerUp Challenge #1 (Query)
- 6 Ask an All-Star Sunshine Reinken Watson and Carlene Johnson
- 4 Raiser's Edge NXT PowerUp Challenge: Events
- 14 Ask an All-Star (Elizabeth Johnson)
- 7 Ask an Expert (Stephen Churchill)
- 2025 ARCHIVED FORUM POSTS
- 322 ARCHIVED | Financial Edge® Tips and Tricks
- 164 ARCHIVED | Raiser's Edge® Blog
- 300 ARCHIVED | Raiser's Edge® Blog
- 441 ARCHIVED | Blackbaud Altru® Tips and Tricks
- 66 ARCHIVED | Blackbaud NetCommunity™ Blog
- 211 ARCHIVED | Blackbaud Target Analytics® Tips and Tricks
- 47 Blackbaud CRM Higher Ed Product Advisory Group (HE PAG)
- Luminate CRM DC Users Group
- 225 ARCHIVED | Blackbaud eTapestry® Tips and Tricks
- 1 Blackbaud eTapestry® Know How Blog
- 19 Blackbaud CRM Product Advisory Group (BBCRM PAG)
- 1 Blackbaud K-12 Education Solutions™ Blog
- 280 ARCHIVED | Mixed Community Announcements
- 3 ARCHIVED | Blackbaud Corporations™ & Blackbaud Foundations™ Hosting Status
- 1 npEngage
- 24 ARCHIVED | K-12 Announcements
- 15 ARCHIVED | FIMS Host*Net Hosting Status
- 23 ARCHIVED | Blackbaud Outcomes & Online Applications (IGAM) Hosting Status
- 22 ARCHIVED | Blackbaud DonorCentral Hosting Status
- 14 ARCHIVED | Blackbaud Grantmaking™ UK Hosting Status
- 117 ARCHIVED | Blackbaud CRM™ and Blackbaud Internet Solutions™ Announcements
- 50 Blackbaud NetCommunity™ Blog
- 169 ARCHIVED | Blackbaud Grantmaking™ Tips and Tricks
- Advocacy DC Users Group
- 718 Community News
- Blackbaud Altru® Hosting Status
- 104 ARCHIVED | Member Spotlight
- 145 ARCHIVED | Hosting Blog
- 149 JustGiving® from Blackbaud® Blog
- 97 ARCHIVED | bbcon® Blogs
- 19 ARCHIVED | Blackbaud Luminate CRM™ Announcements
- 161 Luminate Advocacy News
- 187 Organizational Best Practices Blog
- 67 everydayhero Blog
- 52 Blackbaud SKY® Reporting Announcements
- 17 ARCHIVED | Blackbaud SKY® Reporting for K-12 Announcements
- 3 Luminate Online Product Advisory Group (LO PAG)
- 81 ARCHIVED | JustGiving® from Blackbaud® Tips and Tricks
- 1 ARCHIVED | K-12 Conference Blog
- Blackbaud Church Management™ Announcements
- ARCHIVED | Blackbaud Award Management™ and Blackbaud Stewardship Management™ Announcements
- 1 Blackbaud Peer-to-Peer Fundraising™, Powered by JustGiving® Blogs
- 39 Tips, Tricks, and Timesavers!
- 56 Blackbaud Church Management™ Resources
- 154 Blackbaud Church Management™ Announcements
- 1 ARCHIVED | Blackbaud Church Management™ Tips and Tricks
- 11 ARCHIVED | Blackbaud Higher Education Solutions™ Announcements
- 7 ARCHIVED | Blackbaud Guided Fundraising™ Blog
- 2 Blackbaud Fundraiser Performance Management™ Blog
- 9 Foundations Events and Content
- 14 ARCHIVED | Blog Posts
- 2 ARCHIVED | Blackbaud FIMS™ Announcement and Tips
- 59 Blackbaud Partner Announcements
- 10 ARCHIVED | Blackbaud Impact Edge™ EAP Blogs
- 1 Community Help Blogs
- Diocesan Blackbaud Raiser’s Edge NXT® Users' Group
- Blackbaud Consultant’s Community
- Blackbaud Francophone Group
- 1 BLOG ARCHIVE CATEGORY
- Blackbaud Community™ Discussions
- 8.3K Blackbaud Luminate Online® & Blackbaud TeamRaiser® Discussions
- 5.7K Jobs Board