Contributors: salzano
Tags: car dealer, inventory management, vehicle, automobile, dealership, lot, motorcycle, rv
Requires at least: 5.0.0
Tested up to: 5.9.0
Stable tag: 13.7.0
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Turn WordPress into a dealership website. Provides vehicle listing templates and a custom post type for automobiles or powersports.

Description

This plugin tranforms WordPress into a powerful dealer website platform that makes displaying a vehicle inventory easy.

  • Supports automobiles, motorcycles, ATVs, RVs, and boats
  • Manage multiple lot locations and separate phone numbers & hours for each
  • VIN-decoding add-on available
  • Categorizes inventory by type, body style, fuel, transmission, drive type, availability, new or used, location, and more
  • Includes more than 10 widgets including vehicle sliders and inventory grids

Built the right way and developer-friendly

Installation

  1. Upload the inventory-presser directory to the /wp-content/plugins/ directory
  2. Activate the plugin through the 'Plugins' menu in WordPress
  3. Read this plugin's Frequently Asked Question called "Will Inventory Presser work with my theme?" to learn how vehicles can best be displayed

Frequently Asked Questions

How much does this plugin cost?

This plugin is free and open source. Free and paid add-ons & services are available at https://inventorypresser.com/.

Does it decode VINs?

Not for free. A VIN decoder add-on is available at https://inventorypresser.com/products/plugins/vin-decoder/.

Can I import my inventory into this system?

