Property Feed Url Structure

The plugin imports properties into wordpress as a custom post type which means that you can quickly see all properties via the post type archive and single pages.  We have used the slug ‘property’ so you the links are;

  • /property/ – archive page showing the full list of properties
  • /property/{a-specific-property}/ – shows a single property.  The {a-specific-property} part will be a specific auto-generated url for each particular property.

On top of the standard /property/ archive there are specific archives for property areas, property types and branches as follows;

  • /property_area/{property area}/ – where {property area} is one of to-rent, to-buy, commercial or developments
  • /property_type/{property type}/ – where {property type} is any valid property type – e.g. house, flat, bungalow, etc
  • /branch/{branch}/ – where {branch} is the branch slug.

Widgets

We provide you with one simple widget “Property Search” that you can insert into any widget area you like.  This is a simple location/property type (Sale/Rent) search box.  If needs be this can be customised by editing the wppf_layout_widgetsearch.php template (see Templates) but it will just work straight out of the box.

Shortcodes

This plugin has fleixble short codes to allow you to drop specific wppf functionality onto any page within your site.

  • wppf_quicksearch – by default this is horizontally formatted search bar with search by location, search type (buy/let/commercial), min/max price and bedrooms
  • wppf_search – a more detailed search formatted to view vertically that includes many more search options
  • wppf_featured – short code to display a selection of properties (using shortcode options to filter)
  • wppf_slider – shortcode to display a full width slider of selected properties (using shortcode options to filter)

To add options simple include them in the shortcode as a name value pair e.g. [wppf_search branchid=”1″ type=”To Buy”]. See below for the full set of options available for each short code. Only add attributes to the shortcode if you want to pre-filter results. Any manually entered search criteria will override the attributes set in the shortcode.

[wppf_quicksearch] and [wppf_search]

  • wppf_branch (branch number)
  • wppf_search (comma separated list of; to-buy, to-rent, commercial)
  • wppf_location (a string containing the location i.e. Leicester, UK)
  • wppf_featured (yes)
  • wppf_min_bedrooms (number value)
  • wppf_max_bedrooms (number value)
  • wppf_min_price(number value)
  • wppf_max_price (number value)
  • wppf_min_rent (number value)
  • wppf_max_rent (number value)
  • wppf_min_area (number value)
  • wppf_max_area (number value)
  • wppf_property_type (comma separated list of property types)
  • wppf_status (comma separated list of status)
  • wppf_user1 (comma separeted list of user1 field values)
  • wppf_newbuild (yes)
  • wppf_lettype (comma separated list of let types)
  • wppf_furnished (comma separated list of the following options – Furnished, Un-Furnished, Part-Furnished, Not Specified)
  • wppf_soldlet (hide or show – hide will hide an properties that are sold, let, let agreed, sstc – show will show all properties including sold and let)
  • wppf_orderby (can be price-asc, price-desc or latest, default is price desc unless search be location then default is nearest)
  • wppf_radius (distance in miles from the location center for location searches only – default is 10 miles),
  • wppf_records (number of records to return per page)

Quick Search

Search

[wppf_featured] and [wppf_slider]

  • wppf_branch (branch number)
  • wppf_slug (comma separated list of property slugs)
  • wppf_search (comma separated list of; to-buy, to-rent, commercial)
  • wppf_featured (yes)
  • wppf_min_bedrooms (number value)
  • wppf_max_bedrooms (number value)
  • wppf_min_price(number value)
  • wppf_max_price (number value)
  • wppf_min_rent (number value)
  • wppf_max_rent (number value)
  • wppf_min_area (number value)
  • wppf_max_area (number value)
  • wppf_property_type (comma separated list of property types)
  • wppf_status (comma separated list of status)
  • wppf_user1 (comma separeted list of user1 field values)
  • wppf_newbuild (yes)
  • wppf_lettype (comma separated list of let types)
  • wppf_furnished (comma separated list of the following options – Furnished, Un-Furnished, Part-Furnished, Not Specified)
  • wppf_soldlet (hide or show – hide will hide an properties that are sold, let, let agreed, sstc – show will show all properties including sold and let)
  • wppf_orderby (can be price-asc, price-desc or latest, default is price desc unless search be location then default is nearest)
  • wppf_map (featured only, when set to yes will show results in map view.  You would normally also set the wppf_records=’-1′ to retrun all matches)
  • wppf_records (number of records to return per page)

Featured

Slider

[wppf_enquiry]

  • wppf_branch (branch number)

Enquiry

Example Usage

Show a detailed search with results pre-filtered for branch 221 hiding properties that are sold, sstc, let or let agreed.

[wppf_search wppf_branch=’221′ wppf_soldlet=’hide’]

Display the latest 4 To Buy and Commercial properties in a page

[wppf_featured wppf_search=’To Buy,Commercial’ wppf_orderby=’latest’ wppf_records=’5′]

Display the latest 5 properties in a slider

[wppf_slider wppf_orderby=’latest’ wppf_records=’5′]

Hooks and Filters

Hooks and Filters

We have included numerous hooks and filters into the plugin which experience wordpress developers will be able to use to modify the behaviour of the plugin.  We are working on publishing the full set of these but in the meantime here are a few useful examples

Setting the default results view to grid

function my_default_view( $example ) {
return ‘grid’;
}
add_filter( ‘wppf_query_wppf_view’, ‘my_default_view’ );

Set the default drop-down values for Min Rent/Max (search forms)

