=== BNE Testimonials Pro ===
Author URI: http://www.bnecreative.com
Contributors: bluenotes
Tags: testimonials, flexslider, reviews, ratings, review schema
Requires at least: 5.0
Tested up to: 5.3
Requires PHP: 5.6
Stable tag: 2.9.6
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html


== Description ==

Pro Version! Easily display Testimonials and Reviews on any page, post, or widget area. Display the testimonials as a traditional list, slider, or masonry, and includes front-end submission. Use the API to pull reviews and testimonials from Yelp, Google Places, and Facebook, including other WordPress sites using BNE Testimonials Pro.



== Installation ==

1. Upload "bne-testimonials-pro" folder to the "/wp-content/plugins/" directory
2. Activate the plugin through the "Plugins" menu in WordPress
3. A new menu item will be added called "Testimonials."



== Changelog ==

= 2.9.6 - Nov 12, 2019 =
* Minor adjustments for WP 5.3
* Add array check to plugin_action_links_{$plugin_name}.


= 2.9.5 - October 4, 2019 =
* Note: As of September September 16, 2019 Google has removed all review snippets in search for LocalBusiness and Organization. Users should make sure that reviews are accurate, allow users to leave a review, are none self-serving, and do not cherry pick reviews to be shown. Due to this change, many users will see their star ratings removed from search. For best results only use your reviews on appropriate pages and by using the correct schema type. In addition, the reviews should relate to the page that they are on.
* Add an additional "name" property that goes within the Review property.

= 2.9.4 - Aug 22, 2019 =
* Fix: Add fallback image for the thumbnail slider when an image is not set.
* Badge - Do not include API rating if undefined or 0 in the aggregate (mixed).
* Fix: Badge - Disable schema if API rating is undefined or 0. This will prevent possible schema errors when a rating or count is invalid.
* Badge - If rating and total are 0, show 0 in the badge display.



= 2.9.3 - June 13, 2019 =
* Google API now provides a total review count! If you were manually setting this, you can remove that argument from the badge shortcode. This will also fix anyone experiencing a ratingCount error in Webmaster Tools as this value is now provided.


= 2.9.2 - June 8, 2019 =
* Update CMB2 Library to v2.6.0
* Enable support for badge API to query local reviews in a mixed API setup.

= 2.9.1 - April 22, 2019 =
* Add yelp API key option to settings page as our included one is starting to reach limits. Users should use cache when ever possible to prevent API request reaching limits. This is especially true for APIs that require billing (Google).


= 2.9 - March 22, 2019 =
* Re-structure how the schema markup is used throughout.
* AggregateRating is now properly set for [bne_testimonials] and [bne_testimonials_api] shortcodes. Props to @Brodie for the bug report.



= 2.8.9 - February 2, 2019 =
* Update flexslider.js to v2.7.1
* Adjust how inline js scripts call the load function to support jquery v3+ (slider and masonry layouts).
* Include bne_testimonials_schema_additional_tags filter for the badge schema output.
* Adjust the placement where bne_testimonials_wp_from_email() is used.

= 2.8.8 - January 24, 2019 =
* API: Adjust the Google API request to query only the fields we need and not the entire place details. The needed fields come from the Basic (name, place_id, url) and Atmosphere (rating, review) categories.
* Fix: Shortcode Generator Badge API was not including total if entered.


= 2.8.7 - October 13, 2018 =
* Adjust schema to support the author meta tag.
* Minor CSS adjustments
* Notice!! v1.x Legacy Shortcodes and Widgets (migration step 2 of 3). [bne_testimonials_list], [bne_testimonials_slider], and [bne_testimonials_masonry] were depreciated back on December 7, 2015, and will now output their newer default versions [bne_testimonials layout="list"], [bne_testimonials layout="slider"], and [bne_testimonials layout="masonry"] respectively. v1.x list and slider widgets will also now output [bne_testimonials layout="list"] and [bne_testimonials layout="slider"] respectively. If not already, please update these to the newer versions. The frontend notice displays for admins only.


= 2.8.6 - September 25, 2018 =
* Fix: If multiple email addresses were used in the submit form for receipt, then comma was being strip out causing no user to receive one.


= 2.8.5 - September 13, 2018 =
* Enhancement - In some cases, the masonry layout will load as 1 column then form it's requested column setup. This occurs due to the calculation taking to long to finish while each testimonial is assessed. Added an opacity delay on the visual load of the masonry layout to allow additional calculated time when needed.
* New - Add new developer filter, bne_testimonials_form_addon(), to allow adding custom content before the submit button in the submission form.

