Simple Real Estate Pack for WordPress

Simple Real Estate Pack Thumbnail

Table of Content

Current Version: 1.2.3 [Preview Video] [Download] [Support]

About Simple Real Estate Pack

Simple Real Estate Pack is a package of real estate tools and widgets designed specifically for real estate industry blogs and web sites. The plugin includes mortgage and home affordability calculators, closing cost estimator, live mortgage rates, Trulia and ALTOS statistical charts, local schools, local rental median rates and google maps embedding functionality. Optionally, Simple Real Estate Pack can function as an extension for Great Real Estate (GRE) plugin, and will add new mapping and other features to the GRE if it's installed. This pluging also cun be extended and attached to any other plugins via an API. Take a look at live example of this plugin at

Included Features

  1. Calculators [Video]
    • Mortgage Calculator (widget and shortcode)
    • Affordability Calculator (widget and shortcode)
    • Closing Costs Estimator (widget and shortcode)
  2. Schools [Video] - shortcode widget provides a list of schools within selected location (via API). Can group schools by type, grade level, school district or zip code.
  3. Live Mortgage Rates via Zillow API (widget and shortcode).
  4. Rent Meter (widget and shortcode) - provides median rental rates for selected zip code via Rentometer API.
  5. Market trends [Video] and statistical graphs/charts via and ALTOS Research.
  6. Embed Google Maps [Video] with a click of a mouse with grocery stores, restaurants, gas stations, banks, golf courses and hospitals (optional) within 3 mile radius of the main marker (via Yelp API).
  7. Publish Yelp listings [Video] (shortcode) within 3 mile radius from a specified point into you content. Grouped with tabs by business type (i.e. grocery stores, restaurants etc.).
  8. Walkscore via - available as an extension to GRE as well as via shortcode.
  9. Extension of GRE plugin [Video] (optional) - mapping local grocery stores, restaurants, gas stations, banks, golf courses and hospitals within specified radius of the property. Includes property location, contact information, ratings via Yelp API., as well as financial tools and statistical charts.


  1. Unzip and copy the simple-real-estate-pack folder to your /wp-content/plugins/ directory
  2. Activate the Simple Real Estate Pack on your plugins page.
  3. Go to the Real Estate Pack Settings Page and adjust options to fit your needs.
  4. A lot of the functionality of the plugin depends on third party APIs. To take advantage of all the features it's highly recommended that you obtain (free) API keys for each service. Links to the API registration are provided on the plugin's settings pages.


Simple Realty Pack has its own settings section in the WP dashboard on the left hand side. The settings are self-explanatory - mostly they allow you to pre-set values for the calculators and itemized closings costs estimator. Also, you'll be able to obtain and save your API keys to take advantage of the full functionality of the plugin.


Widgets mentioned below are located in the widgets dashboard of your WordPress. All you need to do is to drag them into the sidebars. Every widget also can be inserted into the content area of blog posts or pages via shortcodes. Calculators have their own options/settings page, where you pre-set estimated data like mortgage rates, mortgage term, monthly property taxes, PMI as well as estimated itemized closings costs etc.

Mortgage Calculator

It's a regular mortgage calc with a few extra details that your web site visitors may appreciate. You can pre-set monthly property taxes, home insurance and PMI rates. Usually buyers will not have the exact figures until they are provided with a copy of their HUD statement. This calculator helps buyers to estimate their "real" monthly payments and not just the principal and interest of the loan. Also it provides a detailed loan amortization schedule as well as can use live mortgage rates, currently provided by

Affordability Calculator

This is a very useful calculator that estimates the amount that person should be able to afford to pay for a property. It's a reversed mortgage calculator with a "trick". The main idea behind this calc it to help people to "keep it realistic" when they shop for a home. In many cases people relate their current rent to what kind of mortgage payments they should afford, but often they miss the fact that the mortgage payment will also have to include property taxes, home insurance, and in some cases PMI. All of that adds on top of their loan's principal and interest, which can add a couple of hundred dollars to their monthly payments. Finally people end up looking for homes they can not afford.