Yes. We use the WordPress REST API to deliver inventory updates. Read how we do it. Vehicles in Inventory Presser are stored in a custom post type using meta fields, taxonomy terms, and photo attachments, and many CSV/spreadsheet importer plugins work with custom post types. If imports sound challenging, Friday Systems (that's us) feeds hundreds of sites running this plugin. It may be easier to let Friday Systems handle the last leg for a monthly fee.

Will Inventory Presser work with my theme?

Yes. Check out our Theme Compatibility Guide. If your theme does not include templates to display listing pages and vehicle detail pages, the plugin will provide the markup for those pages automatically. There are shortcodes like [invp_archive] and [invp_single_vehicle] as a last resort. A number of Template Tags make designing custom templates easy.

Changelog

13.7.0

  • [Added] Adds a shortcode [invp_vin] that outputs the value of the template tag invp_get_the_vin()
  • [Added] Adds a REST API route at /wp-json/invp/v1/settings to expose the core "Show Carfax buttons" switch
  • [Fixed] Bug fix in block category creation. Instead of all blocks ending up in "Widgets", they now correctly group under "Inventory Presser"
  • [Fixed] Prevents non-numeric characters from being entered in the Odometer field in the editor sidebar
  • [Fixed] Prevent the Delete all Vehicles feature from deleting vehicles more than once if the user reloads the page after using the feature
  • [Fixed] Starts populating the inventory_presser_date_entered meta value when vehicles are saved

13.6.0

  • [Added] Adds a template tag invp_is_featured()
  • [Fixed] Allows taxonomy filters to work when using the [invp_archive] shortcode at /inventory
  • [Fixed] Adds support for querystring filters min_price, max_price, and max_odometer to the [invp_archive] shortcode
  • [Fixed] Adds support for the Sort By setting and querystring parameters orderby and order to the [invp_archive] shortcode
  • [Changed] Changes the "was now discount" price display to fallback to showing the price when the MSRP is empty or the difference is not a positive discount. Previously, the setting would fallback to "Call for Price" even if a price value was available.

13.5.2

  • [Fixed] Fixes a bug when checking if a photo already has a sequence number
  • [Fixed] Fixes a bug introduced in 13.5.1 when checking plugin update responses
  • [Fixed] Fixes a bug when renumbering all photos when a user deletes one in the dashboard
  • [Changed] Removes all get_post_meta() calls in favor of template tags or INVP::get_meta() calls
  • [Changed] Now shows the Delete all Vehicles link on the Plugins page all the time without checking if there are vehicles first

13.5.1

  • [Added] Filters the attachment post type to expose the parent member in REST
  • [Added] Adds a feature to the add-on updater class that changes the "Automatic update is unavailable for this plugin." text to "License key is missing at Vehicles → Options" if the problem is a missing license key for one of our add-ons.
  • [Fixed] Fixes a bug introduced in 13.5.0 when moving methods from the taxonomies class to the customize dashboard class.
  • [Fixed] Bug fixes when accessing variables to make sure they have values before trying to use them in the Phone Number widget, Google Maps widget, and Editor Sidebar.

13.5.0

  • [Added] Adds street address, street address line two, city, state, and zip fields to the Edit form when editing a term in the locations taxonomy. Allows users to specify and save the pieces of the address instead of the whole, multi-line address we store in the term description. This makes latitude and longitude decoding more accessible to users. When a location term is saved, these meta values are used to populate the term description.
  • [Added] Adds a Google Map widget. This new widget implements the v3 JavaScript API and requires an API key.
  • [Changed] Makes the term description box on the edit term screen readonly when editing a term in the locations taxonomy.
  • [Changed] Renames the Google Map widget to Google Map (legacy). It still works for an unknown amount of time.
  • [Changed] Updates node JS packages
  • [Removed] Removes a weekly cron job that tabulated term relationship counts. This was a legacy bug fix that is no longer needed.

13.4.1

  • [Added] Adds photo sequence numbers like "(Photo 2 of 44)" to post titles in the Media Library
  • [Fixed] Finds a few places to use the template tag invp_get_the_photo_number() instead of a unique get_children() call.
  • [Fixed] Fixes a typo that prevented highway MPG from displaying in the EPA Fuel Economy widget
  • [Fixed] Assigns photos uploaded in the dashboard an accurate photo sequence number instead of zero
  • [Fixed] Sets the first photo uploaded in the dashboard as the vehicle's featured image
  • [Fixed] Fixes the add-on license activator class to properly examine API responses and activate licenses

13.4.0

  • [Added] Adds the ability for add-ons to store their license key in a key with a name that is not license_key. A few add-ons already use _license_key.
  • [Added] Adds a filter invp_vehicle_attribute_table_items that allows the vehicle attribute table items to be manipulated just before they are parsed into HTML.
  • [Added] Upgrades the taxonomy overlapper class to allow the updating of the transmission speeds meta key when term relationships in the transmission taxonomy are changed.
  • [Added] Adds car ID, dealer ID, leads ID, Edmunds Style ID, title status, and Next Gear Inspection URL to the editor sidebar.
  • [Changed] Changes the taxonomy overlapper to make sure the meta value matches a term name with which a vehicle has a relationship when relationships are deleted. For example, if a vehicle is erroneously assigned both "Convertible" and "Sedan" body styles, this change makes sure Sedan is saved in the meta field when Convertible is removed.
  • [Changed] Re-implements the archive "View Details" button as a hook on invp_archive_buttons rather than expecting all templates to implement it. Adds a filter invp_css_classes_view_details_button on the CSS classes because that is a feature we need on day one for the two different themes we have on production sites.
  • [Fixed] Fixes bugs in the invp_get_the_odometer() template tag and the vehicle attribute table to avoid outputting odometer and engine attributes that do not actually contain values.
  • [Removed] Removes fields from the editor sidebar that are managed via taxonomies and the taxonomy overlapper: year, make, model, and body style.

13.3.1

  • [Fixed] Fixes a bug in the taxonomy overlapper that was causing sold vehicles to show as available. Meta keys were not always being updated when the overlapping taxonomy term relationships were changed.
  • [Changed] Changes the add-on updater to not show a plugin update nag unless a download link is available.

13.3.0

  • [Added] Adds a colors taxonomy to help users shop by vehicle color. This taxonomy is designed to hold the base color. That means the value might be "Red" rather than "Ruby Mist Metallic".
  • [Added] Adds new classes Inventory_Presser_Addon and Inventory_Presser_Addon_Updater to help add-on plugins store license keys and obtain updates from inventorypresser.com.
  • [Added] Adds two API methods INVP::option_group() and INVP::option_page() to help add-ons avoid hard-coding string slugs for the page and group where this plugin's settings are manipulated.
  • [Added] Adds an action hook invp_loaded that runs on the plugins_loaded hook but after Inventory Presser has finished loading. This hook is designed as an add-on entry point.

13.2.2

  • [Fixed] Bug fix when registering a term meta key dealer_id in locations taxonomy. Sanitize callback of intval() prevent updates to the terms in the locations taxonomy. Changed to use sanitize_text_field() instead.

13.2.1

  • [Changed] Changes the tested up to version number to 5.8.0.
  • [Fixed] Fixes a bug in the Map widget that was hiding the widget title underneath the map.

Upgrade Notice

13.6.0

Upgrades the [invp_archive] shortcode to support taxonomy and querystring filters and sorts. Adds a template tag invp_is_featured(). Changes the "was now discount" price display to fallback to showing the price when the MSRP is empty or the difference is not a positive discount. Previously, the setting would fallback to "Call for Price" even if a price value was available.

13.5.0

Renames the Google Map widget to Google Map (legacy). It still works for an unknown amount of time. Adds a Google Map widget. This new widget implements the v3 JavaScript API and requires an API key. Adds street address, street address line two, city, state, and zip fields to the Edit form when editing a term in the locations taxonomy. Allows users to specify and save the pieces of the address instead of the whole, multi-line address we store in the term description. This makes latitude and longitude decoding more accessible to users. When a location term is saved, these meta values are used to populate the term description.

13.3.0

Upgrades the add-on framework to simplify the building and integrating of add-on plugins. Adds a colors taxonomy to help users shop by base color.

13.2.1

Contains a bug fix in the Map widget to prevent widget titles from sitting underneath the map. Changes tested up to version number to 5.8.0.

13.1.1

Now saves latitude and longitude coordinates with location term addresses when they are fetched from OpenStreetMap.org for use in the Map widget. Enables more than one Map widget to appear on the same page. Bug fix in the Hours widget.

13.1.0

Contains bug fixes and adds a new maps widget called Map that succeeds the Google Map widget. Google deprecated the API upon which the Google Map widget is built, and has indicated it will cease working any day. The new widget is built on leaflet.js and uses map tiles/imagery from MapBox.

13.0.0

Version 13 is smaller than version 12! Instead of shipping with two sliders, all slideshows are now powered by flexslider. This version drops a dependency on slick.js without losing functionality or changing the look and feel of sliders. Fixes a bug when displaying our placeholder "no photo photo" near vehicles that have zero photos.

12.3.0

Adds a setting to control whether vehicles use Trash when deleted. Adds a shortcode [invp_photo_slider]. Creates relationship with "For Sale" term in Availabilities taxonomy when vehicles are added with the editor. Fixes a bug that prevented boat fields from appearing in the vehicle attribute table.

12.2.7

First version that adds a "date entered" field to vehicles posts. Bug fix in the hours widget to no longer highlight Friday and Monday at the same time for some sets of hours.

12.2.6

Changes the default button text for NextGear vehicle inspection reports from "See Digital Inspection Report" to "Mechanic's Report." Fixes bugs.

12.2.5

This release is the one we shipped to wordpress.org and the world as our open source launch.

11.8.2

The first version with DocBlock comments on all classes and methods.

11.7.0

This version makes the job of REST API clients that update vehicle data much easier by adding meta fields that overlap and updated all custom taxonomies.