» Download on Github
Since this is a child theme of Genesis, you must also have Genesis installed for it to run. If you don’t have Genesis, use CRM Press or build your own theme by porting the code.
Summary
About 6 months ago at WordCamp Phoenix I shared TwentyTen CRM, my first attempt at developing a Customer Relationship Management system. Andrew Norcross and Jared Atchison then contributed a ton of improvements to it, and it’s been mostly unchanged since then.
Just in time for WordCamp SF (and Genesis Connect) I’m sharing my lastest version, Genesis CRM. There’s a few reasons for me making the switch:
- TwentyTen is no longer shipped with WordPress.
- Genesis is my preferred development platform. I build all my client’s sites using it.
- Most importantly, TwentyTen CRM was built specifically for managing prospective clients. Once I landed the project, it was no longer used. Genesis CRM has a screen for prospective projects, active projects, and completed projects, and is a tool I use constantly throughout the day to stay organized.
If you don’t use Genesis, no worries! You can use CRM Press, which Thomas Griffin built as a standalone CRM theme (ported from TwentyTen CRM just like Genesis CRM). Or you can just look at the code I’m using it and build it into whatever you’re comfortable working with.
Finally, I’d like to note that what makes this such a valuable tool is how easily (and often) I can modify it. I’m not building a CRM for everyone – this is specifically built for my needs. I highly recommend you take the concepts outlined in this theme and apply them in your own way. Get on Github, fork this project and build your own CRM.
Features
- Custom taxonomies and metaboxes for collecting your data.
- Prospects page template that is 3 widgetized columns. I’ve built a lot of widgets to analyze prospects, so choose the ones you want. Examples: Activity Graph, Source of Inquiry, Source of Projects, Outstanding Quotes… and more.
- Active Projects page template. This lists all active projects in order of project status. It includes a status summary and budget. There’s also a “Needs Work” radio button when editing a project, and if marked the project will have a yellow background. This let’s you quickly see which projects need work. In the sidebar I list scheduled projects so you can be ready for those when they come up.
- Completed Projects page template. This lists completed projects, the budget, time spent, and effective hourly rate. Use this to see what types of projects you over- or under-quote on to improve your estimates. Note: there is no timer built-in. I use Toggl and every Sunday I transcribe that week’s time data to the fields on each project.
- Any time you click the name of a project it takes you directly to the Edit Post screen. Since I’m constantly editing projects’ status, this saves the extra step of clicking “Edit” and gives you a single interface for viewing this information rather than a single post screen and the edit screen.
- If you’re using Gravity Forms, edit the Form page template with the appropriate form ID and you’ll be able to embed a contact form on your public site that automatically populates your CRM (tutorial here).
- The design is responsive, so on a smaller screen (ex: mobile phone) it shifts to a single column layout.
Recommended Plugins
- Gravity Forms and Gravity Forms + Custom Post Types, for your contact form
- Registered Users Only, to limit site’s access to only you. I’ve also added a filter that excludes the contact form from this restriction (functions.php, around line 375).
- Relevanssi, not only will you improve the search results, by going to Settings > Relevanssi you can specify all the post meta fields you’d like included in the index. This is absolutely a must since your CRM is built on post meta.
Sample WordPress CRMs
Have you built a CRM in WordPress? Share your code! Below are some public CRM themes. Leave a link to yours in the comments and I’ll add it to this list. Look through the code of these themes to get ideas for your own CRM.
- Genesis CRM by Bill Erickson
- CRM Press by Thomas Griffin
- TwentyTen CRM by Bill Erickson, Andrew Norcross and Jared Atchison
Vivek Parmar says
Thanks a ton, did not know that WordPress can also be used as CRM.
Jared says
As usual, great work. Can’t wait to compare CRMs in SF, lol.
Bill Erickson says
I can’t wait to integrate the cool features you’ve added into mine 🙂
Thomas Griffin says
I swear my life gets more organized with each new thing you put out 🙂
Grégoire Noyelle says
Hi Bill. Thanks a lot for your work. I want to use with the SQL dump import method. Could you give use the password for the “admin” user. Like this it will be easier to start with all your test content.
Bill Erickson says
Ah sorry, I should have included that. The password is changeme
Grégoire Noyelle says
Ok great. It works. Thanks so much.
alex vasquez says
Bill,
Again, kudos for your work and dedication. This really is cool. I’ll be playing with it shortly.
I’ve got a couple questions to run by you on this:
1. For those Genesis users using a custom theme, what is the best way for them to make use of this CRM solution? I imagine as a separate install. If so, is it possible to host the CRM form (built with gravity forms) on your own website and have that form data posted to your CRM? Does that make sense?
2. I know this has been built for your needs. However, has anyone mentioned a team project management piece to this as well? Something that will allow you to add tasks, milestones, team members etc. I’d be curious to know. =)
Thanks again.
Bill Erickson says
Yes, this should definitely be run as a separate, private install. I have mine at crm.billerickson.net. Here’s a tutorial on creating the form in your CRM but having it on your public site: https://www.billerickson.net/contact-form-to-wordpress-crm/ The CRM already has the template page set up for this (see template-form.php). The other two developers of TwentyTen CRM, Andrew Norcross and Jared Atchison, both have their own versions of CRMs and I believe Norcross’ is built like basecamp with tasks, milestones, team members…. Now that I released this I’m encouraging them to publicly release theirs too 🙂
Mike says
Bill, perhaps you could discuss how you’re implementing responsive design using Genesis?
Bill Erickson says
Sure. The extent of responsive design in this theme is small. If you go to the bottom of this page you can see the relevant part of the stylesheet. Here’s what I’m doing
– I’m using the CSS classes one-half, one-third, and two-thirds to make multi-column pages, but on smaller devices I wanted everything to be single column. So if the screen width is less than 960px It makes all those classes 100% width and no margin.
– Then I go through and make sure all the large elements are full width (content-sidebar-wrap, content, sidebar…).
– Then I set the title area and widget area (and the menu within it) to full width and centered. Normally the theme has the site name to the left and menu to the right. This stacks everything (just like my current site, try resizing this browser)
Matthew Reeves says
Hello Bill. I love your CRM, and am currently setting it up to keep track of our leads from a tradeshow.
However, is there a way to get it to show more than ten prospects when I click on a specific date to see that days entries?
Sincerely,
Matthew Reeves
Bill Erickson says
Yep, go to Settings > Reading and increase the number of posts displayed per page.
Matthew Reeves says
Wow, that something I should have known.
I usually only use wordpress as a small business cms, typically without a blog.
Thanks!