The affordability calc estimates the actual maximum amount of monthly payments a person can afford, including all additional payments into it (not on top of it), and calculates the property price based on that. It takes into consideration person's monthly income, debt expenses, current interest rate, down payment (if any), estimated property taxes, insurance and PMI (if applies). The calculator also provides a break down of the calculation process with details and explanations.

Closing Costs Estimator

It's important to educate your clients about a real estate transaction process, so they can clearly understand it. In today's market we have a lot of first time buyers that trying to take advantage of low mortgage rates and federal and state housing programs. Closing cost estimator is a simple itemized calculator that gives buyers a good idea on what kind of out of pocket expenses they should expect when buy a home. It allows agents to pre-set estimated values for each fee according to the vendors they usually use at closing. At the same time, all fees can be adjusted in the front-end of the calculator.

Mortgage Rates

Live mortgage rates widget. Data is obtained via Zillow API.

Maps and Statistical Charts

Statistical charts [Video] are provided by Trulia and ALTOS Research. So far we've noticed that charts from Trulia may not return bedroom specific data for some areas, but it works for larger cities.

Mapping functionality [Video] currently mimics GRE maps and supports only one main marker and one map per page/post.

Extending GRE Listings with Neighborhood Profiles

Simple Real Estate Pack can output information like map, schools, local businesses and market statistics within certain radius of the location of the property listing, presented by GRE plugin.

GRE supports 2 ways of presenting listings:

  1. Via default auto-generated templates of listings summary and individual listings pages.
  2. Via custom templates that have be located inside your theme’s folder.

First Method doesn’t require any HTML or PHP skills, but some knowledge of CSS may be needed.

  1. After GRE and SRP are installed, assure that Permalinks for your website are activated. You can do that via Settings  -> Permalinks. This step is required by the GRE plugin.
  2. Go into GRE Settings. Make sure that the Main Listings Page is selected (if you don’t have one, create a blank one and then select it in the settings).
  3. Listing Summary and Individual Listings Pages must be checked. Leave the rest of the checkboxes unchecked.
  4. Make sure that comments and trackbacks are deactivated on your Main Listings Page and all individual listings as well.
  5. That’s it – SRP information should appear below each listing on the individual listing pages. Follow the GRE instructions on how to create and manage listings.

Second Method:  via custom listings templates. In short - you MUST know what you’re doing.

If you don’t know what the “loop” in WordPress is, and how to create page templates – this section will not teach you how to do it, so you better find someone who can do it for you.

  1. Create a copy of your page.php template and name it listingpage.php. It has to be in your theme's folder where other templates are (page.php, post.php etc.).
  2. Open the file to edit, and place the following code at the top of the file:
  Template Name: SRP Listing Page
  1. Place the following code inside the loop of the page template. You might also want to delete everything else from the loop, otherwise you'll endup with some duplicate content on the same page:
	  include (SRP_DIR . '/templates/listing_page.php');
  1. Now you should be able to use SRP Listing Page template from the drop-down selection list when editing your listings.

Using SRP Neighborhood Profiles in Custom Templates