= 2.8.4 - August 22, 2018 =
* Fix: Facebook reviews that do not have a value rating would throw a PHP warning since they are now "recommendations" and no longer provide a rating value. Note that the Facebook is still treating this as beta and not all pages/users can leave a recommendation. Eventually this will completely replace ratings. 
* Enhancement: If an API provides an individual reviewer's ID, that will be used instead of being random so that you can target with CSS if needed.


= 2.8.3 - August 4, 2018 =
* Fix: Shortcode generator for badge was not including the total value if was manually entered.
* Fix: HTML markup in rating area 
* New: Add schema_image as an option to the [bne_testimonials] and [bne_testimonials_api] shortcodes. This addresses a new requirement in Google Rich Snippets if using the LocalBusiness as a schema type.
* New: Introduce bne_testimonials_schema_additional_tags() filter which allows adding additional schema tags for the schema type used. For example, if LocalBusiness, you may want to include the recommended tags: address, telephone, and priceRange.


= 2.8.2 - July 24, 2018 =
* Notice!! v1.x Legacy widgets and shortcodes which are [bne_testimonials_list], [bne_testimonials_slider], [bne_testimonials_masonry] were depreciated back on December 7, 2015 and will soon output their newer default versions. If you have not already, please update these to their newer variants as they will be completely removed in a future update. Final removal is end of 2018.
* Update CMB2 Library to v2.4.2
* New: bne_testimonials_the_content() filter to add to custom testimonial content before being parsed/checked. This also allows custom fields to output to the message area when no message is provided - ie, videos.
* Fix: WPML change language popup was being triggered on post edit screens.
* Fix: Local API error being triggered when using other API platforms that provided a message response field.



= 2.8.1 - June 8, 2018 =
* Fix: PHP warning on shortcode generator when working with the submission form categories.
* Fix: Incorrect option ID's used for submission form shortcode generator (redirect_url, auto_hide, auto_fill, and btn_class). Those that created a submission form using the shortcode generator since v2.8 and used one of those four options, you will need to set them and update the shortcode for the new option ID to be assigned.
* Submission form category field can now be set to required using the bne_testimonials_form_fields() filter.
* Submission form star rating field can now be set to required using the bne_testimonials_form_fields() filter.




= 2.8 - June 3, 2018 =
* Fix: In some instances, local API data may be returned using UTF-8 with a Byte Order Mark (BOM) causing an json_decode error.
* New: Include Testimonial Review API, Badge, Badge API, Stats, and Form options into the shortcode generator.
* New: Shortcode Generator now shows an example of what it will look like on the frontend.
* New: Include option to turn the rating select field into a star selection field by setting rating="stars".
* New: Additional developer arguments for submission form field type customizations.
* Update language file and translation strings.



= 2.7.3 - May 1, 2018 =
* New: Add a terms/consent field for GDPR compliance when using the submission form. Enable by setting terms="true" and adjust the label by using terms_label="My new consent text." When used, new testimonials will also store the consent timestamp and statement in the admin and be included in the default email notification.
* Fix: Badges when no local testimonials with ratings are available causing a division by 0 PHP warning.
* Update language file.


= 2.7.2 - April 17, 2018 =
* New: [bne_testimonials_stats] shortcode can accept total_* options to manually set or override the counts for each rating.
* Dev: Add new filter, bne_testimonials_api_facebook_args. Allows adjusting the API argument sent to Facebook for the returned reviews such as adjusting the limit.


= 2.7.1 - March 30, 2018 =
* Dev: Add new filter, bne_testimonials_api_key. Allows replacing a custom API key based on source outside of the Admin/shortcode options.
* Add a check for older WordPress versions that do not have the WP_REST_Controller class. WP 4.7 is still required to use the local API (none API platforms).
* Add alternate delimiter for combined review APIs to make it easier to read. You can use a comma "," or the pike "|" symbol.


= 2.7 - February 23, 2018 =
* Update: Plugin updater library to v4.4 and will check via HTTPS.
* New: API sources can now be combined into a single instance by separating each request with a "|" (vertical bar) for the shortcode "source" and "id" options. Also works with Badges. Example: [bne_testimonials_api source="yelp|google" id="yelp_ID|google_ID"] 
* Adjust the placement of the class "testimonial-api-*" to the single testimonial div instead of the main wrapper.


