At Emphasys Software, after a lot of discussion and debate, we decided to move into the residential Real Estate sector. It's not that we weren't already in real estate – after all, we've been building software for Public Housing Authorities and Housing Finance Agencies for decades. But that's the public sector and government organizations. This would be different. And the one thing we agreed, early on, was that whatever we did, we wouldn't do web sites for residential real estate. Because it didn't make money. There were millions of competitors. And most importantly, competition was hyper-local, and we weren't going to invest in a national strategy to fight a local fight.
But after a year in the space, my boss came to me and said he wanted us to build a real estate offering. It would start with brokerage solutions. But soon it moves to web sites. It was my first chance to introduce WordPress into our organization, and I was happy to talk about a potential solution, since it would mean we wouldn't have to build our own content management system (CMS). WordPress could do it all for us. After all, real estate agents and brokers were already looking at using WordPress for this kind of thing.
I remember the call, talking to my boss about WordPress. I explained the benefits of themes and plugins and suggested we could write our own plugin and theme so that we could make maintenance really easy. He said he'd review the plugins over the weekend. HA! He didn't realize how large that repository would be.
Shortly after we started, we decided that we'd use MultiSite – which was just coming onto the scene – as well as a single theme to bring the solution together. This is the story of how we did it.
There are solutions in Real Estate for web sites that let you drop an iframe in the site. That's just crap. You can't get any of that content indexed for your site, so what's the point? So right off the bat, we knew we wouldn't go that route. There are other solutions in Real Estate, specifically for WordPress, that let you pull MLS listings onto your site (so that they can be indexed) even if they're not in your database. The way it works is that the url that's called gets intercepted and a call goes out in the background and pulls the data to the site to display on the page. This gives you the benefit of having the content on the site, but presents it's own challenges. First, unless you put links on your pages, there's no way a spider will pick up and index that content. Second, performance is driven by some other site, not your own hosting infrastructure. Lastly, you are left with the listings that the provider offers you – in terms of slicing and dicing data. If you only manage listings in a marina, but the MLS provider doesn't segment the data that way, you're hosed.
MLS Listings moved from the Cloud to the WordPress Database
So the first part of our solution is an approach that moves the listing records from a central server (pulled from MLS integrations and stored in it's own database in the cloud) to a site's specific WordPress database. This makes sure that you can determine any segmentation of data you want to import, which is good. It also puts listings on the specific site, so indexing happens easily. And lastly, performance is based on your hosting configuration. So if you're using WPEngine, for example, and the whole database is in RAM, you'll have a lightning fast site.
MultiSite – One Site that Rules them All
As we started thinking about our approach, the biggest deal for us was the ability to let a Broker have a site that could then spawn agent sites. By doing it that way, Brokers could “offer” their agents more than a single agent profile page. So it just made logical sense to set up the solution as a multisite solution. We could deploy custom plugins once (and update them once) and make sure our WordPress installation was current in a single click.
Solving Search – Because the native search sucks
If you've used WordPress before, you know the search isn't great. And while there are solutions out there, in the form of plugins, etc, the issue in Real Estate is that people want more than just linked lists. They don't want to only see 3 bedroom homes. They want to see 3 bedroom homes under $400,000 that have more than 2 bathrooms and are in the neighborhoods they care about. That means the search needs help. So we solved it by stepping around WordPress completely. Instead, we create our own indexed table of meta-data and hit that for all searches. Then, we just send the post IDs back to WordPress so that it can display the posts correctly.
One Single Theme for Everything
Probably the most interesting aspect of this solution – which supports brokers like the one we have in Toronto with 140 agent sites attached to it – comes from the internal maintenance aspect of only having one theme that does everything for us. I know some WordPress gurus would suggest a series of child themes that clients could pick, but we haven't found the need to have that kind of complexity. Instead, we did something different. While we know that StudioPress is well liked in the real estate world, we went a different approach and used stuff from the guys at WooThemes.
Let's start by saying that the WooFramework (even if it's neglected some in the Real Estate space) is awesome. It's not only well written but it's feature rich. It isn't just clean code. It's packed with tons of features – which they've recently pulled out and made available to a lot of different sites/themes. We had the same idea, about 8 months ago, and did something like it, without their direct knowledge or support. The bottom line was that they created features that some could argue are more plugin-like than theme-oriented. But we needed those features and we didn't want to support tons of additional plugins (and deal with code conflicts). The guys at Woothemes also make sure that their features never conflict with each other (from a naming, or code libraries perspective).
So we just pulled features and code from various themes (none of them their own Real Estate theme). We loaded it up into a single, fancy, and rich control panel, and then taught our staff how to use it to create a variety of looks. The results were awesome. Here are 4 quick sample looks (some will look really familiar) that are all driven by the same theme.
Sure, some will look similar to each other, but that's just because we were modeling them after existing themes we found online. We can also do more than simple sliders, and drop forms into them, like on this site.
The best part of it, as I mentioned before, is that the staff can create all these different looks by using a single back end control interface.
That's our Story, and we're Sticking to it
141 sites as part of a single multisite. 141 sites that all use the same theme, but look different. 141 sites that can be upgraded and updated with a single click. 141 sites that can be managed by folks that don't have to be code gurus. It's not the standard real estate approach using WordPress, but it works for us, and most importantly, it works for our customers.