Visual Real Estate

Complete Real Estate Wordpress Plugin


Build your Real Estate Portal in WordPress

Minimal Requirements:

Quick installation:

  1. You should have WordPress installed ( https://wordpress.org/ )
  2. Upload zip from WordPress Dashboard
  3. Activate plugin
  4. Click on Install or Listings and install demo content (on standard themes installation will automatically create all widgets/pages/fields for beginning)

Screens:

2. Upload zip from WordPress Dashboard

3. Activate plugins in your WordPress admin dashboard:

 

3. Install demo content:

 

 

 

Plugin support custom register/login page, users registered there will automatically become agents/owners.

Visitors can also quick submit listings even without registration proccess, but if user is not registered account will be automatically created (require only email).

For other account types by default quick submission is disabled, but you can enable user type transformation for subscriber in Admin->Listings->Settings

Custom register page can be defined in:

Admin/Agent/Regular submission

In Admin (Dashboard)->Listings admins/agents can add llistings:

 

 

Plugin support categories, and based on categories you can define visible fields

This visible fields dependent on categories will have effect on listing submission and search form

To enable this feature go to Admin->Listings->Settings->Check "Show categories"->Save

In Admin->Listings->Settings you can also check "Search in sub-categories", this means that when searching, results from subcategories also will be visible in results

You can manage categories in Admin->Listings->Categories

When edit category, you can manage visible fields:

Map pin icons

Map pin icons are also related to categories, example:

Complete plugin is organized based on Fields, so listing details are collected from fields.

You can manage this fields (Drag & drop) to reorder, edit, delete in Admin->Listings->Fields

Some fields are RED LOCKED, this means that we doesn't allow to remove them. We doesn't allow this because field is importand by design/functionality for web or for mobile api. But in any case you can rename it suggesting for some similar purpose.

If you want to customize listing preview HTML, related file:

wp-content\plugins\SW_Win_Classified\codeigniter\application\views\frontend\listingpreview.php

Related to price on results listing:

Price in listings is also listing field, so parameters like currency can be changed there.

1. Click on edit price related where you want to change currency

2. Change currency prefix or suffix

 

 

Search form is designed as widget or VIsual Composer element. Every search result also must content primary search form to work properly.

When user first click on search form it's redirected to results page ( defined in Admin->Listings->Settings )

Search form contains listing fields, and can be visually generated in Admin->Listings->Search form

For some searching based on numbers from/to you need to make fields searchable and all new added listing will be searchable by this field, example, when edit non-searchable field:

You can also transform INPUTBOX/INTEGER into dropdown on search form, in some cases like Price selection.

Example solution:

 

 

 

Results page ( defined in Admin->Listings->Settings ) containe result items

Result item contain listing fields, and can be visually generated in Admin->Listings->Result item

If you want some HTML changes on result item or result page its located in:

wp-content\plugins\SW_Win_Classified\codeigniter\application\views\frontend\resultspage.php

If you want to customize infowindow on map then file:

wp-content\plugins\SW_Win_Classified\codeigniter\application\views\frontend\infowindow.php

 

For translations we suggest Loco Translate plugin

Localization files can be found in: wp-content\plugins\SW_Win_Classified\locale

1. Multilanguage is very good supported with Free plugin qTranslate-X so install it: https://wordpress.org/plugins/qtranslate-x/

2. After this plugin installation you should manage your langauges:

3. You can add language switcher widget to your template as usual with qTranslate-X:

4. To translate regular translation words use Loco Translate plugin as described in previous section, qTranslate-X will automatically load this translations for selected language.

5. Translate fields:

6. Translate categories

7. Translate listings

8. Some translate settings

Multilanguage required - In dashboard required fields must be populated for all languages

If Multilanguage required will be unchecked, then fields will be copied or auto translated

You can provide Google Translate API key (not free) for best Google translations, in other case MyMemory free api will be used.

Instructions to get API key: https://cloud.google.com/translate/v2/getting_started

Limit cURL calls is there because some servers doesn't allow unlimited calls for translations (each input field translation require one call), here can be limited and other translations will be just copied.

On quick submission user need to populate only default language

Multilingual WordPress

Our plugin also support commercial WPML if you will need it, WPML require additional page for each langauge.

1. Buy and Download CMS version here: https://wpml.org/

2. Install WPML in usual regular way (default order of languages, because in our plugin first language in order is also default) and add new pages for each langauge and page:

3. You should add language switcher widget

4. To translate regular translation words use Loco Translate plugin as described in previous section, WPML also support some additional tools:

5. Translate fields:

6. Translate categories

7. Translate listings

8. Some translate settings

Multilanguage required - In dashboard required fields must be populated for all languages

If Multilanguage required will be unchecked, then fields will be copied or auto translated

You can provide Google Translate API key (not free) for best Google translations, in other case MyMemory free api will be used.

Instructions to get API key: https://cloud.google.com/translate/v2/getting_started

Limit cURL calls is there because some servers doesn't allow unlimited calls for translations (each input field translation require one call), here can be limited and other translations will be just copied.

On quick submission user need to populate only default language

 

 

As any other Wordpress plugin, our also contain lot of Widgets which can be added to some predefined places in specific template

Usually it's right sidebar or footer. For example search form fit nicely right sidebat, map results listing footer etc.

In Admin->Appearance->Widgets you can drag & drop existing widgets (prefixed with SW) to such predefined places in your template

As any other Wordpress plugin, our also contain lot of Shortcodes which can be added to pages

Shortcodes example

[swlisting id="xx"]

Single listing based on listing id "xx", listing id is numeric value and can be found in Admin->Listings, column #

[swlistings text_criteria="xx" show_featured="xx" num_listings="xx" agent_id="xx"]

Multiple listings with filter options

text_criteria can be any text for search, example "luxury"

show_featured can be ALSO_FEATURED or ONLY_FEATURED or ONLY_FEATURED

num_listings is number of listings limitation

agent_id can be user ID or user email

[swagent id="xx"]

Single agent based on user ID "xx", or user email

[swagents text_criteria="" num_listings="xx"]

Multiple agents with filter options

text_criteria can be any text for search, example "luxury"

num_listings is number of listings limitation

[swagencies text_criteria="" num_listings="xx"]

Multiple agencies with filter options

text_criteria can be any text for search, example "luxury"

num_listings is number of listings limitation

[swmap address="xx" content="xx"]

Show map with pin on specific address and with specific content on infowindow

[swmaplistings text_criteria="xx" num_listings="xx" agent_id="xx"]

Multiple listings with filter options, visible on map

text_criteria can be any text for search, example "luxury"

num_listings is number of listings limitation

agent_id can be user ID or user email

[swfeaturedlistings]

Show featured listings only

[swcontact email="xx"]

Show contact form

[swprimarysearch] - Show primary search form 
[swsecondarysearch] - Show secondary search form 

You can use this only if you have VIsual Composer installed

Our plugin also contain lot of VIsual composer elements which can be added to some page, similar to shortcodes, but this one is visualy.

When editing specific page click on for example Frontend editor, when you click on + you can select one of our plugin elements (prefixed with SW)

Search links

If you need link to specific search query, you can use query tags like example:

http://geniuscript.com/replugin/results-page/?search_what=cestica

For more example you can try search directly on your website and check URL bar

Listing Tags

Plugin also support something similar to tags, so you can add new page, set it for page tags (Admin->Listings->Settings->Tags page) and then based on page permalink create tag links as example on screenshot:

You can export all users email in Admin->Tools->MailChimp, this can be used in mailchimp and also some another apps to import and build newslatter campaign

 

Map:

You can use [swmaplistings] shortcode for this purpose.

Our example on twenty sixteen template:

Slider:

You can use any slider plugin not-dependent to our plugin.

We suggesting and tested with this version:

https://wordpress.org/plugins/ml-slider/

You can just follow this slider or any other slider guides for installation and usage.

Our example on twenty sixteen template:

Some details:

https://www.metaslider.com/documentation/getting-started-with-meta-slider/

https://www.metaslider.com/documentation/how-do-i-include-a-slideshow-in-the-header-of-my-site/

Related to templates:

For demo purposes we using Twenty Sixteen and Total, but tested also with:

Twenty Seventeen,Twenty Sixteen,Twenty Fifteen,Twenty Fourteen and Total

CSS:

If you need to customize some styles, change it in:

wp-content\plugins\SW_Win_Classified\assets\css\style.css

Or even better in your theme custom css file.

For some CSS customizations we suggesting to use Firefox and Developer Tools (CTRL+Shift+K)

PHP related:

Our plugin is based on Codeigniter MVC arhitecture and Bootstrap on frontend.

https://www.codeigniter.com/user_guide/

MVC means:

M = Models (generate database queries)

V = View, contains mostly HTML

C = Controller contains mostly logic, transfer data from M to V

How to detect in which file is something:

We organized Wordpress URL in this way, when url looks like:

wp-admin/admin.php?page=listing_manage

This means listing is controller in admin, and manage is method in this controller

Controller code can be found in: wp-content\plugins\SW_Win_Classified\codeigniter\application\controllers\Listing.php

View (HTML) code can be found in: wp-content\plugins\SW_Win_Classified\codeigniter\application\views\admin\listing\manage.php

When we using URL like this:

wp-admin/admin.php?page=currency_manage&function=addcurrency&id=32

This means currency is controller in admin, and addcurrency is method called in this controller

Controller code can be found in: wp-content\plugins\SW_Win_Classified\codeigniter\application\controllers\Currency.php

View (HTML) code can be found in: wp-content\plugins\SW_Win_Classified\codeigniter\application\views\admin\currency\addcurrency.php

Dashboard menus:

It's defined in file: sw_win_options.php

Widget controller:

wp-content\plugins\SW_Win_Classified\codeigniter\application\controllers\Widgets.php

Widget name represents controller method

Widget views (HTML):

Can be found in: wp-content\plugins\SW_Win_Classified\codeigniter\application\views\widgets

Shortcode controller:

wp-content\plugins\SW_Win_Classified\codeigniter\application\controllers\Shortcodes.php

Shortcode name represents controller method

Shortcode views (HTML):

Can be found in: wp-content\plugins\SW_Win_Classified\codeigniter\application\views\shortcodes

Custom pages defined in Admin->Listings->Settings:

Controller is: wp-content\plugins\SW_Win_Classified\codeigniter\application\controllers\frontend.php

Views can be found in: wp-content\plugins\SW_Win_Classified\codeigniter\application\views\frontend

 

 

 

 

Notice: If you want to integrate free plugin into commercial  premium theme for sale you need to purchase extended license.

From v1.4 we implemented advance theme support.

Please reading custom coding section before that.

So you can add custom HTML for all view files based on your theme requirements.

Structure is same as in plugin folder, but here it's located in theme folder, example:

Additionaly we added some custom functions support for themes like demo installation.

By default this functions are implemented in file:

wp-content\plugins\SW_Win_Classified\codeigniter\application\models\Install_m.php

Example how we run this function:

You can define this functions in functions.php template file or similar where you saving such functions usually.

Example functions, we suggesting custom install.php file for such functions:

Currently use this email for support: wp-support@listing-themes.com

Regarding hosting providers, we testing on:

a2_hosting_logo

I've used the following files and services as listed:

  1. Wordpress
  2. jQuery
  3. Bootstrap
  4. The Documenter

Thank you so much for using our plugin. We will do our best to help you if you have any questions or issue relating to this plugin.

We provide more premium features in our premium plugin version:

https://codecanyon.net/item/real-estate-portal-for-wordpress/19850873

Also don't forget to check our other PHP solutions for classified ads, car dealer, real estate:

https://codecanyon.net/user/sanljiljan/portfolio