Assuming that a number of values that refer to property location will be passes to your custom template, you need to define the following global variable as an associative array with preset keys followed by the srp_profile() function:

  $srp_property_values = array(
	  'lat' => '',
	  'lng' => '',
	  'address' => '',
	  'city' => '',
	  'state' => '',
	  'zip_code' => '',
	  'listing_price' => '',
	  'bedrooms'  => '', //optional
	  'bathrooms' => '', //optional
	  'html' => '', //optional
if(function_exists('srp_profile')){ srp_profile(); } ?>
All parameters are required except the noted ones. The variable's name ($srp_property_values) required to be exact.


Simple Real Estate Pack's API allows developers to add their own widgets to the Neighborhood Profile output. Those widgets will play by the same rules as the built-in ones - they can load statically into the page or via AJAX, can be presented via tabs and their tab names and subtitles can be customized via plugin settings page by the end-user.

This implementation consists of 3 simple steps:

  1. The actual function that returns your widget's content. You can use global $srp_property_values variable to get access to the initial property/location parameters if needed.
function my_custom_srp_widget_content() { global $srp_property_values; something to generate content..

return $content;

  1. The function that initializes your widget and adds all the necessary information about it to the $srp_widgets object:
function my_custom_srp_widget_content_init($init) { $array = array( 'name' => 'widget_name', //lower case and no special characters 'title' => 'My Custom Widget Title', //will used as subtitle within content 'tab_name' => 'Widget Tab Name', //short 1-2 word tab name 'callback_function' => 'my_custom_srp_widget_content', //callback widget content function 'init_function' => __FUNCTION__, //don't change - this is reference to the current function 'ajax' => false, //bool - false or true grants an option for your widget to be loaded via AJAX. 'save_to_buffer' => false, //bool - change to true if your widget's content needs to be cached before the output. For example your widget content function doesn't return the data, but instead outputs it directly. If you change to TRUE, it will cache the output and return in correctl );
$init[] = $array; return $init; } ?>

Note: all parameters of the $array are required. Make sure your _init function references the $init argument and always returns $init.

  1. The last step is to add a filter that will add your new widget init to the object preparation process:
  add_filter('srp_prepare_widgets_object', 'my_custom_srp_widget_content_init');

Note: if you want to change an order in which widgets load, simply add 3rd numerical parameter to the filter. Keep in mind that Google Map is set to load first (and should stay that way), due to some unsolved issue.


Every single widget can be inserted into a blog post or page content via shortcodes. Besides that, each shortcode has a number of attributes that you can manually pre-set to your needs, for example: mortgage amount, down payment, mortgage term etc. Most these shortcodes can be generated via widgets in the page/post editor dashboard.

Available Shortcodes and their Usage

Mortgage Calculator:

Usage: [mortgage {attributes}]


    required: price_of_home=" " interest_rate=" "

    optional: title=" " before_title=" " after_title=" " down_payment=" " mortgage_term=" " width=" "

Affordability Calculator:

Usage: [affordability {attributes}]


    required: interest_rate=" "

    optional: title=" " before_title=" " after_title=" " width=" "

Closing Cost Estimator:

Usage: [closingcosts {attributes}]


    optional: title=" " before_title=" " after_title=" " loan_amount=" " width=" "

Rental Rates Meter:

Usage: [rentmeter {attributes}]


    optional: title=" " before_title=" " after_title=" " citystatezip=" " beds=" " rent=" " width=" "


Usage: [schoolsearch {attributes}]


    optional: location_title=" " city=" " state=" " zip=" " lat=" " lng=" " distance=" " groupby=" " output=" "

Important: One of the location attributes has to be defined, for example zip code OR lattitude and longitude. Also, attribute distance will only work with lat and lng coordinates.

Attribute groupby can have the following values: zip, gradelevel(default), schooltype, schooldistrictname.
Attribute output can have the following values: table(default), list.


Usage: [yelp {attributes}]


    required: lat=" " lng=" "

    optional: radius=" " output=" " sortby=" " term=" " num_biz_requested=" " ajax=" "

Attribute output can have the following values: table(default), list.
Attribute sortby can have the following values: distance(default), name, avg_rating.
Attribute term can have the following values: grocery, restaurants, banks, gas_stations, golf, hospitals.

Google Map:

Usage: [srpmap {attributes}] Location description. [/srpmap]


    required: lat=" " lng=" "

    optional: width=" " height=" "


Usage: [walkscore {attributes}] Location description. [/srpmap]


    required: ws_wsid=" " ws_address=" "

    optional: ws_width=" " ws_height=" " ws_layout=" "

Neighborhood Profile:

Usage: [srp_profile {attributes}]


    required: lat=" " lng=" " address=" " city=" " state=" " zip_code=" "

    optional: listing_price=" " bedrooms=" " bathrooms=" " html=" "


*Rental Rates Meter requires an API Key.

NOTE: If you selected to use live rates in calculators via Mortgage Rates options, the interest_rate attribute will be ignored.

Comments are closed! To ask a question, report a bug or make a suggestion, please use Support Forums at

Al, I can't really telly

Al, I can't really telly anything about this off the top of my head since I can't reproduce this problem. Try de-activating the widget_logic and pages_plus, and see if that makes a difference. I'm not familiar with pages_plus either.

is there a conflict with

is there a conflict with style between the theme and plug in that causes the content area font size to change?

It might be. There is always

It might be. There is always a chance that plugin's styles will be affected by the theme. But things like font-size is easy to fix - you can add additional rule to your theme's style sheet to adjust that.

I can install this plugin

I can install this plugin ok, but when I try to say enter my YELP api, and get an error that says options.pgp not found. The plugin is trying to go to wp-admin/options.php

Any idea of what I can do?

Then when I try to use the icon on a post or page, I just get a blank box.

I am running wpmu 2.9.2

Thank you.

-- Ed

this is what i found for the

this is what i found for the options.php not found error

The correct solution is to contact the plugin author and tell them they have to update their plugin to use the new whitelisted options in MU as that will become the standard in WP too.

There's a HUGE GIGANTIC SECURITY HOLE leaving the options page from WordPress on a WordPress MU site. Really. Your users will be able to change any setting in your options table that they like.

So please, contact the plugin author and give them this link ( Encourage them to update their plugin. If you must pay someone, pay the original author of the plugin.

Thank you for the heads-up

Thank you for the heads-up Ed. We'll definitely consider an update.

Yeah, looks like the Google

Yeah, looks like the Google map isn't working for me. Though, when I tried doing it manually, it worked just fine!
kindly check that out....

- liam of omaha homes for sale

I just wanted to say WELL

I just wanted to say WELL DONE on this extension for the Great Real Estate plug in. If you don't hear it enough, you should. This is the kind of fine work and positive contribution to the RE industry that is to be commended.

I'm a web developer for over 15 years now. I set out to build an RE site for a client and was rudely awakened to the type of quality out there. Just the truth. After being ripped off for one program that didn't work as described and wasn't documented at all, and finally crashed my clients blog I went on a search.

My opinion is that the Great Real Estate plug in in combination with yours provides the best solution for those who want to establish a top quality Real Estate web site.

For as long as you continue, I will utilize and speak positively of your solution. I haven't found any problems yet but If I do, I will ask. It's all very well documented.

Thank you.
Mark Hamilton - Web Developer

Hey Max, I just read though

Hey Max,

I just read though pretty much all your forum. Great information. Actually, truth be told it was your Simple RE package that made me take a second look at Great RE. You are an artist! I'm building a site now that incorporates both packages and I'm having a very strange problem. I've looked in both forums and it appears I'm the only one. Everything is working great so far except the tabs on the listings page.

The work great in Firefox but not at all in Internet Explorer, same with the image slide shows. Firefox, beautiful, IE, it's like clicking on an image that is attached to the same larger image which opens in a new window.

Any ideas? Have you run into this before?


Thanks for the compliments

Thanks for the compliments and your comments, Mark! It's greatly appreciated.

First of all, let me say that there might be a conflict between your current theme's CSS and my plugin's. This kind of things happen a lot. I'm actually working on an upgrade where I'll try to maximize the stability of the CSS.

Make sure you turn off the Great Real Estate plugin's CSS from the settings page to avoid any possible conflicts there.

As for the images opening up in a new window instead of the thickbox effect - this functionality is covered by the NextGen Gallery plugin. Make sure you go into its settings and select "thickbox" under the "Effects" section. This is what makes our images to open up as overlays on the current screen, instead of a new window/page.

P.S. With the current CSS thought, you might need to tweak it to perfectly work with your theme. Hopefully the upgrade will solve most of those issues.

Any plans to integrate

Any plans to integrate Canada in the functionality of this fantastic plugin?

I'm know there would be a lot of Canadian realtors who would love to use this.

Hi Mark, We would definitely

Hi Mark,

We would definitely be willing to look into this at some point. Right now we don't even know would it take to make it work for Canadian market as far as mathematics of mortgage calculations and rates.

Hi, At the least, would it


At the least, would it be possible to allow users to select Provinces in the "State" drop-down for Google Maps dialog box? Yelp and Walkscore support Canada, so it should work right off the bat.

That's a good point. We'll

That's a good point. We'll try to include that into one of our future updates.

Hello, I can't figure out


I can't figure out how to make the short codes work for any of the rental rates, yelp and walkscore.

I've followed the directions and added in the required attributes, but I can't seem to get any data on the page.

I'm trying to create a 'Local' page and want to have the yelp reviews, current rental rates and walkscore on one page, or at least a series of subpages under 'Local'. Is this not possible?



Sheryl, you should be able


you should be able to use widgets in the page/post editor panel. Here is a video demonstration on how to do it.

We have looked around for a

We have looked around for a simple mortgage calculator and it looks like the SRP Mortgage Cal. is just what we are looking for. We have installed it into the sidebar on our wordpress website and it looks great! However, once the user begins to enter information (ie: cost of home, down payment, etc.) the auto-populated output fields are all jumbled together. Is there any way we can resize the output fields?

Mike, looks like you have a

Mike, looks like you have a rule to align text to the right in your sidebar and it affects the results. Add the following rule to your theme's style.css:
.srp_additional-info { text-align: left; }
That should fix your problem.

Love this plugin. Have one

Love this plugin. Have one issue. I am using this plugin with a custom template (not GRE) and when I use the Neighborhood shortcode it places the code on the top of my post overlaping my content intead of where I placed it in the content. I believe it is looking for some type of GRE hook to place it in. Is there a way to use the neighborhood shortcode and have it produce the tabs at the exact location that I place it in the content?



Hi Louis, It probably would

Hi Louis,

It probably would be much easier to use the SRP API directly in your template. All you need to do is to pass an array of values and insert a function. Take a look at the readme.txt for more details.

Hope this helps.

I'm still vastly confused by

I'm still vastly confused by this. I am pretty good at HTML, CSS, but still learning PHP a bit but I do understand OOO from .net and c#. So here is my question. I like the neighborhood profile just how it is shown on the example on this site, it just doesn't appear properly on the website that I am currently creating. The neighborhood profile shows on the top of the content rather than where I place it in the content. Do I still need to do the API even if its just a location issue that I am dealing with?

Here is the website.

The neighborhood content should be at the bottom of the content rather than on the top.

Thank you so much for your help.

Louis, I just released an


I just released an update version 1.0.1 which is available here

This should solve your problem with the shortcode.

Great it works now.

Great it works now.

Awesome! :)

Awesome! :)

I just upgraded to your

I just upgraded to your latest upgrade.
GRE maps quit working.
I needed to uninstall and reinstall 0.9.3......have no idea why?

You need to update the

You need to update the listing page template. Read the instructions.

Max, Does the 1.0.3


Does the 1.0.3 release affect only a few core files so I don't have to overwrite custom formating changes I've made to several files? In the new release, they are all dated 6-1-10.. Thanks for this excellent plug-in!

Byron, you can see the

Byron, you can see the affected files in the Track Browser here - they are dated and versioned based on commits

After initial install,

After initial install, everything was working, then on each page, I am getting the following: Error: invalid or missing ZWSID parameter.

Please help!!!

Kasey, if you installed it

Kasey, if you installed it for the first time, there is a newer version that was released last week - 1.0.3 Make sure that's the version you're using. Update your Zillow API Key and save the settings. I upgraded from an earlier version and this error came up - just go to the Zillow API settings page an save it again. It should fix it.

Please disregard my comment

Please disregard my comment from a last week. I got the plugin to work and display the Yelp listings properly. I think the WP theme I was previously using -- "Big City" -- was incompatible with SRP.

I've since upgraded to the Thesis theme...and SRP seems to be working.


Hey, There seems to be a bug


There seems to be a bug in one of your widgets. In the closing costs widget you seem to echo "$before_widget" twice which on about 50% of templates out there will cause a pretty big problem :).

The fix seems to comment out line 209 in srp-widgets.php.

Great plugin, one of my business partners loves it. Keep up the good work :).

