=== Lofty IDX === Contributors: loftylisting, sunnywx Tags: real estate, IDX, property listings, MLS, Lofty Real EstateIDX Plugin, IDX Solutions, WordPress IDX Requires at least: 5.0 Tested up to: 6.7 Stable tag: 1.2.0 Requires PHP: 7.4 License: GPLv2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Lofty IDX is a WordPress plugin that integrates IDX/MLS listings, enabling agents to display real-time properties and capture leads easily. == Description == **OVERVIEW** [Lofty IDX] (https://lofty.com/) is a robust WordPress plugin designed to integrate IDX/MLS property listings seamlessly into your website, allowing real estate agents to display current property listings and capture lead information effortlessly. This plugin is ideal for agents looking to enhance their website's functionality with up-to-date property information and lead generation tools. **PLUG-AND-PLAY** WordPress IDX Plugin will provide pre-set page groups and a corresponding set of Lofty Menu as well as demo MLS for trial use. After you install it on WordPress, you can preview all the beautiful pages. All you have to do is replace your MLS. **EFFORTLESSLY MIGRATE PAGES WITH SEO** If you already have a live WordPress site, we offer low-cost page migration—simply update the URLs of the old and new pages. And if you're building a website from scratch, we’ve made the process effortless for you. **PERFECT INTEGRATION WITH LOFTY CRM** We integrate lead data from the WordPress site into Lofty’s CRM, allowing you to easily manage leads for various types of sites. **SETUP GUIDE** Visit our [Quick Start Guide](https://help.lofty.com/hc/en-us/articles/26466256969371-WordPress-Website-Plugin-BETA) **CONTACT** You can contact us through send us an email [wpidxsupport@lofty.com] (wpidxsupport@lofty.com) == Installation == 1. Install the plugin via the WordPress dashboard or by uploading the .zip file. 2. Activate the plugin from the "Plugins" menu. 3. Send an email to "support@lofty.com" to request an API key (You will be able to purchase it on Lofty Market starting February 14th.). 4. Navigate to "WordPress > Settings > Lofty IDX Settings" to enter your API key from "support@lofty.com". 5. Save the settings and go to "WordPress > Lofty IDX Plugin" to see the plugin in action. == Compressed Files Notice == This plugin contains compressed/minified files for better performance. All compressed/minified files are located in the `assets` directory. Below are the details of compressed resources and their original sources: * `assets/admin-search.css` - Bundled/extracted main css file of admin search module * Original source: `vite/src/admin/idx-pages/admin-search/index.js` and imported vue files * Compression method: Vite / Sass loader * `assets/admin-shortcodes.css` - Bundled/extracted main css file of admin shortcodes module * Original source: `vite/src/admin/idx-pages/shortcodes/index.js` and imported vue files * Compression method: Vite / Sass loader * `assets/iconfont-[hash].[ttf|woff|svg]` - Bundled iconfont font files * Original source: `vite/src/styles/iconfont/iconfont.[ttf|woff|svg]` * Compression method: Vite * `assets/listing.css` - Bundled/extracted main css file of website listing module * Original source: `vite/src/module/listing/index.js` and imported vue files * Compression method: Vite / Sass loader * `assets/listing-detail.css` - Bundled/extracted main css file of website listing-detail module * Original source: `vite/src/module/listing/index.js` and imported vue files * Compression method: Vite / Sass loader * `assets/listing.js` - Bundled/minified JavaScript file * Original source: `vite/src/module/listing/index.js` and all of its dependency chunk JS files * Compression method: Vite * `assets/listing-detail.js` - Bundled/minified JavaScript file * Original source: `vite/src/module/listing-detail/index.js` and all of its dependency chunk JS files * Compression method: Vite * `assets/admin-search.js` - Bundled/minified JavaScript file * Original source: `vite/src/admin/idx-pages/admin-search/index.js` and all of its dependency chunk JS files * Compression method: Vite * `assets/admin-shortcodes.js` - Bundled/minified JavaScript file * Original source: `vite/src/admin/idx-pages/shortcodes/index.js` and all of its dependency chunk JS files * Compression method: Vite Other random hashed JS files and `index[number].css` liked css files are chunk js and chunk css generated by Vite. All **frontend** source files are included in the plugin repository under `vite/src` directory. All **backend/php** source files are included in the plugin repository under `includes`, `vendor` directory, and `vendor` is php dependency files installed by composer. == External Services == This plugin uses the following external services: 1. Get Listing Details API - **Service Purpose**: Retrieve detailed information for a specified property listing. - **Data Sent**: - `mlsListingId` or `listingId` or `mlsOrgId` - **When Data is Sent**: - When the user requests to view property details. - **Data Processing**: - Query the database using the provided `mlsListingId`, `listingId`, or `mlsOrgId` to return the property's detailed information. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 2. Favorite Listing API - **Service Purpose**: Add or remove a property from the user's favorites list. - **Data Sent**: - `status` (favorite status) - `listingId` (property ID) - **When Data is Sent**: - When the user selects to favorite or unfavorite a property. - **Data Processing**: - Perform the action of adding or removing the property from the favorites list based on the `listingId`. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 3. Get Global MLS Data API - **Service Purpose**: Retrieve global MLS data, primarily used for page display and decision-making. - **Data Sent**: - None - **When Data is Sent**: - When the user accesses a page requiring global MLS data. - **Data Processing**: - Fetch and display the global MLS data from the database. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 4. Get Single MLS Data API - **Service Purpose**: Retrieve detailed information for a specific MLS. - **Data Sent**: - `mlsId` (MLS identifier) - **When Data is Sent**: - When the user views a specific MLS data. - **Data Processing**: - Retrieve the detailed data for the given `mlsId` from the database. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 5. Property Search API - **Service Purpose**: Perform real-time property searches based on user-provided criteria. - **Data Sent**: - Various search criteria (e.g., property type, location, price range, etc.) - **When Data is Sent**: - When the user submits a property search request. - **Data Processing**: - Query the database for properties that match the search criteria provided. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 6. Get Search Condition Dropdown Options API - **Service Purpose**: Retrieve dropdown options for specific search conditions. - **Data Sent**: - `conditionName` (name of the search condition) - **When Data is Sent**: - When the user opens the search conditions dropdown. - **Data Processing**: - Provide the corresponding dropdown options based on the `conditionName`. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 7. Get Default Suggestions API - **Service Purpose**: Provide default suggestions in the search box. - **Data Sent**: - None - **When Data is Sent**: - When the user opens the search box. - **Data Processing**: - Return default suggestions such as recommended property types, locations, etc. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 8. Address-Based Search Suggestions API - **Service Purpose**: Retrieve relevant street, property, or region suggestions based on user-entered address. - **Data Sent**: - `listingType` (property type) - `name` (address or keyword) - `mlsOrgId` (MLS organization ID) - **When Data is Sent**: - When the user enters an address and triggers the search. - **Data Processing**: - Provide relevant property, street, or region suggestions based on the entered address. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 9. Get Search Conditions API - **Service Purpose**: Retrieve available search conditions for specific statuses (e.g., sold, unsold). - **Data Sent**: - `isSold` (whether the property is sold) - **When Data is Sent**: - When the user selects a specific search status. - **Data Processing**: - Provide search conditions based on the `isSold` status. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 10. Save Global Configuration API - **Service Purpose**: Save or update global configuration settings for the system. - **Data Sent**: - `data` (global configuration data) - **When Data is Sent**: - When the system needs to update its configuration. - **Data Processing**: - Save or update the provided configuration data. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 11. Get Global Configuration Data API - **Service Purpose**: Retrieve the current global configuration settings of the system. - **Data Sent**: - None - **When Data is Sent**: - When the user requests the current configuration data. - **Data Processing**: - Return the current configuration settings of the system. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 12. Phone Number Validation API - **Service Purpose**: Validate the provided phone number for correctness. - **Data Sent**: - `phoneNumber` (phone number) - **When Data is Sent**: - When the user enters a phone number and requests validation. - **Data Processing**: - Validate the phone number's correctness. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 13. Check Email API - **Service Purpose**: Check if the provided email has already been registered. - **Data Sent**: - `account` (email address) - **When Data is Sent**: - When the user enters an email to check registration status. - **Data Processing**: - Check if the email is already registered. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 14. User Register API - **Service Purpose**: Register a new user. - **Data Sent**: - `account` (email address) - `firstName` (first name) - `lastName` (last name) - `phoneNumber` (phone number) - `role` (user role) - **When Data is Sent**: - When the user provides registration information. - **Data Processing**: - Create a new user based on the provided information. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 15. User Login API - **Service Purpose**: Authenticate user login information. - **Data Sent**: - `account` (email address) - `password` (password) - **When Data is Sent**: - When the user enters login credentials. - **Data Processing**: - Verify if the provided credentials are correct. - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) 16. Static Image Service - **Service Purpose**: Provide static image resources related to property listings. - **Data Sent**: - None - **When Data is Sent**: - When the user requests access to property images. - **Data Processing**: - Provide static images related to the property listings. - **Service Link**: - `(cdn|image|img).chime.me` - **Privacy policy**: [privacy policy](https://lofty.com/privacy-terms?from=privacy#cat25) == Frequently Asked Questions == = What is IDX? = IDX stands for Internet Data Exchange, a system allowing real estate agents to display property listings from the Multiple Listing Service (MLS) on their websites. = Does this plugin work with all MLSs? = Yes, we cover over 400 MLSs across the United States, ensuring broad compatibility with various regional systems. = Does this plugin work with Lofty CRM? = Yes, the plugin integrates seamlessly with Lofty CRM. Leads are automatically imported, and activity tracking functions are the same as those on the current Lofty website. == Screenshots == 1. **Admin Settings Page** - Obtain your unique API key from Lofty and enter it here to activate the Lofty IDX Plugin.(Settings>Lofty IDX Settings) 2. **Search** - Advanced Search & Map Search & Polygon Map Search 3. **Featured Listings** - Attractive and configurable Feature Listings pages. 4. **Listing Detail** - Access comprehensive MLS information and display it clearly. 5. **Market Report** - Market Report with comprehensive visual data. 6. **Lead Capture and Management** - Seamlessly integrate with the robust and comprehensive Lofty CRM to efficiently manage leads and enhance business performance. 7. **Shortcodes** - Powered by WordPress, offering a flexible set of shortcodes. == Troubleshooting == - If you encounter issues with activation, ensure the API key is valid. - For configuration errors, check [https://help.lofty.com/hc/en-us/articles/26466256969371-WordPress-Website-Plugin-BETA](https://help.lofty.com/hc/en-us/articles/26466256969371-WordPress-Website-Plugin-BETA) for guidance. - Contact "support@lofty.com" for assistance. == Changelog === = 1.2.0 = * Initial release.