Our CT IDX Pro plugin allows you to seamlessly connect and display listings from your local MLS, covering 99% of All Homes For Sale across all 50 States, Washington D.C., and Canada and we’re adding more all the time. We’ve purposely kept the plugin integration simple, with complete plug-and-play integration, this doc will cover the settings panel aspects and some tips and tricks to help streamline your server for the best performance.
How does it work?
The CT IDX Pro plugin hosts MLS data locally by downloading it to your website’s database, doing this allows for deeper integration into our Real Estate 7 theme and CRM systems, design and customization flexibility, and SEO advantages as the listings are all 100% indexable content which your site gets credit & ranking for in SERPs (search engine results pages).
General MLS Data:
This is listing data that is not associated with yourself or your brokerage. Every 5 minutes a general pull will process chunks of MLS data to add new, update existing, and expire old out, based on the property type, location, and price min/max settings. The general data is pulled in a randomized fashion meaning it queries different parameters (beds, baths, price ranges) from your set property types, and zip codes, in every run for Active, Pending, and Sold in a round-robin process.
Agent/Office MLS Data:
A specific pull for your agent/office listings is done every hour and this will be for the entirety of what’s available, the general settings don’t apply in this case.
Although we set up & configure the IDX initially if you’d like to make any adjustments you can do that via your WordPress Admin > Settings > CT IDX Pro panel.
This is the key that controls the licensing of the plugin, if this is removed or goes invalid for any reason the temporary IDX data on the site is automatically deleted.
This is the key that connects your site to the IDX Data API
Global Assigned User
This setting is used to assign a global user to all the IDX listings displayed on the front end of your site. 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” user with general contact information and assigning that user under this setting.
Agent Assigned Users
Brokerage/Office specific feature that allows you to select agents to display their information with matched IDX listings, will override the “Global Assigned User” if data match is available (must be set as the main agent in the MLS).
The match is made from the users > Display Name, so make sure that’s properly set with “First Name Last Name”, keep in mind that has to be the exact name that’s registered with the MLS, if not the match will not be made and the default Global Assigned User will show. (If the user has a middle initial just enter that in the first name profile field, example).
Exclude listings that don’t have
This will assure that listings with incomplete address data aren’t populated to your site.
Property Types, Location & Price Min/Max
Here you’ll set the various property types, areas, and price range you’d like to pull MLS data from, we do highly recommend keeping this targeted to your demographics and markets. The more areas or types you select the more data is brought in and therefore requires more server resources. A good rule of thumb is 2GB per 3000 records populated, you can refer to the “Server Health” section in the settings panel to reference what you’re currently running and scale to meet the needs required.
We generally don’t recommend trying to recreate your own real estate portal site (e.g. Realtor.com, Trulia.com, etc…) our products and WordPress in general, aren’t built for it, and it’ll just never work. Exceeding about 6000 records on the site at any given time, even with a large server setup you start stretching the limits of the database structure and will inevitably start seeing performance degradation and possible crashing. Keeping your settings hyper-targeted to your demographics and areas marketed in is really key, your site will perform better and your leads will better find what they’re really looking for.
IMPORTANT: Anytime you make settings changes you need to use the Reset IDX Data function and clear IDX Cache to let the system repopulate the site based on the new criteria. If you don’t reset the IDX data, it will take some time for the old to expire out.
Solds Time Period
Here you can select the time period of sold data you’d like to populate to your site, typically we recommend just showing your office data but if you’d like general sold data that’s available too but keep the time period tight, otherwise you can exceed your server resources very quickly.
Hide Sold Listings
Just as it sounds, checking this option will ensure no sold data is populated to the site.
Show Only Office Sold Listings
This option will keep the sold data restricted to the agent & office data only (recommended).
Extra Settings, WP-Cron & Debug
Show only your own office listings
This will restrict the data to only the agent and office listings (tied to the account), general MLS data will not be pulled.
Show only your agent listings
This will restrict the data to only the agent listings (tied to the account).
This gives you the option of disabling WP-Cron and creating server-side cron jobs which will increase the overall performance of your site and reduce all the load that WP-Cron causes as it fires on every visitor hit, rather than just running the IDX data retrieval functions every 5 minutes (general MLS data), every hour (all agent/office data), and every 24 hours (expire listing data).
Turn on debug logging
This will enable debug logging for the plugin, only use when needed.
Reset IDX Data
Just as it sounds, this will completely clear the current IDX data on the site, useful if you’ve made big settings changes instead of waiting for the system to process out the temporary data it’ll start from fresh and repopulate based on the new.
Once you’ve used this function it’s always a good idea to purge IDX cache.
This section will give you a clear view of your current server configuration and its health status per the IDX plugin recommendations. We recommend at the very bare minimum 1024M, with 2048M being optimal for PHP memory (memory_limit), and set the max execution time to 9999 to ensure it never times out. Then as data is added to the site you’ll need to scale the server appropriately for both PHP Memory and CPU, due to the nature of the IDX and how much data it runs a multi CPU setup is ideal as well to share the load.
It’s always a good idea to periodically check your records count, with your current server CPU and Memory usage in order to avoid possible cases of maxing the available resources.
This isn’t required but for hosting we recommend getting Cloudways with Digital Ocean, it’s the same platform all of our demos are on, easily scalable if needed, very-fast, free migration, and they have great customer support. You can spin up a 2GB server from them starting at $22/month and we have a coupon code for 20% off your first 2 months use “CONTEMPO20” on checkout.
The CT IDX Cache plugin handles caching of the listings each are expired out every 12 hours, without getting too technical here’s the process:
- The listing comes around in query processes
- Checks for cache expiration
- If true > it checks the API to see if the listing still exists
- If it does it checks for changes > updates the listing
- If it doesn’t exist > it’s removed from the site
To purge IDX cache go to your admin bar > IDX Cache > Purge Cache (screenshot) to clear everything out. If you’d like to take that one step further and delete the IDX Cache & IDX Temporary files to start 100% fresh you’ll want to use FTP or SSH (recommended, much faster) to delete the following two folders on your server in wp-content > cache > ct-idx-cache & idx_temp (screenshot) that will completely remove any temporary and cache files, the folders will be automatically regenerated.