Hi Dan! Good catch. Thank

Hi Dan! Good catch. Thank you! Weird, but in my case (v 1.0.3) it was line 204.

I almost got it but this

I almost got it but this theme has had me confused for 3 days now

Dennis, you might want to

Dennis, you might want to turn off all the checkboxes that refer to styles under Great Real Estate Settings. Also, make sure the styles are active under Simple Real Estate Pack plugin (on the first page of the settings). This way it will use stylesheets that come with the SREP plugin instead of the GRE. You might need to add custom styles to the main listings page with the list of all the properties.

I had SRP working perfectly

I had SRP working perfectly (just the mortgage and affordability calcs, all i needed) and then I moved the site and they broke. i have reinstalled several times, even removed all traces of SRP from the DB and source code with no luck. I'm getting an object expected error in IE when the plugin is activated, it seems like the JS isn't connecting bc the fields all show up just no calculating occurs when i plug in #s

Webpage error details
Message: Object expected
Line: 123
Char: 1
Code: 0


Hi there, this error doesn't

Hi there,

this error doesn't make much sense to me. Can you try disabling all plugins and only activating the SRP? See if that would work.

I read about akismet causing

I read about akismet causing problems so i deactivated that to no avail and then i began deactivating everything but absolute essentials with no luck still. the fields show but the JS is not working. i even tried adding the JS call to the header. i am going to recreate the site and try from scratch, i'm out of ideas. any help is greatly appreciated.