function my_min_rent($rentlist) {
return array(100,150,200,250,300,350,400,450,500,600,700,800);
}
add_filter(‘wppf_filter_minrent’, ‘my_min_rent’);

function my_max_rent($rentlist) {
return array(600,700,800,1000,1500,2000);
}
add_filter(‘wppf_filter_maxrent’, ‘my_max_rent’);

Set the default drop-down values for Min/Max Price (search forms)

function my_min_price($rentlist) {
return array(25000,50000,60000,70000,80000,90000,100000,110000,120000,125000);
}
add_filter(‘wppf_filter_minprice’, ‘my_min_price’);

function my_max_price($rentlist) {
return array(100000,110000,120000,125000,130000,140000,150000,160000,170000,175000,180000,190000,200000);
}
add_filter(‘wppf_filter_maxprice’, ‘my_max_price’);

Templates and Layout Customisation

TEMPLATES / CUSTOMISATION

This section is intended for developers and theme builders and explains how to customise the WP Property Feed layouts.  There are 12 layout files that sit in the templates directory of the plugin and all of these can be copied into the root directory of your theme to override the plugin defaults.  Simply make a copy of the templates you wish to override in your theme and the plugin will automatically use these instead, this is the only safe way to modify the layout templates.  You can also override the plugin stylesheet by also making a copy in your theme but you will need to dequeue and then enqueue your versions in your theme functions.php as follows;

add_action('wp_enqueue_scripts', 'mytheme_enque', 101);
function mytheme_enque() {
    wp_dequeue_style('wppf_properties');
    wp_enqueue_style('wppf_properties' locate_template('wppf.css'));
}

Archive Template

The plugin stores properties as a custom post type (wppf_property) so the archive naming follows the standard wordpress structure.  We include a standard top level archive file archive-wppf_property.php but you could also create specific taxonomy templates in addition.  The branch, property_area and property_type tags are all defined to allow for additional archive pages to be created within your theme.  This template defines the layout of the results page for the property search and you will note from version that it takes the layout property from the plugin settings to return various different layouts.  You can simply discard these and use your own layout if you wish.  The main thing to note is the inclusion of wppf_layout_results sub-template which displays the property results.

Single Template

Just as we have the standard archive template we also include the standard single one single-wppf_property.php.  This is the template that displays the property details.  In our version this is simply a container for the sub-template wppf_layout_property

wppf_layout_results.php (wppf_layout_results_nomap.php)

Template to display the property results with tabs for grid, list and map (not the nomap version excludes the map tab as this is indended for templates where the map is always present alongside the results).  The template uses standard WordPress loop methodology so provided you are familiar with wordpress coding the code within should be clear.  There is an explanation of the custom post type structure further down.

wppf_layout_map.php

Map layout which is very basic.  This includes a function to create the javascript map pins and a div map container.  Care should be taken to include both and maintain the div id naming.

wppf_layout_slider.php

Template for the full width property slider used by the wppf_slider shortcode

wppf_layout_featured.php

Template for the featured properties shortcode wppf_featured.

wppf_layout_search.php and wppf_layout_quicksearch.php

Templates for the two search shortcodes wppf_search and wppf_quicksearch respectively

wppf_layout_widgetsearch.php

Template for the Property Search widget.

wppf_layout_property.php

Template used in the single page to display the full property details.  See the full details of the Custom Post Type for details on the properties available

wppf_layout_enquiry.php

Template used for the wppf_enquiry shortcode.  This makes use of google reCaptcha and will email contents to the branch in question.  The fields on the form are specifically named to match the Vebra enquiries api so cannot be altered.

Custom Post Type – wppf_property

The plugin pulls all the feed data into a single custom post type.  This works just like any other custom post type with title, description, slug and featured image all available as normal.  In addition to this there are a number of taxonomies and meta data attached that can be used in your templates;

Taxonomies

  • branch – Name is the name of the branch but also includes meta fields phone and email.  We provide a function wppf_get_branch_address to get the branch address
  • property_area – This is will be To Buy, To Rent or Commercial
  • property_type – This links the property to the property type (House, Flat, etc)

Meta-data

  • featured – 1 or 0 – whether the property is featured or not
  • uploaded – date first uploaded
  • updated – date last updated
  • available – date property available
  • address_name
  • address_street
  • address_locality
  • address_town
  • address_postcode
  • address_custom
  • agent_ref
  • price_postfix
  • price_qualifier
  • price_currency (three letter currency code)
  • price_display (1 = yes, 0 = no)
  • price
  • fees
  • furnished (1 or 0)
  • let_type (i.e student, professional etc)
  • longitude
  • latitude
  • web_status (For Sale, SSTC, etc)
  • custom_status
  • premium
  • service_charge
  • rateable_value
  • let_bond
  • newbuild (1 or 0)
  • groundrent
  • propertyarea_sqft
  • propertyarea_sqm
  • landarea_unit
  • landarea
  • bedrooms
  • receptions
  • bathrooms
  • garden (1 or 0)
  • parking (1 or 0)
  • user1 (User specific fields – Alto only)
  • user2 (User specific fields – Alto only)
  • rm_qualifier
  • bullets
  • files (assoc array)
    • sortorder
    • filetype (0- Image, 1 – Map, 2 – Floorplan, 3 – 360, 4 – eHouse, 5 – Ipix, 7 – PDF, 8 – External URL, 9 – EPC, 10 – HIP, 11 – Virtual Tour)
    • name
    • url
  • pargraphs (assoc array)
    • sortorder
    • filesortorder – cross reference to files sortorder
    • name
    • dimensions
    • description