= 2.6 - December 27, 2017 =
* Update CMB2 Library to v2.3.0
* Compatibility with PHP v7.2
* Important Notice: The Testimonials Rest API has been moved to its own namespace as /bnetestimonials/v1/ by extending the WP_REST_Controller. If using this API source for local WordPress testimonials, make sure the source and any child sites are updated. Does not affect platform APIs.
* Fix: Website title attribute was not stripping out html formatting from the Tagline.
* New: The Testimonials Rest API (none platforms) now includes general information such as total, average rating, name, url.
* New: Badges API can now use the local API source and show stats from other WordPress website using BNE Testimonials v2.6+
* New: Increase the max allowed return of Facebook reviews from 25 to 200, defaults to 20.

== Developer Tools: ==
* Dev: The content returned using bne_testimonials_content() has been adjusted to include the outer wrapping div. This was done to allow the message and styling container to be moveable using bne_testimonials_single(). If you used this filter in your customizations, you may need to and adjust your implementation.
* Dev: Add new filter, bne_testimonials_single(). Allows completely customizing the inner part of the testimonial markup including changing the order of each template part.
* Dev: Add new filter, bne_testimonials_author(). Allows customizing the author content (name, image, rating, tagline and website).
* Dev: Add new template part, date. The date template is not used in the display but is available for customization use.
* Dev: Add new filter, bne_testimonials_format_date(). Allows customizing how the date is displayed when used with the date template, defaults to Y-m-d.
* Dev: Removed the bne_testimonials_yelp_token() filter as it is no longer used with the Yelp API to create a "token". Instead an API key is required starting March 1, 2018. We will continue to supply our API Key for you to use, but can now be replaced by using the key option within the shortcode if needed.

== Templates Updated: ==
* single.php
* message.php
* tagline-website.php



= 2.5 - November 20, 2017 =
* Update CMB2 Library to v2.2.6
* Adjust admin CSS
* Moved API settings into a separate admin page.
* New: The email notification (email text, from email, and subject line) can now be customized from the admin settings page.
* New: Slider layout can display multiple testimonials per slide using the "columns" option.
* New: List layout can be placed into columns using the "columns" option. This is similar to masonry layout but without the "masonry" behavior.
* New: List and Masonry layouts can hide extra testimonials with a link trigger to show/hide using the "expand" option.
* New: Emails collected from the submit form are now saved to the testimonial data for later use.
* New: A new setting that enables Gravatar support if an email exist and no testimonial image is used.
* Dev: Add new filter, bne_testimonials_query_args(), that allows customizing the final testimonial query.
* Dev: Add new filter, bne_testimonials_image(), that allows customizing the image output.


= 2.4.4 - October 22, 2017 =
* Fix: When using slider with the fade animation, the slides next would sometimes "jump" in.
* New: Allow manually setting a "total" review count value for badges as a fallback when the platform's API does not provide one - specifically for Google Places.
* New: add "readless_text" as an option for [bne_testimonials] and [bne_testimonials_api] to be able to hide the then expanded text when using readmore="true". Default is no text label.


= 2.4.3 - September 1, 2017 =
* Adjust included Yelp token expiry date from 60 days to 30.
* New: Local API cache for all sources can now be manually cleared from the Testimonials > Help > API.


= 2.4.2 - August 4, 2017 =
* Fix: PHP notices when submitting the form when not using the optional tagline, website, or rating fields.
* Fix: Changed the category param in the shortcode generator to use the category slug (my_cat_name) instead of category name (My Cat Name) as this would sometimes make the query false. If you have existing generated shortcodes with a set category using the option custom="X" you'll want to make sure these are checked if you update that generated shortcode in the future. The designed shortcode would be fine regardless.
* Fix: Using the cards-h theme and the slider layout would not fill the available width if the message was not long enough.
* Enhance: Replaced the dashicons font library that was used to display the stars with a smaller custom font.
* Enhance: Update the translation strings used in the email notification.