thanks, tom

Are there any JS libraries

Are there any JS libraries that load with the theme other than jQuery? (I think I saw mootools) If so, try de-activating them and see if that changes anything.

thats not really an option

thats not really an option for me, plus it was working perfectly, i just checked it one day and it was broken. Maybe the client upgraded or changed something but ive reinstalled several times and flushed the DB to no avail. I haven't upgraded to WP 3.0 would that be a potential fix? thanks!

this is what firebug console

this is what firebug console is saying: srp_refresh_tabs is not defined
[Break on this error] srp_refresh_tabs("#srp-tab-wrap");

The only reason this message

The only reason this message can exist if the JS file with that function is not loading on the page. When you place a mortgage calculator on a page, make sure the srp-MortgageCalc.js is loaded in the source code - it should be at the very bottom. Oh, does your theme has a wp_footer()? It's required to load that file.

Hi there, I am still unable

Hi there, I am still unable to get this to work, i've tried load the JS in footer, but i don't think that would have mattered as i don't think its possible to get a JS error if its not connected. this is the line in the srp.js that is reporting an error:


I am out of ideas and time and my client is asking about it, I'm stumped it was working just fine and then one day it just stopped. i know that doesn't normally happen without some sort of interaction but i have cleared it out and reinstalled several times and wiped the DB of any traces. If you could help me out with this I will compensate you for your time, I have work piling up and this is stretching the limits of my current skillset in Wordpress / JS

