{"id":314797,"date":"2026-05-25T01:00:19","date_gmt":"2026-05-25T01:00:19","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/vieww-property-listings\/"},"modified":"2026-05-25T05:00:46","modified_gmt":"2026-05-25T05:00:46","slug":"vieww-property-listings","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/vieww-property-listings\/","author":23428051,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.5.2","stable_tag":"2.5.2","tested":"6.9.4","requires":"5.6","requires_php":"7.4","requires_plugins":null,"header_name":"Vieww Property Listings","header_author":"Jarrad Nicoll","header_description":"A clean, professional way to showcase property listings on your WordPress site \u2014 with filterable grids, photo galleries and full design customisation. Perfect for agents, property managers and small agencies.","assets_banners_color":"f8f9fa","last_updated":"2026-05-25 05:00:46","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/nextpointdigital.com.au","rating":0,"author_block_rating":0,"active_installs":0,"downloads":44,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"2.5.1":{"tag":"2.5.1","author":"jarradnpd","date":"2026-05-25 00:59:50"},"2.5.2":{"tag":"2.5.2","author":"jarradnpd","date":"2026-05-25 05:00:46"}},"upgrade_notice":{"2.5.1":"<p>Admin assets moved out of inline tags into enqueued files. Legacy <code>wppl_*<\/code> shortcode aliases removed \u2014 use the <code>vieww_*<\/code> shortcodes.<\/p>","2.5.0":"<p>Internal prefix rename for Vieww-suite consistency. An automatic one-shot migration preserves all settings on upgrade \u2014 no action required.<\/p>","2.0.0":"<p>Rebranded to Vieww Property Listings. Automatic migration handles all data. Legacy shortcodes continue to work.<\/p>","1.0.0":"<p>Initial release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3546908,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3546908,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3546908,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3546908,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["2.5.1","2.5.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3546950,"resolution":"1","location":"assets","locale":"","width":1440,"height":1000},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3546950,"resolution":"2","location":"assets","locale":"","width":1440,"height":1000},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3546950,"resolution":"3","location":"assets","locale":"","width":1440,"height":1000}},"screenshots":{"1":"The property archive \u2014 a 3-column responsive grid with type, status, location, bedroom and sort filters.","2":"A single property page \u2014 hero image, status badge, full address, feature bar, description and contact-agent sidebar with location map.","3":"The same archive narrowed by the type filter to \"Apartment\" \u2014 three of the seeded apartments matching the criteria."}},"plugin_section":[],"plugin_tags":[4528,5070,5071,2199,357],"plugin_category":[43],"plugin_contributors":[253294],"plugin_business_model":[],"class_list":["post-314797","plugin","type-plugin","status-publish","hentry","plugin_tags-listings","plugin_tags-property","plugin_tags-property-management","plugin_tags-real-estate","plugin_tags-shortcodes","plugin_category-customization","plugin_contributors-jarradnpd","plugin_committers-jarradnpd"],"banners":{"banner":"https:\/\/ps.w.org\/vieww-property-listings\/assets\/banner-772x250.png?rev=3546908","banner_2x":"https:\/\/ps.w.org\/vieww-property-listings\/assets\/banner-1544x500.png?rev=3546908","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/vieww-property-listings\/assets\/icon-128x128.png?rev=3546908","icon_2x":"https:\/\/ps.w.org\/vieww-property-listings\/assets\/icon-256x256.png?rev=3546908","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/vieww-property-listings\/assets\/screenshot-1.png?rev=3546950","caption":"The property archive \u2014 a 3-column responsive grid with type, status, location, bedroom and sort filters."},{"src":"https:\/\/ps.w.org\/vieww-property-listings\/assets\/screenshot-2.png?rev=3546950","caption":"A single property page \u2014 hero image, status badge, full address, feature bar, description and contact-agent sidebar with location map."},{"src":"https:\/\/ps.w.org\/vieww-property-listings\/assets\/screenshot-3.png?rev=3546950","caption":"The same archive narrowed by the type filter to \"Apartment\" \u2014 three of the seeded apartments matching the criteria."}],"raw_content":"<!--section=description-->\n<p>Vieww Property Listings gives you a beautiful, easy-to-manage property listings page on your WordPress site \u2014 without the complexity (or cost) of a full real estate platform.<\/p>\n\n<p>Ideal for real estate agents, property managers, holiday rental owners, and small agencies, it lets you publish properties with all the details buyers and renters expect: price, bedrooms, bathrooms, parking, land and building sizes, location, and photo galleries. Visitors can browse a filterable grid by type, status, location, or bedroom count, then click through to a polished single-property page with a contact sidebar so enquiries land straight in your inbox.<\/p>\n\n<p>Make it your own with built-in style controls for colours, contact text, currency symbol and area units \u2014 so the listings feel like part of your site, not a bolt-on.<\/p>\n\n<p><strong>What you get:<\/strong><\/p>\n\n<ul>\n<li><strong>A Dedicated Properties Section<\/strong> \u2014 listings live in their own area of your WordPress admin, separate from posts and pages<\/li>\n<li><strong>All The Details That Matter<\/strong> \u2014 price, bedrooms, bathrooms, parking, land size, building size, and address<\/li>\n<li><strong>Organised Your Way<\/strong> \u2014 group properties by Type (house, apartment, etc.), Status (for sale, sold, leased), and Location<\/li>\n<li><strong>Filterable Property Grid<\/strong> \u2014 let visitors search by type, status, location and minimum bedrooms<\/li>\n<li><strong>Beautiful Single Property Pages<\/strong> \u2014 featured image, features at a glance, full description, photo gallery with lightbox, and a contact sidebar<\/li>\n<li><strong>Match Your Brand<\/strong> \u2014 pick your own colours, contact text, currency symbol and area units (m\u00b2 or sq ft)<\/li>\n<li><strong>Drop-In Shortcodes<\/strong> \u2014 place property grids, details, search forms and feature bars anywhere on your site<\/li>\n<li><strong>Mobile Friendly<\/strong> \u2014 responsive layout that looks great on phones, tablets and desktops<\/li>\n<li><strong>Designer Friendly<\/strong> \u2014 every template can be overridden from your theme for full design control<\/li>\n<li><strong>Secure By Default<\/strong> \u2014 built following WordPress security best practices<\/li>\n<\/ul>\n\n<h3>Shortcodes<\/h3>\n\n<h4>[vieww_grid] - Property Grid<\/h4>\n\n<p>Display a filterable grid of property listings.<\/p>\n\n<p><strong>Attributes:<\/strong><\/p>\n\n<ul>\n<li><code>per_page<\/code> - Number of properties (default: 12)<\/li>\n<li><code>columns<\/code> - Grid columns, 2 or 3 (default: 3)<\/li>\n<li><code>show_filters<\/code> - Show filter form, yes\/no (default: yes)<\/li>\n<li><code>type<\/code> - Filter by property type slug<\/li>\n<li><code>status<\/code> - Filter by property status slug<\/li>\n<li><code>location<\/code> - Filter by location slug<\/li>\n<li><code>bedrooms<\/code> - Minimum bedrooms (default: 0)<\/li>\n<li><code>orderby<\/code> - Order by: date, price, or title (default: date)<\/li>\n<li><code>order<\/code> - Sort direction: ASC or DESC (default: DESC)<\/li>\n<\/ul>\n\n<p><strong>Examples:<\/strong><\/p>\n\n<pre><code>[vieww_grid per_page=\"6\" columns=\"2\" show_filters=\"no\"]\n[vieww_grid type=\"house\" status=\"for-sale\" location=\"brisbane\"]\n[vieww_grid orderby=\"price\" order=\"ASC\" bedrooms=\"3\"]\n<\/code><\/pre>\n\n<h4>[vieww_details] - Single Property Details<\/h4>\n\n<p>Display the full details for a specific property including image, features, description, gallery, and contact sidebar.<\/p>\n\n<p><strong>Attributes:<\/strong><\/p>\n\n<ul>\n<li><code>id<\/code> - Property post ID (default: current post)<\/li>\n<\/ul>\n\n<p><strong>Example:<\/strong><\/p>\n\n<pre><code>[vieww_details id=\"42\"]\n<\/code><\/pre>\n\n<h4>[vieww_search] - Search Form<\/h4>\n\n<p>Display a standalone property search\/filter form that submits to the property archive.<\/p>\n\n<p><strong>Attributes:<\/strong><\/p>\n\n<ul>\n<li><code>action<\/code> - Custom form action URL (default: property archive)<\/li>\n<\/ul>\n\n<p><strong>Example:<\/strong><\/p>\n\n<pre><code>[vieww_search]\n<\/code><\/pre>\n\n<h4>[vieww_features] - Feature Bar<\/h4>\n\n<p>Display the feature bar (bedrooms, bathrooms, parking, land size, building size) for a specific property.<\/p>\n\n<p><strong>Attributes:<\/strong><\/p>\n\n<ul>\n<li><code>id<\/code> - Property post ID (default: current post)<\/li>\n<\/ul>\n\n<p><strong>Example:<\/strong><\/p>\n\n<pre><code>[vieww_features id=\"42\"]&lt;h3&gt;Template Overrides&lt;\/h3&gt;\n<\/code><\/pre>\n\n<p>The plugin provides default templates that work out of the box. To customise them, copy the template file to your theme:<\/p>\n\n<ul>\n<li><code>single-vieww-property.php<\/code> \u2192 <code>your-theme\/single-vieww-property.php<\/code><\/li>\n<li><code>archive-vieww-property.php<\/code> \u2192 <code>your-theme\/archive-vieww-property.php<\/code><\/li>\n<li><code>content-vieww-property-card.php<\/code> \u2192 <code>your-theme\/vieww-property-listings\/content-vieww-property-card.php<\/code><\/li>\n<li><code>content-vieww-property-features.php<\/code> \u2192 <code>your-theme\/vieww-property-listings\/content-vieww-property-features.php<\/code><\/li>\n<li><code>content-vieww-property-gallery.php<\/code> \u2192 <code>your-theme\/vieww-property-listings\/content-vieww-property-gallery.php<\/code><\/li>\n<li><code>content-vieww-property-sidebar.php<\/code> \u2192 <code>your-theme\/vieww-property-listings\/content-vieww-property-sidebar.php<\/code><\/li>\n<li><code>content-vieww-property-filters.php<\/code> \u2192 <code>your-theme\/vieww-property-listings\/content-vieww-property-filters.php<\/code><\/li>\n<\/ul>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to a small number of free, optional external services. Each is described below along with when it is used and what data is sent.<\/p>\n\n<h4>Google Fonts API<\/h4>\n\n<p>Used to load web fonts chosen in the Design Settings. Only occurs when a Google Font (as opposed to a system font) is selected in <strong>Properties &gt; Design &gt; Typography<\/strong>.<\/p>\n\n<ul>\n<li><strong>URL:<\/strong> https:\/\/fonts.googleapis.com<\/li>\n<li><strong>When used:<\/strong> Only when a Google Font is selected in Design Settings (off by default \u2014 system fonts are the default)<\/li>\n<li><strong>Data sent:<\/strong> The names of the selected font families (e.g. \"Inter\", \"Poppins\"). No personal data or site data is transmitted.<\/li>\n<li><strong>Privacy policy:<\/strong> https:\/\/policies.google.com\/privacy<\/li>\n<li><strong>Terms of service:<\/strong> https:\/\/developers.google.com\/terms<\/li>\n<\/ul>\n\n<p>If you prefer not to use Google Fonts, simply leave the heading and body font selectors set to a System Font \u2014 no external requests will be made.<\/p>\n\n<h4>Nominatim (OpenStreetMap) geocoding<\/h4>\n\n<p>Used to convert a property's address into latitude\/longitude coordinates so the listing can be shown on the property map. Runs on the server when a property is saved in the WordPress admin, and in the browser when an admin clicks the \"Geocode Now\" button on a property edit screen.<\/p>\n\n<ul>\n<li><strong>URL:<\/strong> https:\/\/nominatim.openstreetmap.org\/search<\/li>\n<li><strong>When used:<\/strong> Only on the admin side \u2014 when a property is saved with a new\/changed address, or when the \"Geocode Now\" button is pressed in the Property Details meta box. No lookups run on the front-end.<\/li>\n<li><strong>Data sent:<\/strong> The property's address text and the country string \"Australia\". No personal data.<\/li>\n<li><strong>Privacy policy:<\/strong> https:\/\/osmfoundation.org\/wiki\/Privacy_Policy<\/li>\n<li><strong>Terms of use:<\/strong> https:\/\/operations.osmfoundation.org\/policies\/nominatim\/<\/li>\n<\/ul>\n\n<p>Leaving the latitude\/longitude fields filled manually in the property edit screen prevents any Nominatim request from being sent for that property on save.<\/p>\n\n<h4>Photon (komoot.io) address autocomplete<\/h4>\n\n<p>Used to show a real-time address suggestion dropdown in the admin while typing into the Address field. Selecting a suggestion populates the full address line and coordinates at once.<\/p>\n\n<ul>\n<li><strong>URL:<\/strong> https:\/\/photon.komoot.io\/api\/<\/li>\n<li><strong>When used:<\/strong> Only on the admin side \u2014 while an editor is typing into the Address field of a property. Requests stop if the user stops typing or clicks elsewhere. No lookups run on the front-end.<\/li>\n<li><strong>Data sent:<\/strong> The partial address text the user is typing, plus a geographic bias toward Australia. No personal data, no site data.<\/li>\n<li><strong>Privacy policy:<\/strong> https:\/\/www.komoot.com\/privacy<\/li>\n<li><strong>Service info:<\/strong> https:\/\/photon.komoot.io\/<\/li>\n<\/ul>\n\n<p>If you prefer not to use Photon autocomplete, simply ignore the suggestions and type the address manually \u2014 no suggestions will be acted on unless you click or Enter one.<\/p>\n\n<h3>Credits<\/h3>\n\n<p>This plugin bundles the following GPL-compatible open-source libraries:<\/p>\n\n<ul>\n<li>Leaflet (BSD-2-Clause) \u2014 https:\/\/leafletjs.com<\/li>\n<li>Leaflet.markercluster (MIT) \u2014 https:\/\/github.com\/Leaflet\/Leaflet.markercluster<\/li>\n<li>Lightbox2 (MIT) by Lokesh Dhakar \u2014 https:\/\/lokeshdhakar.com\/projects\/lightbox2\/<\/li>\n<\/ul>\n\n<p>The full license text for each library is included in its respective <code>assets\/vendor\/&lt;library&gt;\/LICENSE.txt<\/code> file.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>vieww-property-listings<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory.<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress.<\/li>\n<li>Go to <strong>Properties &gt; Getting Started<\/strong> for a quick-start guide.<\/li>\n<li>Go to <strong>Properties &gt; Settings<\/strong> to customise colours and contact details.<\/li>\n<li>Visit <strong>Settings &gt; Permalinks<\/strong> and click \"Save Changes\" to flush rewrite rules.<\/li>\n<li>Start adding properties via <strong>Properties &gt; Add New<\/strong>.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"how%20do%20i%20add%20a%20property%3F\"><h3>How do I add a property?<\/h3><\/dt>\n<dd><p>Go to <strong>Properties &gt; Add New<\/strong> in your WordPress admin. Fill in the title, description, featured image, and property details (price, bedrooms, etc.). Assign a Property Type, Status, and Location taxonomy term.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20a%20gallery%20to%20a%20property%3F\"><h3>How do I add a gallery to a property?<\/h3><\/dt>\n<dd><p>In the property editor, add a Gallery block (Gutenberg) or a <code>[gallery]<\/code> shortcode (Classic Editor) to the content area. The plugin will automatically extract the gallery and display it in a lightbox below the description.<\/p><\/dd>\n<dt id=\"how%20do%20i%20change%20the%20colours%3F\"><h3>How do I change the colours?<\/h3><\/dt>\n<dd><p>Go to <strong>Properties &gt; Settings &gt; Colours<\/strong> tab. Use the colour pickers to set your primary colour, secondary colour, text colour, background colour, and card background.<\/p><\/dd>\n<dt id=\"how%20do%20i%20change%20the%20contact%20widget%20text%3F\"><h3>How do I change the contact widget text?<\/h3><\/dt>\n<dd><p>Go to <strong>Properties &gt; Settings &gt; Contact &amp; Display<\/strong> tab. You can customise the heading, body text, button label, and contact page URL.<\/p><\/dd>\n<dt id=\"can%20i%20use%20a%20different%20currency%3F\"><h3>Can I use a different currency?<\/h3><\/dt>\n<dd><p>Yes. Go to <strong>Properties &gt; Settings &gt; Contact &amp; Display<\/strong> tab and change the Currency Symbol field. You can also change the area unit (e.g., from m\u00b2 to sqft).<\/p><\/dd>\n<dt id=\"how%20do%20i%20display%20properties%20on%20a%20custom%20page%3F\"><h3>How do I display properties on a custom page?<\/h3><\/dt>\n<dd><p>Use the <code>[vieww_grid]<\/code> shortcode on any page or post. You can filter by type, status, location, and control the number of columns and properties shown.<\/p><\/dd>\n<dt id=\"can%20i%20put%20a%20property%20search%20form%20on%20my%20homepage%3F\"><h3>Can I put a property search form on my homepage?<\/h3><\/dt>\n<dd><p>Yes. Use the <code>[vieww_search]<\/code> shortcode on any page. It renders a filter form that submits to the property archive page.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20delete%20the%20plugin%3F\"><h3>What happens when I delete the plugin?<\/h3><\/dt>\n<dd><p>All property data (posts, meta, taxonomy terms, settings) will be permanently deleted when you delete the plugin from the Plugins page. Deactivating the plugin does NOT delete data.<\/p><\/dd>\n<dt id=\"is%20it%20compatible%20with%20page%20builders%3F\"><h3>Is it compatible with page builders?<\/h3><\/dt>\n<dd><p>Yes. The shortcodes work with any page builder that supports WordPress shortcodes (Elementor, Beaver Builder, WPBakery, etc.).<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.5.2<\/h4>\n\n<ul>\n<li>Listing: added the first set of WordPress.org screenshots (3 captures) and rewrote the screenshot captions to match.<\/li>\n<\/ul>\n\n<h4>2.5.1<\/h4>\n\n<ul>\n<li>Admin: moved inline <code>&lt;style&gt;<\/code> and <code>&lt;script&gt;<\/code> blocks out of the property meta boxes into dedicated enqueued assets (<code>assets\/css\/vieww-pl-meta-boxes.css<\/code> and <code>assets\/js\/vieww-pl-gallery-admin.js<\/code>), per WordPress.org coding standards. Translated strings now flow through <code>wp_localize_script()<\/code>.<\/li>\n<li>Removed legacy <code>wppl_*<\/code> shortcode aliases (<code>wppl_grid<\/code>, <code>wppl_details<\/code>, <code>wppl_search<\/code>, <code>wppl_features<\/code>). Use the <code>vieww_*<\/code> shortcodes instead.<\/li>\n<li>Header: removed <code>Plugin URI<\/code> while the upstream site SSL is being reconfigured.<\/li>\n<\/ul>\n\n<h4>2.5.0<\/h4>\n\n<ul>\n<li>Internal: renamed PHP constants, classes, functions, options and transients from the legacy <code>VIEWW_PL_*<\/code> \/ <code>vieww_pl_*<\/code> prefix to <code>VIEWWPL_*<\/code> \/ <code>viewwpl_*<\/code> for consistency with the wider Vieww plugin suite. No user-visible changes \u2014 an automatic one-shot migration on first load preserves settings on upgrade.<\/li>\n<li>Uninstall: now also removes structured address meta (<code>_vieww_street<\/code>, <code>_vieww_suburb<\/code>, <code>_vieww_state<\/code>, <code>_vieww_postcode<\/code>), design settings, and migration-tracker options when the plugin is deleted.<\/li>\n<li>Bundled library licenses (Leaflet, Leaflet.markercluster, Lightbox2) included as <code>LICENSE.txt<\/code> files alongside each vendor library, with attribution added to readme.<\/li>\n<\/ul>\n\n<h4>2.4.2<\/h4>\n\n<ul>\n<li>Design Settings split out into its own admin screen and class (<code>VIEWWPL_Design_Settings<\/code>) for clearer separation between functional settings and visual customisation.<\/li>\n<li>Gallery: improved attachment handling for properties that use the Gutenberg Gallery block alongside the dedicated gallery meta box.<\/li>\n<li>Various small admin-UI polish fixes on the Properties settings screens.<\/li>\n<\/ul>\n\n<h4>2.3.0<\/h4>\n\n<ul>\n<li>Address fields: split the single Address textarea into Street, Suburb, State, and Postcode for consistency with Vieww Directory and to enable click-to-fill autocomplete.<\/li>\n<li>Geocoding: structured Nominatim queries now use the four fields directly (no more freeform parsing). Hash-skip key updated so any field change re-triggers a lookup.<\/li>\n<li>Autocomplete: typing into the Street Address field shows Photon (komoot.io) suggestions; selecting one fills Suburb \/ State \/ Postcode \/ Latitude \/ Longitude in a single click.<\/li>\n<li>Fixed: addresses with both a unit keyword AND a slash (e.g. <code>Unit 5\/123 Main St<\/code>) no longer lose the street number during geocoding \u2014 coordinates now resolve to the actual street, not the suburb centroid.<\/li>\n<li>Migration: existing <code>_vieww_address<\/code> values are split into the new structured fields on first load. The original value is retained as a display fallback for entries that didn't parse cleanly.<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>Gallery: switched from content-extraction to a dedicated meta box (<code>_vieww_gallery_ids<\/code>). One-time migration preserves existing gallery data.<\/li>\n<li>Status colours: added per-status badge colour picker in Properties &gt; Statuses.<\/li>\n<li>Design settings: expanded font picker with Google Fonts (Sans Serif + Serif groups).<\/li>\n<li>Design settings: updated default colour palette to Vieww brand colours.<\/li>\n<li>Fixed single property page font sizes (title and price).<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li>Renamed plugin from \"WP Property Listings\" to \"Vieww Property Listings\" for Vieww brand consistency.<\/li>\n<li>Post type changed from <code>property<\/code> to <code>vieww-property<\/code>.<\/li>\n<li>Taxonomies changed to <code>vieww-property-type<\/code>, <code>vieww-property-status<\/code>, <code>vieww-property-location<\/code>.<\/li>\n<li>Meta keys changed from <code>_wppl_*<\/code> to <code>_vieww_*<\/code>.<\/li>\n<li>New shortcodes: <code>vieww_grid<\/code>, <code>vieww_details<\/code>, <code>vieww_search<\/code>, <code>vieww_features<\/code>.<\/li>\n<li>Legacy shortcodes (<code>wppl_*<\/code>) retained as aliases for backwards compatibility.<\/li>\n<li>Automatic database migration from old plugin data on activation.<\/li>\n<li>Constants use <code>VIEWW_PL_*<\/code> prefix to avoid collision with other Vieww plugins.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Custom post type with Gutenberg support.<\/li>\n<li>3 taxonomies: Property Type, Property Status, Location.<\/li>\n<li>Meta fields: price, bedrooms, bathrooms, parking, land size, building size, address.<\/li>\n<li>Filterable property grid with 4 filter dropdowns.<\/li>\n<li>Single property template with 70\/30 layout.<\/li>\n<li>Gallery with Lightbox2 (bundled locally).<\/li>\n<li>Settings page with colour palette and contact widget configuration.<\/li>\n<li>4 shortcodes: vieww_grid, vieww_details, vieww_search, vieww_features.<\/li>\n<li>Template override system (theme can override all templates).<\/li>\n<li>Full internationalisation support.<\/li>\n<li>Responsive design with 4 breakpoints.<\/li>\n<li>Uninstall cleanup.<\/li>\n<\/ul>","raw_excerpt":"A clean, professional way to showcase property listings on your WordPress site \u2014 with filterable grids, photo galleries and design controls.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/314797","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=314797"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/jarradnpd"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=314797"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=314797"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=314797"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=314797"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=314797"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=314797"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}