* New: Add option to disable schema markup completely for [bne_testismonials_badge], [bne_testimonials_api], and [bne_testimonials] shortcodes by using schema="false".
* New: Add new Stats shortcode, [bne_testimonials_stats]. This will display an aggregate of reviews as a bar graph or with mood face icons including percentage and count (does not include schema markup). 
* New: Submission form can now be set to hide after a successful submission using auto_hide="true".
* New: Submission form can now be set to auto fill the current user display name and email address using auto_fill="true".
* New: Filter - bne_testimonials_form_fields() Allows developers extend the fields used within the submission form such as adding new fields or editing existing ones. Example would be adding a terms of use checkbox, or a field for a phone number.
* New: Action - bne_testimoinals_form_submit_after() Allows developers to extend what happens after a form is successfully submitted such as adding new field meta to the pending testimonial database, additional notifications, etc.

####Possible Breaking Changes: 
- Submission form: The success/failed query when a form is submitted was changed from "testimonial" to "bne_testimonials_status". If you relied on this query variable for something, you may need to adjust your custom development. This change was needed to prevent possible conflicts if another testimonial plugin is activated and also using a generic slug/query such as "testimonial"
- Submission form: Some field CSS class names have changed. "tagline_company_name" is now "testimonial_tagline", "website_url" is now "testimonial_website", and "rating" is now "testimonial_rating".


= 2.4.1 - June 21, 2017 =
* Minor CSS adjustments
* Minor adjustments to how the API is structured.
* Fix: Truncated options were not working correctly with Yelp reviews. Since Yelp provides a truncated review already, only readmore and readmore_text options are available. readmore_limit cannot be used.
* New: Yellow Pages (YP) API is now included to pull in reviews from a yp.com. Requires a Yellow Pages API Key and the listing ID. API key can be added to the API settings page.
* New: Developers can now extend the API with their own custom sources. The following filters are now available: bne_testimonials_api_branding_assets, bne_testimonials_api_fields, bne_testimonials_api_source_args, and bne_testimonials_api_source_response


= 2.4 - June 12, 2017 =
* New: Add bne_testimonials_help_addon() hook to extend help page with future add-ons.
* New: Google API - [bne_testimonials_api] can now use the Google Places API to pull in reviews from a Google place or business. Requires a Google Places API Key and the PlaceID.
* New: Yelp API - [bne_testimonials_api] can now use the Yelp API to pull in reviews from a Yelp Business.
* New: Facebook API - [bne_testimonials_api] can now use the Facebook Graph API to pull in reviews from a Facebook Page. Requires a Facebook Page Token key.
* New: Add a rating_min argument to both [bne_testimonials_api] and [bne_testimonial] shortcodes. Removes lower rated testimonials from displaying.
* New: Testimonials can now be truncated (shortened) using the new readmore argument for both [bne_testimonials_api] and [bne_testimonial] shortcodes. Use the readmore_text argument to change the "read more label" that is shown to display the hidden text and readmore_limit argument to set the character limit of shown text.
* New: Add a new "Badge" shortcode, [bne_testimonials_badge] that displays an aggregate rating of reviews locally or with an external API.
* Fix: Adjust the cards-h display on mobile so that it becomes vertical.
* Fix: Masonry display would sometimes overlap another one another.
* Fix: Correctly account if testimonial has a thumbnail or not when defining a certain number of testimonials to show for the thumbnail layout.


= 2.3.1 - April 21, 2017 =
* Allow basic formatting html tags within the tagline field. (i,em,b,br,strong).
* Update help page - show/hide the rating field was not shown.
* New: Extend API for developers to add custom sources.


= 2.3 - February 20, 2017 =
* Now requires WP 4.5+
* Updated: CMB2 Library to v2.2.3.1
* Minor CSS adjustments
* Update help pages in the admin
* Fix: Error notice of deprecated call in CMB on the shortcode generator.
* Fix: Improve compatibility with PHP 7.1
* Fix: image_style option was not being used in the Thumbs layout if using the 2nd arrangement.
* Enhancement: Adjust how alignments work in the thumbnail slider
* Enhancement: Move inline JS to the footer for slider and masonry layouts.
* New: Introduce the Testimonials API. Can be enabled from Testimonials > Help > API.	
* New: Add quick edit buttons to the frontend of each testimonial to easily edit that testimonial. Only visible to admins.
* New: Expand Taxonomy query options to allow using multiple categories
* New: Submit form now includes HTML5 required tags
* New: enable the image_size shortcode option for setting a different crop size to display the testimonial image with.
* New: Shortcode Generator now includes a separate generated one that can be used instead: Example: [bne_testimonials custom="234"]




= Previous Updates =

[View all previous updates](http://updates.bnecreative.com/changelogs/?product=testimonials-pro "Changelog")