thank you much,

Hi Tom, I understand your

Hi Tom,

I understand your pain, but I'm not sure how to help you. I personally can't recreate the same error on neither of our sites. I asked you to try to disable mootools and other plugins just to test and see if that changes anything, but you said it's out of the question. I browsed through your client's site in Firefox and it keeps reporting this error:

Error: this.element is null
Source File:
Line: 347

Another problem I noticed is that you're loading 2 different Google Maps API versions on the same page.
This one, I think, is loaded by the SRP, which is API v.3

And this API v.2 is loaded later (I assume by Google Maps for WordPress plugin):

From what I heard, they can't coexist on the same page and will result in a conflict.

BTW, you have the prototype JS library loaded twice as well.

I guess you'll have to limit your selection of plugins to avoid multiple libraries to be loaded at the same time. You can embed Google Maps with SRP plugin as well as without a plugin at all via iFrame.

Hope this helps.

thanks a bunch, i'm new to

thanks a bunch, i'm new to wordpress hopefully this will help. btw i set it to notify me of updates and i never got any emails... thanks again

We might have a problem with

We might have a problem with notifications... I'll look into it.

after doing a clean install

after doing a clean install and rebuild i tracked the issue to be with the Google Analytics code. I had c&p'd directly into the footer, after switching to the template code insert both as working.

thank you`

Thanks for letting us know,

Thanks for letting us know, Tom. Something to keep in mind for the rest of us. I'm really glad you figured it out :)

thanks for your support can

thanks for your support

can i throw up a backlink for all my trouble lol

[edited by admin]

thanks for the great plugin

You're welcome. As for the

You're welcome.

As for the backlink - you already have a few under your name every time you posted, no need to push it. And of course, you're welcome to throw one or two back at us :)