Our CT IDX Pro+ WordPress plugin offers MLS data coverage across all 50 states. That’s 650+ MLS Markets and we’re adding more all the time. It’s a direct plug-and-play IDX, with automatic site integration, giving you a beautifully designed cohesively branded website from end to end.
It also includes saved searches & alerts with email and SMS, favorite listings, compare listings, and recently viewed listings all packaged with CT IDX Pro+, making it an all-encompassing plugin that you can use on any WordPress website.
This guide is here to help you understand the process and configuration of the CT IDX Pro+ plugin, ensuring you efficient integration of MLS data into your website.
If you’re a legacy customer of CT IDX Pro and have an active license open a live chat with us to discuss upgrading to CT IDX Pro+.
Step-by-Step Process for CT IDX Pro+ Plugin Integration
- After Purchase & Receiving Initial Paperwork:
- After you complete your purchase, we will send over paperwork or instructions depending on your MLS board in a separate email.
- Submission and Approval Waiting Period:
- After you return the paperwork, we’ll submit your information to the local MLS office for approval.
- Please allow 5-7 business days for this process; the duration can vary based on the office’s workload.
- Post-Approval – Setting up Your Plugin:
- Upon receiving MLS approval, we will reach out to you via email for your WordPress admin login details to access your site.
- Plugin Installation:
- Our team will then proceed with the installation of the CT IDX Pro+ plugin on your WordPress site.
- This typically happens the same day as receiving your site’s admin details.
- Completion and Confirmation:
- After the successful setup, we will notify you via a confirmation email that your site is now equipped with the CT IDX Pro+ plugin and is ready for use.
Plugin Requirements
- PHP 8.0 or greater
Plugin Install
Although we handle the initial installation of CT IDX Pro+, the following is for reference.
- Login to your WordPress Admin
- Go to Plugins > Add New
- Upload the zip file you downloaded from your Account Dashboard > Downloads panel
- Activate the plugin
Plugin License
- Login to your Account Dashboard
- Go to License Keys > find CT IDX Pro+
- Copy your License Key
- Navigate back to your site’s admin > Settings > CT IDX Pro+
- Paste your License Key > Save Changes
- Click Activate License
Staging Sites License Usage
Staging websites are permitted under the following conditions:
We fully support staging environments offered by several popular hosting services in the WordPress ecosystem. Below is a list of hosting providers that provide custom staging environments:
- Cloudways (Recommended Hosting Provider)
- WP Engine
- InstaWP
- Kinsta
- GoDaddy
- FlyWheel
- BlueHost
- HostGator
- SiteGround
If your hosting provider is not listed, they may use a standard method for creating staging sites. In such cases, our Standard Detection rules will apply without the need for custom rules.
Standard Staging Environments
For hosting providers that do not offer a tool to create staging environments or use a typical URL structure, we support the following subdomain patterns as valid staging site URLs under your license:
*.staging.example.org
*.test.example.org
staging-*.example.org
dev.example.org
These patterns ensure your staging sites are covered under the CT IDX Pro+ license when using common subdomain conventions.
Building Search Links “Find a Home”
You’ll use Appearance > Menus to build out your navigation. More on the Menus screen can be found here.
Examples:
- All Listings or “Find A Home”:
https://yourdomain.com/property-search/listings - Active & San Diego:
https://yourdomain.com/property-search/listings?zip=92101&status=active - Coming Soon:
https://yourdomain.com/property-search/listings?status=coming-soon - Has Pool:
https://yourdomain.com/property-search/listings?pool=true - 3 Beds:
https://yourdomain.com/property-search/listings?minBedrooms=3 - Active, La Jolla, 2+ Beds, $500k to $650k:
https://yourdomain.com/property-search/listings?status=active&zip=92037&minBedrooms=2&minPrice=500000&maxPrice=650000
Quickly & Easily Build URLs
To quickly & easily build out URLs, do the following:
- Go to the front end of your site and do a physical search for what you want
- Copy the URL
- Add that URL to your menu item, button, link, etc…Or, share them with your leads via email, social media, messaging apps, etc…
Tip: To share custom-drawn areas with your leads, start by searching and using the draw function. Afterward, simply copy the URL and share it with them.
Settings
We handle the initial install of the CT IDX Pro+ plugin, but there are a few settings that you’ll need to configure.
-
- Login to your WordPress Admin
- Go to Settings > CT IDX Pro+
General
- License Key
This is the key that controls the licensing of the plugin, if this is removed or goes invalid for any reason the IDX plugin and all of its features are disabled. - API Key
Pre-set for connectivity to IDX data, requiring no modifications. - MLS ID & Office
Internal identifiers that are pre-set and need no adjustments. - Domain
Reflects your website’s domain name. - Global Assigned User
Assigns a default user profile to all IDX listings on your site for consistent representation. The assigned user will be shown with their corresponding contact information, profile picture, etc…more on that in the Agents section of the documentation. If you’re running a brokerage site with multiple agents we suggest creating an “Office” and then selecting from the provided options:- Display Global Assigned User Information (default):
This option displays the information of the globally assigned user. - Display Agent Information from MLS:
This option retrieves and displays agent information directly from the MLS. - Display Agent Information from WordPress Users:
This option matches agent users’ license numbers with those from the MLS and displays the corresponding information.
- Display Global Assigned User Information (default):
- Google Maps API Key
This is for the mapping, to get your API key please see our Google Maps documentation. - Google reCAPTCHA
This is for form spam protection, to get your public and secret keys you must first register your site with Google reCAPTCHA. During registration, choose reCAPTCHA Type > V3 and follow the simple steps provided. This process will give you the necessary keys for integration. - Yelp
This is to display “What’s Nearby” data in your listings detail view, to get your client ID and API key from Yelp here. - Zapier
Optionally use a webhook to send form data to Zapier which you can then push to outside services and applications.- Log into your Zapier account and create a new Zap
- For the trigger, select “Webhooks by Zapier”
- For the event, select “Catch Hook”
- Click continue twice until you get to “Your Webhook URL”, copy it
- Go to your WordPress Admin > Settings > CT IDX Pro+ > General > paste into “Zapier Webhook URL” > Save Settings
- Go back to Zapier > click Test Trigger, confirm you see the data you just submitted
- Continue to set up your Action, and finalize your new Zap
- Follow Up Boss
Directly sync user registrations, forms, and lead activity to your Follow Up Boss CRM account.- Login to your WordPress Admin
- Go to Settings > CT IDX Pro+ > General
- Enable Follow Up Boss > select Yes
- To generate your API Key please see this article
- Once you’ve done that copy & paste it into the API Key field
- Next to get your Pixel Code please see this article
- Once you’ve done that copy & paste it into the Pixel Code area
- SMS Alerts
This feature allows users to opt-in to receive new listing alerts via SMS processed through Twilio.- Twilio SID: Input your Twilio Account SID here. This is a unique identifier for your Twilio account.
- Twilio Token: Enter the authentication token from your Twilio account. This token, along with the SID, is used for secure communication with Twilio’s API.
- Twilio Number: Provide the phone number assigned to you by Twilio. This number will be used as the sender for outgoing SMS messages.
Search
- Hide/Show Search Fields for Property Types
Allows you to hide/show property types in the listings search. - Show only office listings in search results
Allows you to limit the listings search results to only your office listings, no general MLS data will be shown.
Style
- Primary Color
Use this to change the plugin’s default blue (buttons, accents) to the branding of your site.
Login / Register
- Log In Redirect
Choose between “Current Page” (Default) or “Specific Page”. - Log In Redirect
Choose between “Current Page” (Default) or “Specific Page”. - Forced Registration
Optionally enable forced registration for users after a certain number of listing views. - Terms & Conditions Page
Select the page you’d like to use for displaying terms and conditions.
Forms
- Success Message
The message displayed when the Request Info or Schedule a Tour forms are successfully submitted.
Emails
The following settings apply to the listing alert emails.
The Listing Detail > Schedule Tour & Request Information forms will be sent to the Global Assigned User as default. If you have our CRM plugin activated (Contempo Leads Pro) the forms act as lead magnets that feed leads into the system, reference How Leads Are Collected. If you’d like normal emails to be sent you can deactivate the Contempo Leads Pro plugin and all forms will automatically act in the normal fashion.
- Logo
This will be displayed in the new listing alert emails to your leads. - From Name
This should be your name or your office’s name. - From Email
This will act as the “from” and “reply-to” addresses. - Header
This is the text displayed in the header of your new listing email alert. (HTML Allowed: h1-h6, p, a, strong, em, br, img) - Footer
This is the text displayed in the footer of your new listing email alert. (HTML Allowed: h1-h6, p, a, strong, em, br, img) - Company Info
This is the company info displayed in the header of your new listing email alert. (HTML Allowed: h1-h6, p, a, strong, em, br, img)
Pages
The CT IDX Pro+ plugin introduces several essential pages to enhance the user experience on your real estate website. These pages allow users to access various features such as viewing recently viewed properties, managing favorite listings, and setting up saved searches and alerts. Here’s an overview of these pages:
It’s important to note that these pages are exclusive to logged-in / registered users.
Recently Viewed
This page displays a list of properties that a user has recently viewed on your website. It’s a convenient way for users to revisit properties they are interested in without having to search for them again.
URL: /my/recently-viewed
Favorite Listings
Users can save their favorite listings on this page for easy access. It serves as a personalized space where users can keep track of the properties they are most interested in.
URL: /my/favorite-listings
Saved Searches & Alerts
This page allows users to view and manage their saved searches. Users can also set up alerts to receive email or SMS notifications when new listings match their search criteria, ensuring they don’t miss out on potential properties.
URL: /my/saved-searches
Compare Listings
The Compare Listings feature isn’t accessed through a direct URL. Instead, users utilize it through the Favorite Listings page. Here’s how it works:
- On the Favorite Listings page (/my/favorite-listings), users can select up to five listings they are interested in by checking the “Compare” box next to each listing.
- After selecting the desired listings, users can click on the “Compare” button.
- This action redirects them to a comparison page where the chosen listings are displayed side by side, facilitating an easy comparison of features, prices, and other essential details.
URL: Not directly accessible, but integrated with Favorite Listings
Elementor Widgets
All of the available widgets are under the “CT IDX Pro+” section.
CT IDX Listings Search
This widget allows you to choose from a Single Field (with typeahead) or Multi (typeahead, price, beds, baths, property type, more…).
CT IDX Listings Grid
This widget allows you to display a grid of listings based on your chosen parameters.
To show an individual agent’s listings you select the office under “Data”, then enter the agent’s license number (screenshot). This option only works for agents under your approved & connected office.
CT IDX Listings Carousel
This widget allows you to display a carousel of listings based on your chosen parameters.
To show an individual agent’s listings you select the office under “Data”, then enter the agent’s license number (screenshot). This option only works for agents under your approved & connected office.
CT IDX Listings Map
This widget allows you to display a map of listings based on your chosen parameters.
To show an individual agent’s listings you select the office under “Data”, then enter the agent’s license number (screenshot). This option only works for agents under your approved & connected office.
CT IDX Item Grids
This widget allows you to display beautiful grids of neighborhood or property type data from the MLS in layouts of 2, 3, 4, 6, and 8, with background image upload.
Shortcodes
Recently Viewed
This shortcode will display a logged-in user’s recently viewed listings.
[ct-idx-pro-plus-recently-viewed]
The plugin automatically generates a URL (/my/recently-viewed) for this view, so you don’t need to create a page manually. However, a shortcode is available if you prefer to set up a custom page with this feature.
Favorite Listings
This shortcode will display a logged-in user’s favorite listings.
[ct-idx-pro-plus-favorite-listings]
The plugin automatically generates a URL (/my/favorite-listings) for this view, so you don’t need to create a page manually. However, a shortcode is available if you prefer to set up a custom page with this feature.
Saved Searches & Alerts
This shortcode will display a logged-in user’s saved searches with options for email and SMS alerts.
[ct-idx-pro-plus-saved-searches]
The plugin automatically generates a URL (/my/saved-searches) for this view, so you don’t need to create a page manually. However, a shortcode is available if you prefer to set up a custom page with this feature.
CT IDX Listings Search
This shortcode enables you to choose from a Single Field (with typeahead) or Multi (typeahead, price, beds, baths, property type, more…).
[ct_idx_pro_listings_search display_type="single"]
display_type
CT IDX Listings Grid
This shortcode enables you to display a grid of listings based on your chosen parameters.
[ct_idx_pro_listings_grid property_types="single" min_price="500000" city="la-jolla"]
Common Parameters for Listings Grid:
The following parameters can be used to customize the display of listings in grid format:
- Basic Filters
number="12"
: Number of listings to display (1-250).sort="-list_date"
: Sorting options:-list_date
(newest),+list_date
(oldest),-price
(highest),+price
(lowest).agent_id=""
: Filter by agent license number.listing_office_uid=""
: Filter by specific office UID.mlses=""
: Filter by MLS numbers.mls_listings=""
: Comma-separated list of specific MLS listing numbers.
- Price Filters
min_price="250000"
: Minimum price (no currency symbols or separators).max_price="950000"
: Maximum price (no currency symbols or separators).
- Property Characteristics
min_bedrooms="3"
: Minimum number of bedrooms.min_bathrooms="2"
: Minimum number of bathrooms.min_sq_ft="1500"
: Minimum square footage.max_sq_ft="3000"
: Maximum square footage.min_lot_size="0.25"
: Minimum lot size in acres.max_lot_size="1"
: Maximum lot size in acres.
- Property Types and Status
statuses="active,pending,backup,coming-soon,sold,rented,withdrawn,other,expired,cancelled,deleted,unknown"
: Comma-separated list of statuses.property_types="single,condo,townhouse"
: Comma-separated list of property types (see full list below).
- Location Filters
state="CA"
: State abbreviation.city="San Diego"
: City name.zip="92101,92065"
: Comma-separated zip codes.subdivisions="Desert Princess,Royal Palms"
: Comma-separated subdivision names.neighborhood_name="Downtown"
: Neighborhood name.
Available Property Types:
single
(Single Family Home)condo
(Condo)townhouse
(Townhouse)duplex
(Duplex)triplex
(Triplex)multi
(Multi-Family)mobile
(Mobile/Manufactured)ranch
(Ranch)land
(Land)commercial
(Commercial)lease
(Lease)other
(Other)
Notes:
- Optional Parameters: All parameters are optional, and the default sorting is by newest listings first (
-list_date
). - Price Values: Use plain numbers without currency symbols or separators.
- Comma-Separated Values: For fields like
property_types
andstatuses
, separate multiple values with commas.
CT IDX Listings Carousel
This shortcode enables you to display a carousel of listings based on your chosen parameters.
[ct_idx_pro_listings_carousel property_types="single" min_price="500000" city="la-jolla" link_label="View More" link_url="/property-search/listings/" link_url_is_external="false"]
Common Parameters for Listings Carousel:
The Listings Carousel supports all parameters listed above for Listings Grid with a recommended limit of 12 listings for optimal display.
CT IDX Listings Map
This shortcode enables you to display a map of listings based on your chosen parameters.
[ct_idx_pro_listings_map property_types="single" min_price="500000" city="la-jolla" height="500"]
Common Parameters for Listings Map:
All parameters listed above for Listings Grid are supported by the Listings Map shortcode. Note the following maximum limits for the number
parameter:
- Map Display: Up to 250 listings.
CT IDX Item Grids
This shortcode enables you to create visually appealing grids showcasing neighborhood or property-type data from the MLS. You can choose from layout options such as 2, 3, 4, 6, and 8. Additionally, it offers the functionality to upload background images for these grids.
[ct_idx_pro_items_grid]
{
"state": "CA",
"city": "San Diego",
"neighborhood_name": "",
"title": "Downtown San Diego",
"image": "https://example.com/downtown.jpg",
"link_url": "/property-search/listings/?zip=92101&status=active"
},
{
"state": "CA",
"city": "La Jolla",
"neighborhood_name": "",
"title": "La Jolla",
"image": "https://example.com/la-jolla.jpg",
"link_url": "/property-search/listings/?zip=92037&status=active"
}
[/ct_idx_pro_items_grid]
Location Parameters
Each item in the grid can have the following location parameters:
state="CA"
: The state abbreviation for this grid item.city="San Diego"
: The city name for this grid item.zip="92101,92065"
: ZIP code(s) for this grid item. Multiple ZIP codes should be comma-separated.neighborhood_name="Downtown"
: Neighborhood name for this grid item.subdivisions="Desert Princess,Royal Palms"
: Subdivision names for this grid item. Multiple subdivisions should be comma-separated.
Display Parameters
Each item in the grid can have the following display parameters:
title="Downtown San Diego"
: Custom title for the grid item.image="https://example.com/downtown.jpg"
: URL of the image to display for this grid item.
Login/Register Modal
To trigger the “Login/Register Modal” on your site, attach the class “login-register” to any element, like a button or link. Clicking that element will pop up the modal, enabling users to access login & registration forms directly on the current page.
login-register
Example:
<span class="btn login-register">Login/Register</span>
Sharing Search URLs with Leads
Sharing custom search URLs allows you to provide leads with tailored property listings based on their preferences. Follow these simple steps to create and share these personalized links.
- Initiate a Search: Go to YourDomainHere.com/property-search/listings/
- Configure Search Parameters: Use the provided fields to customize the search according to your lead’s specific needs and preferences.
- Click Search: Click the button with the magnifying icon.
- Copy that URL: Copy the URL directly from the address bar.
- Share that URL: Via email, social media, messaging apps, etc…
Tip: To share custom-drawn areas with your leads, start by searching and using the draw function. Afterward, simply copy the URL and share it with them.
Creating New Listing Alerts for Leads
For real estate professionals looking to maximize their efficiency, setting up lead alerts can significantly enhance your responsiveness to market changes and client interests.
- Create a New Lead: Go to your WordPress Admin > Users > Add New User > Enter their information, select the role “Buyer” > click Add New User
- Initiate a Search: While you’re logged in go to YourDomainHere.com/property-search/listings/
- Configure Search Parameters: Utilize the available fields to tailor the search according to your lead’s specific needs and preferences.
- Click Search: Click the button with the magnifying icon
- Save the Search: Once the desired parameters are set, click “Save Search”
- Assign the Search to Your Lead: Go to YourDomainHere.com/my/saved-searches/ and assign it to your lead.
If you’re running our CRM (Contempo Leads Pro) plugin you can also create a new lead in YourDomainHere.com/leads-pro/#/leads > Actions > Add New.
Off-Market & Pocket Listings
Off-market and pocket listings offer unique opportunities for showcasing properties outside the conventional MLS listings. With the Real Estate 7 theme, you have the flexibility to manually enter these listings directly into your website’s backend admin. Detailed guidance on adding and managing these listings can be found here.
In addition to manual entry, you also have the option to import listings via CSV for added convenience. Our integration with WP All Import simplifies this process, allowing you to efficiently manage your property listings. Learn more about this feature here.
Furthermore, if you’re utilizing our Real Estate 7 theme, you can access our innovative Single Listing Builder. This powerful tool enables you to create custom templates for pocket listings or exclusive properties. It’s an excellent way to highlight unique properties for prospective buyers or offer an exclusive marketing service to your sellers.
Off-market and pocket listings are not displayed in the IDX listings search. However, you can showcase them on your static pages using the Elementor widgets available in Real Estate 7.
Common Issues & Fixes
If your website fails to display data or encounters other problems, they often stem from several typical issues. Fortunately, these can be quickly identified and resolved. Below, we outline the most frequent problems and their solutions:
- Invalid IDX License Key: This issue often occurs after moving your website from a development to a live domain, requiring an update of your license key. For instructions on how to refresh your IDX License Key, visit How do I update my CT IDX Pro+ license key?
- API Requests Blocked by Bot Protection: In this scenario, contact your hosting provider to whitelist the IP address 2600:3c02::f03c:93ff:fea4:d2ac and contempothemes.com domain.
- Server Caching & JavaScript Minification: This issue occurs when your server caching > JavaScript minification settings are enabled. These settings can interfere with the proper functioning of dynamic content and scripts. Disable JavaScript minification in your caching plugin or server settings to resolve this.
- Office Only Data Enabled: If searches on your site are returning no data, it may be because the “Show Only Office Listings in Search Results” option is enabled in your settings. This setting restricts search results to listings from your office only. If your office currently has no listings, searches will appear as though there’s an issue. To display broader search results, navigate to Settings > CT IDX Pro+ > Search, and turn off the “Show Only Office Listings in Search Results” option.
- Unexpected Redirects: This can occur if your website has pages named or beginning with “listings,” leading to URL conflicts. To fix this, head over to your WordPress Admin area, then to the Pages section, and change the names of these pages to “properties” or something similar that works for you.
- My custom Elementor Pro Header & Footer is not showing: This is a quick fix, that requires two new pages to be created.
- Go to your WordPress Admin > Pages > Add New Page > name it “property-search”, slug is also “property-search” (screenshot) > apply the IDX Pro Plus page template (screenshot) > Publish
- Create another new page, name it “listings”, slug is also “listings” (screenshot) > set its parent as “property-search” (screenshot) > apply the IDX Pro Plus page template (screenshot) > Publish