/social-warfare-pro

The Social Warfare Pro Addon

Primary LanguagePHP

=== WordPress Social Sharing Plugin - Social Warfare ===
Contributors: holas84, webinator, warfareplugins, cdegraff1, goqflash, andbalashov
Tags: sharing buttons, social media share, floating share buttons, facebook share, google plus share, linkedin share, pin it, pinterest save, mix button, tweet button, twitter share, click to tweet, social sharing buttons, social share, social sharing, social media sharing, wordpress social sharing plugin, social sharing plugin, share buttons, share counts
Requires at least: 4.5.0
Tested up to: 6.5
Stable tag: 4.5.4
Requires PHP: 5.6
License: GNU General Public License v2.0 or later

The most beautiful, responsive, lightning fast social share buttons built to boost shares and drive more traffic without slowing down your site.

== Description ==

Get more social shares which can lead to more website traffic with the best WordPress social sharing plugin! Built by a group of social media marketing experts and world class developers who are obsessed with performance. Learn more at <a href="https://warfareplugins.com/?utm_medium=repository&utm_campaign=description&utm_source=wordpress_org&utm_content=repo_description" rel="friend" target="_blank">Warfare Plugins</a>.

= WordPress Sharing Plugin =
Most WordPress social sharing plugins slow down your site, are not attractive, and don't work the way you would hope. Social Warfare’s share buttons are both lightning fast and beautiful.

Not only will it never slow down your website like other sharing plugins, we give you the most attractive share buttons available that look great no matter what screen size or resolution.

> Social Warfare has boosted social shares by **300%** without slowing down my blog.<br>
> Eddie Gear - Professional Blogger

You can choose from the top social networks sharing buttons, including:

* Facebook
* Twitter
* Google+
* Pinterest
* LinkedIn
* Mix
* Mastodon

You can also choose where you want the share buttons to show up. Choose from the following placement options:

* Above the post content
* Below the post content
* Both above and below the post content
* None (or) Manual placement

We also give you the ability to have **floating share buttons** follow your readers down the screen when static (non-floating) buttons are not in view. This way the reader will always have easy access to your share buttons, no matter where they scroll on your page.

> "This is by far the best looking social sharing plugin I have seen on the net!"<br>
> David Foster, Online Personality

= Social Proof =
Proudly display how many times your content has been shared-- **even tweet counts (with a _Social Warfare - Pro_ license)**! Social Proof is a powerful psychological tool that has been proven to influence even more shares.

We use the social network API endpoints to ensure that the most accurate share counts are always displayed.

= Popular Posts Widget based on Social Share Counts =
Wouldn't you love to show what your most popular posts are based on the number of social shares they've received? Social Warfare allows you to do just that.

You can even choose to display most your popular posts based on which social network they were popular on!

Social Warfare's Popular Posts widget allows you to display and customize the look with:

* Post thumbnail images
* Image and text size
* Custom visual themes
* Custom date range

= Click to Tweet Quotes =
A simple and effective way to create tweetable quotes right inside your posts or pages. This has proven to increase the average number of tweets per article dramatically.

= Use Shortcodes to Manually Place Social Share Buttons Anywhere =
If you want to place buttons in the middle of an article, you can with our `[social_warfare]` shortcode.

What if you wanted to add share buttons to a page but actually have them share out a different page altogether (like being able to share your “Sign-up� page from your “Thank You� page)? Social Warfare allows you to do this!

If you're experienced with PHP, you can also hook Social Warfare into your theme templates for hyper customization.

= Content Protection =
We've built our highly demanded <a href="https://wordpress.org/plugins/frame-buster/">Frame Buster</a> right into Social Warfare so that you are protected from content hijackers seeking to place their advertisements on top of your content without your permission.

> Social Warfare is by far the best social sharing plugin I’ve ever used. I recommend it to all of my clients.<br>
> Andrew Wilder, Marketing Consultant

= Premium Social Sharing Options =
_Social Warfare - Pro_ license holders also get access to the following social network share buttons:

* Reddit
* Tumblr
* Yummly
* WhatsApp
* Pocket
* Buffer
* Hacker News
* Flipboard
* Email

In addition to the extra social networks, you can also reactivate, track and display **Twitter tweet counts**!

= Pin All the Images =
Enabling the Image Hover Pin Button will place a "Pin" button over top of every image inside of your content when a reader hovers their mouse over it. This makes every image on your page highly sharable to Pinterest!

= Powerful Share Customization =
> "I use Social Warfare - Pro because how things are shared when I’m not there to do it is important!"<br>
> Peg Fitzpatrick, author of The Art and Science of Social Media

Social Warfare is among the pioneers of customizing how your content is shared, particularly with Pinterest. The _Social Warfare - Pro_ add-on allows you to decide exactly which image, title and description appears when your content is shared on sites like Facebook and Google+. This also applies to any other networks that use Open Graph data for social shares.

On top of that, you can upload a **custom Pinterest image** and write a custom description so that when someone clicks the pin button, the exact image you've chosen shows up with exactly the description you've written. No more hoping that your readers choose the best image and write an optimal description for you!

In addition to that, you can also write a custom tweet for when someone clicks on the Twitter button. The exact tweet you wrote will be displayed in the Twitter share box and Social Warfare will automatically add the link to your content and your @username to the end of it.

These capabilities are what professional social media marketers and bloggers have been waiting for.

= Social Warfare - Pro Sharing Options, Custom Design and Placements =
Customize which sharing networks you display, how your buttons look and where they show up.

You can choose from 6 different button shapes, 8 different color themes **plus** the ability to choose custom colors for your buttons. The design combinations are _unlimited_.

You will also get 6 different Click to Tweet styles and an option to create your own style via your theme's CSS.

= Minimum Social Proof =
If you would prefer to only show counts after a certain minimum number of shares has been met (to avoid "negative social proof"), you can do that as well. Or if you'd rather just have no counts showing at all, just turn them off altogether.

= Share Recovery: Your Lost Share Counts Returned! =
Have you ever changed permalink structures, domain prefixes, connection protocols (http-https) or just flat out changed domains and ended up **losing all your social share counts?**

We've built a tool right into Social Warfare called <a href="https://warfareplugins.com/support/recover-social-share-counts-after-changing-permalink-settings/?utm_medium=repository&utm_campaign=description&utm_source=wordpress_org&utm_content=repo_description" target="_blank" rel="friend">Share Recovery</a> which allows you to get back your lost share counts if you've ever had to modify your permalink settings.

= Social Authorship, Twitter Cards, Rich Pins and More =
It nice to have your stuff shared on social media, it's even nicer when you get mentioned in the social share! With Social Warfare you can ensure that your authorship is always in place, including:

* Facebook author and publisher attribution
* Facebook app link (advanced users)
* Twitter publisher and author attribution
* "via @username" added to the ends of tweets
* "via @username" added to the ends of pin descriptions

You can also activate Twitter Cards (Large Image Cards) so that tweets sent from your site are always media rich and much more likely to get engagement.

Our plugin also ensures that your site is Rich Pin ready so that your Pins look as good as possible.

= Link Shortening, Analytics Campaign and Button-click Tracking =
Shorten shared links automatically using your own Bitly credentials so you can track how many clicks are occurring on your links.

Additionally, if you're a Google Analytics user, you can set up Analytics tracking so that each shared link contains a networks specific UTM tracking code. This way you can track all inbound links that come as a direct result of Social Warfare shares.

You can also activate Event Tracking so that you can also see in Google Analytics exactly how many times your buttons are clicked.

It is without question that Social Warfare is the most powerful social sharing plugin available for WordPress. You get all these premium features while still benefitting from a super-fast, light-weight code base.

== Installation ==

This section describes how to install the plugin.

1. Upload the `social-warfare` directory to your `/wp-content/plugins/` directory
2. Activate the plugin through the 'Plugins' menu in WordPress
3. Visit the 'Social Warfare' menu item in your admin sidebar

== Frequently Asked Questions ==

= I downloaded this plugin but don't have an Social Warfare - Pro license. How can I get one? =

You can sign up for an Social Warfare premium license by <a href="https://warfareplugins.com/?utm_medium=repository&utm_campaign=description&utm_source=wordpress_org&utm_content=repo_faq" rel="friend" title="Social Warfare Plans and Pricing">visiting our website</a> and choosing the package that best suits your needs.

= How do I use the shortcodes? =

Shortcodes are used like so: [social_warfare]. If you would like to specify a different share URL than the page you are placing the buttons on, you can use this format: [social_warfare post_id="3"] where 3 is the ID number of the post or page you want to have shared.

= Something isn't working as expected. How can I get support? =

We have a growing archive of <a href="https://warfareplugins.com/support/" rel="friend" title="Warfare Plugins Support">Support Articles</a> to help you address most questions and troubleshooting. If you wish to receive email support, you will need a Pro license.

== Screenshots ==


== Notes ==

= Testimonial =

> I use Social Warfare - Pro because how things are shared when I’m not there to do it is important!<br>
> Peg Fitzpatrick, Social Media Strategist

> Social Warfare is by far the best social-sharing-button plugin I’ve ever used. I recommend it to all of my clients.<br>
> Andrew Wilder, Consultant

> It's a beautiful, super lightweight, and highly customizable plugin. I love everything about it!<br>
> Rebekah Radice, Social Media Strategist

> "This is BY FAR the best looking social sharing plugin I have seen on the net!"<br>
> David Foster, Online Personality

> I use Social Warfare because it's the only sharing plugin that can be customized to blend seamlessly with my branding.<br>
> Andrea Beltrami, Visual Marketer

> Social Warfare has boosted social shares by <strong>300%</strong> without slowing down my blog.<br>
> Eddie Gear - Professional Blogger

> After installing Social Warfare I straight away saw an increase in social shares and traffic.<br>
> Robert Ryan, Professional Web Designer

== Changelog ==
= 4.4.6.3 (5 Apr 2024) =
* Changed the visibility of `$key` property from `private` to `public` to allow external access and manipulation, enhancing the flexibility for class interactions.
* Changed the visibility of `$user_options` property from `private` to `public`, enabling direct access to user options pulled from the database. This adjustment aims to streamline processes that require external manipulation of user options.

= 4.4.6.2 (3 Apr 2024) =
* Implemented stricter attribute sanitization in SWP_Buttons_Panel_Shortcode class to enhance security and mitigate the risk of cross-site scripting (XSS) attacks through shortcode attributes. This update introduces a more rigorous sanitization process for all attributes passed through the shortcode handling mechanism. The `sanitize_attributes` method now applies basic sanitization using `sanitize_text_field`, followed by a secondary sanitization step using a regex pattern to remove any remaining special characters that could be used in malicious injections.
  - Enhanced `sanitize_attributes` method in SWP_Buttons_Panel_Shortcode class
  - Added regex pattern to remove special characters from attribute values after initial sanitization

= 4.4.6.1 (21 Mar 2024) =
* Updated autoloader class names, improving naming conventions and autoload efficiency for better performance and maintainability. Issue #903 (warfare-plugins/social-warfare#903)
* Refactored the image display in the meta box template and associated JavaScript file, enhancing the UI/UX and fixing display issues for a more intuitive interface.
* Improved the initialization of the SWPSidebarSection component by incorporating `props.visibility` handling, allowing for dynamic visibility control and more flexible component usage.

= 4.4.6 (12 Mar 2024) =
* Introduced a caching mechanism for analytics data, significantly reducing database load and enhancing page load speeds. Further details at warfare-plugins/social-warfare#826.
* Optimized the `record_share_counts` method to eliminate redundant database updates, now incorporating checks against existing data for efficiency.
* Deployed transient caching for social share counts, effectively minimizing database query frequency and its performance impact.
* Implemented strategic database query optimizations, including indexing recommendations, to accelerate query processing.
* Strengthened error handling and validation in the analytics update workflow, safeguarding data accuracy and integrity.
* Refactored analytics data management to bolster maintainability and alignment with WordPress coding standards.
* Addressed the post-preview anomaly in Social Warfare Pro, rectifying the 'undefined' URL or page not found error, as documented at warfare-plugins/social-warfare#897.

= 4.4.5.1 (11 JAN 2024) =
* Update SWP_Pro_Analytics_Database.php

= 4.4.5 (10 JAN 2024) =
* Improved performance in `SWP_Pro_Analytics_Database` with efficient data insertion and update logic using `INSERT ON DUPLICATE KEY UPDATE`.
* Added checks to prevent storage of redundant data and duplicate entries in the analytics table.
* Enhanced `setup_database` with automatic updates based on database versioning and optimized table structure with necessary indexes for better performance.
* Streamlined network fetching in `get_valid_networks` for reduced processing time and improved efficiency.
* Addressed high database load issues by optimizing database operations and minimizing server resource usage.

= 4.4.4 (24 OCT 2023) =
* Escaped output to prevent potential XSS vulnerabilities.

= 4.4.3 (19 OCT 2023) =
* Added Mastodon

= 4.4.2 (30 AUG 2023) =
* Replaced 'require_once' with 'require' to prevent conflicts with the Elementor plugin.

= 4.4.1 (14 FEB 2023) =
* Update Version number to 4.4.1.
* Add default value for $alt parameter for classic_editor_add_pin_description method.

= 4.4.0 (10 JAN 2023) =
This update provides a nice, robust audit of the plugin. It ensures that the
plugin remains in full compliance with the latest WordPress requirements for
inclusion in the WordPress repository.

* Removed the Update Checker from Free into Pro only.
* Removed cURL calls in leiu of WordPress built in calls.
* Ensure user has permission to make AJAX calls.
* Removed <? php short tags.
* Sanitize all inputs that come from outside sources.
* Moved the CSS for jQuery UI to an internal asset.
* Removed all branded logos from the header banner.
* Removed the word WordPress from the beginning of the plugin name.
* Added capability and nonce checks to AJAX calls.

= 4.3.0 (20 JUL 2020) =
This is a major update to the Facebook share checking functionality of the plugin.

= 4.2.1 (07 DEC 2020) =
The 4.2 release was a major release that introduced a whole suite of social analytics
tools. As you might imagine with a release featuring that many new features, and
new lines of code, there were a few hiccups along the way. But we've spent the weekend
getting them all fixed right up and now here we are with 4.2.1.

* Fix for broken admin pages due to some JS errors on the analytics charts.
* Fix for division by zero errors in the social optimizer PHP file.
* Fix for a few other minor bugs and glitches.

= 4.2.0 (02 DEC 2020) =
* BRAND NEW!!! A whole suite of social analytics tools!
* Social Optimizer scores are now saved allowing for comparisons and recommendations.
* Added a check for share counts on URLs with UTM codes for Pinterest.
* Fixed a few minor CSS issues.
* Fix for line breaks in font URLs in the CSS that made the icon font not appear.
* Fixed blank settings page on some page loads.
* Cleaned up some post meta remnants.
* Clean out share counts for buttons that don't use share counts like "email" or "more"
* Added a posts column to display the social optimization score.

= 4.1.0 (17 AUG 2020) =
* BRAND NEW!!! Added a "Social Optimizer" to the Gutenberg post editor sidebar.
* Fixed a few minor CSS issues.
* Updated the post editor custom fields to be compatable with WP 5.5.

= 4.0.2 (28 JUL 2020) =
* Added Facebook authentications to core to allow for faster and more reliable share counts when authenticated.
* Added full AMP compatibility to the plugin.
* Fixed the custom CSS field on the settings page so that it saves properly now.
* Added dashboard notifications to alert users as to the state of their Facebook authentications.

= 4.0.1 (14 APR 2020) =
* New: Added the ability to connect Social Warfare with Facebook. We use this to fetch follow counts for pages and faster, more accurate share counts for the share buttons. Go to Social Warfare -> Social Identity -> Social Network Connections to get started.
* New: Added a notice about clearing caches after updates.
* New: Added additional share count debugging to the ?swp_debug=recover debugger.
* Fixed: Fixed some CSS for the "more" share box overlay.
* Fixed: Fixed a PHP error related to user options.
* Maintenance: Adjusted the cache rebuild schedule.

= 4.0.0 =
* New: Added the ability to assign multiple Pinterest images with a slick overlay interface.
* New: Added a "More" button that brings up an overlay with all of the available share options.
* New: Added social follow widget with lots of styles and options.
* New: Added lots of new network buttons (Xing, VK, Viber, Blogger, Evernote)
* New: Added a print button.
* New: Added OpenShareCount API as a source for Tweet counts.
* New: Added Rebrandly as a link shortening service.
* New: Added a bunch of brand new shortcodes.
* New: Added the ability to emphasize the first one or two buttons in the panel.
* New: Added the ability to use ?swp_cache=rebuild&swp_debug=recovery to view the URL's being checked for shares.
* New: Converted all of the plugin's CSS to neatly organized SCSS/SASS.
* New: Updated a few styles in the admin options page.
* New: Updated the descriptions and image placeholders for the Social Warfare custom options in the post editor.
* New: Added an "opt-in" only "Powered by Social Warfare" that will automatically link to our site using your affiliate URL.
* New: Added an "age of post" check for shortlinks.
* New: Added the option to delay the display of share counts on new posts.
* Fixed: Fixed an extra doctype that would sometimes get added to the content.
* Fixed: Fixed some javascript/jQuery errors.
* Fixed: Fixed some PHP errors.
* Removed: Removed all instances of Google Plus.
* Maintenance: Vastly improved codebase organization and documentation.

= 3.6.1 (3 JUN 2019) =
* Updated Hover Save Pin functionality to work more globally.
* Fixed conflcit with hover pin button in Thrive Architect page builder.
* Removed the Google Plus network share button.
* Fixed an "Uncaught Error" for $ in the JS on the widgets page.
* Fixed a Twitter PHP notice.

= 3.6.0 (2 MAY 2019) =
* Update to 3.6.0. See Social Warfare (core) changelog for details.

= 3.5.4 (25 MAR 2019) =
* Code security audit and updates.

= 3.5.3 (21 MAR 2019) =
* Immediate security updates.

= 3.5.1 (28 FEB 2019) =

= 3.5.0 (27 FEB 2019) =
* Updated Pinterest functionality.

= 3.4.2 (13 DEC 2018) =
* Fixed the output of a necessary `.swp-content-locator` element.
* Fixed Float Before Content to be independent of Pin It.
* Fixed floating buttons not respecting home page settings.
* Created a patch query paramter to mass reset swp_float_location.

= 3.4.1 (4 DEC 2018) =
* Fixed Twitter Card toggle button in post-editr.
* Fixed Twitter Card logic when outputting <meta> tags.
* Fixed bug when using Dynamic sorting and there were no shares for a post.
* Fixed the WhatsApp button destination.
* Fixed the variable name for Float Before Content option.
* Fixed the email button.
* Added support for author-specific twitter handle in Twitter Cards.
* Updated the Pintrest character counter in the meta box.
* Updated layout of meta box.

= 3.4.0 (27 NOV 2018) =
* Props to our Warfare Community beta testers- you guys rock!
* Added support for Gutenberg block Pinterest Image (as of Gutenberg 4.5.1)
* Added a fallback ghost buttons panel for floating panels to utilize.
* Added new fields to Social Warfare metabox.
* Updated the layout for the Social Warfare metabox.
* Updates to the mechanics behind Pinterest images and [pinterest_image] shortcode.
* Updated Bitly integration to only create shortlinks for published posts.
* Restored the text length counter for tweets in the metabox.
* Fixed the Pinterest button!
* Fixed bug when using emojis in a Pinterest description.
* Fixed title shared when sharing via Flipboard.
* Fixed floating & mobile button placement rules.
* Fixed bug where Pinterest image was still being printed when set to OFF.
* Fixed bug where Bitly created links when set to OFF.

= 3.3.3 (19 SEP 2018)
* Fixed the output of the og:type meta tag.
* Fixed the image output of the Pinterest share buttons; images are no longer broken.
* Fixed the output of the Pro Pinterest features like the [pinterest_image] shortcodes.

= 3.3.2 (14 SEP 2018) =
* Updated Pinterest images to only display on singular pages.
* Updated Pinterest image shortcode fallback to look for featured image, if selected.
* Fixed custom color outline/background combinations.
* Fixed a small bug that stopped 'Add data-pin-description' from working.
* Fixed the redirection back to Social Warfare settings after authenticating Bitly.
* Fixed the Bitly link creation.

= 3.3.1 (11 SEP 2018) =
* Fixed the broken twitter:creator meta tag.
* Fixed the distinction between custom color and float custom color.

= 3.3.0 (11 SEP 2018) =
* Added style to Pinterest Images to display more spaciously in posts.
* Added new options for limiting Bitly link creation.
* Added a "Pin On Hover?" checkbox for each image in the media gallery.
* Fixed the extra padding on mobile floating buttons.
* Changed the update check mechanism so Pro does not depend on Core's verison.
* Updated scoped functions to class methods.

= 3.2.2 (21 AUG 2018) =
* Rebuilt and fully rectified the automatic updates processes.
* Fixed javascript error that broke images when pinning from Pin On Hover button.

= 3.0.9 (08 JUN 2018) =
* Fix for slow page loads on some sites.
* Added notice to warn that StumbleUpon is being removed at the end of the month.
* Fix for buttons not showing on mobile in some cases.
* Removed calls to Google Plus' and LinkedIn's API's since they no longer offer share counts.
* Fix for the Pinterest fallback image functionality.
* Fix for admin settings page not saving in some instances.
* Fix for the post_id parameter not working in the shortcodes.
* Fix for the Buffer share button showing plusses instead of spaces.
* Fix for Bitly Authentication occasionally not working.
* Fix for some undefined index errors.

= 3.0.0 (8 MAY 2018) =
* Rewrote the core mechanics of the plugin to a class based system.
* Added top floating bar for mobile.
* Added circular button option.
* Normalized variable and function naming conventions.
* Updated CSS to reflect new classnames and keys.
* Share windows now appear in the center of the browser.
* Added toggle to print/not print OG output.
* Created a custom CSS field for Click To Tweet.
* Added option for right floating buttons.
* Added size option for floating buttons.
* Added vertical placement options for floating buttons.
* Added option in to select from all post-types for the Widget.
* Fixed URL Encoding for social network links.
* URLs are no longer created for attachment or media items.
* Updated copyright dates.
* Made the buttons preview its own section in the options page.
* Moved Tweet Count registration from Registrations to Social Identity.

= 2.3.5 (12 JAN 2017) =

* Changed the Twitter counter from 140 characters to 280 characters
* Changed the WhatsApp button to also appear on desktop since their are now desktop apps for it.
* Added a hook to change the location of the menu link in the dashboard.
* Adjusted a filter to stop nonce's from being cached with certain caching plugins.
* Add filter for adjusting the share recovery URL especially on development sites.
* Refined the pin image hover button layout.
* Adjust the radius on the "Leaf on the Wind" layout's CSS.
* Force text-transform to none on icons so that the icons do not show up as text.
* Only output the cache trigger on published posts.
* Adjust the DOM loaded event to use native JS rather than jQuery.
* Various CSS and minor bugfixes.
* Update to block shortlinks on attachments
* Change the counter error message on the CTT generator.
* Fixed a CSS conflict with UI Tabs


= 2.3.4 (06 DEC 2017) =

* Changed the Twitter counter from 140 characters to 280 characters
* Changed the WhatsApp button to also appear on desktop since their are now desktop apps for it.
* Added a hook to change the location of the menu link in the dashboard.
* Adjusted a filter to stop nonce's from being cached with certain caching plugins.
* Add filter for adjusting the share recovery URL especially on development sites.
* Refined the pin image hover button layout.
* Adjust the radius on the "Leaf on the Wind" layout's CSS.
* Force text-transform to none on icons so that the icons do not show up as text.
* Only output the cache trigger on published posts.
* Adjust the DOM loaded event to use native JS rather than jQuery.
* Various CSS and minor bugfixes.

= 2.3.3 (27 SEP 2017) =

* Added "OpenShareCount.com" as an alternative source for Twitter share counts.
* Moved some functions and classes from the Pro addon into core so that they can be used by all addons.
* Updated the style of the image hover Pin button to be more consistent with the rest of the buttons.
* Fixed the UTM tracking parameters from a bug that would turn them off if they were turned on for the pin button.
* Fixed some typos in the readme.txt.
* Moved all registration functions to use the WordPress HTTP API instead of cURL.
* Setup the update checker to check for updates through Easy Digital Downloads (our store) rather than through GitHub.
* Changed the registration functions to be hookable allowing it to track multiple registration (like addons) rather than only one single registration.
* Added a hook to allow for additional URL's to be checked for share recovery functionality.

= 2.3.2 (25 AUG 2017) =

* Updated the verbiage on the readme.txt
* Fixed an error that was causing a handful of sites to lock up.
* More improvements to the registration functions.
* Fixed the shortcode parameters.

= 2.3.1 (20 AUG 2017) =

* Fixed some issues with the registration system.
* Fixed the CSS that controls the layout of the plugin logo on the options page.
* Adjusted some CSS for the options on the options page.

= 2.3.0 (18 AUG 2017) =

* Migrated the registration system from WooCommerce to EDD (THIS IS HUGE!)
* Fixed some CSS for the button icon and count alignment.
* Updated the share cache function for pin and OG stuff.

= 2.2.11 (27 JUL 2017) =

* Updated the Pinterest cache rebuild logic.
* Fixed a CSS bug on iOS mobile display.
* Updated the screen options function to return $display_boolean instead of always returning true.
* Fixed a Facebook API Javascript error.
* Updated the logic for the Popular posts widget.
* Fixed an undefined index error on the bitly cache reset.
* Modified the way the cache trigger is validated.

= 2.2.10 (03 JUL 2017) =

* Fixed the way languages are loaded.
* Fixed the way Pin image sources and pin description image sources are loaded.
* Adjusted how the Bitly functions fetch links and determine when the cache is expired.
* Set the Bitly cache to be deleted when a post is updated in case the permalink has changed.
* Fixed the way that the buttons appear on Right-to-Left direction sites.
* Adjusted how share counts are updated. They should be far more reliable now.

= 2.2.9 (29 JUN 2017) =

* Added Brazilian Portuguese to available languages
* Fixed some formatting and functionality of the email button.
* Fixed an unusual HTML issue in the OG title tag.

= 2.2.8 (29 JUN 2017) =

* Added the option to use the custom Pinterest image for the image hover pin buttons rather than the image being hovered.
* Added the option to use the custom Pinterest description for the image hover pin buttons rather than the alt text of the image.
* Added the option to turn off UTM tracking for Pinterest since Pinterest seems to tally pin counts separately when UTM is used.
* Added an option to force new shares. Normally the plugin ignores new share counts if the count is lower than the count that we previously fetched from the API's. If you activate this feature, it will go with the new count even if it is lower than previously reported by the API's.
* Fixed an issue that was affecting share counts being fetched on some sites.
* Fixed an issue that was affecting the open graph image on some sites when posts were scheduled.
* Fixed an issue that was causing some sites not to generate Bitly links on new posts.
* Added some debugging tools to make it easier to diagnose any future issues with Bitly links.
* Added a conditional to catch an undefined index warning.
* Changed the link in the head html comment to be https.

= 2.2.7 (15 JUN 2017) =

* Fixed a 500 internal server error.
* Fixed a CSS bug that would sometimes cut off the bottom pixel of the button's border.
* Added HTML Entity Decode function to ensure foreign characters are populated correctly in open graph tags.

= 2.2.6 (24 MAY 2017) =

* Added Event Tracking for Click-to-Tweets and Image Pins.
* Fixed the CSS for the total shares in non-English foreign languages.
* Fixed a notice that would sometimes appear on attachment pages.
* Fixed an error that caused share counts to not update for some users.

= 2.2.5 (10 MAY 2017) =

* Fixed a PHP warning that appeared on some user's websites: "Warning: DOMDocument::loadHTML(): Empty string supplied as input"

= 2.2.4 (09 MAY 2017) =

* Added a feature to set og:type values for all post types with individual post control via the swp_og_type custom field.
* Added information links for all options sets on the admin options page.
* Added a feature to add a Pinterest image that is picked up by the Pinterest browser extensions.
* Added better support for buttons being displayed on very tiny screens.
* Added system checks to ensure that the site is using a compatible version of PHP, WordPress, cURL, etc.
* Added a filter to remove script and style tags from meta descriptions. They will now only be text. No HTML allowed.
* Added UTM parameters to the Pinterest share links.
* Update lots of in-file code documentation.
* Updated the functionality of the ?swp_cache=rebuild URL parameter.
* Updated Facebook share link from http to https.
* Updated Italian and French translations to 100%.
* Reorganized all file and folder organization structures.
* Refactored and reorganized the code in all of the social network files.
* Fixed the no_pin class. You can now add a class of no_pin to an image to opt it out from having a Pinterest hover share button.
* Fixed a few random PHP warnings and errors.

= 2.2.3 (22 FEB 2017) =

*Maintenance:*

* Fixed a misnamed function that was causing a "Call to undefined function" error when using the shortcode that specifically names which network buttons to show. For example, this was fine: [social_warfare], while this would throw the error: [social_warfare buttons="Twitter,Facebook,Google Plus,Pinterest,Total"]. This update fixes it so that it no longer throws any errors.

= 2.2.2 (21 FEB 2017) =

*Maintenance:*

* Changed the widget titles from h3's to h4's to be more consistent with how other widgets work in WordPress plugins and themes.
* Removed the Pinterest character counter. Pinterest has now fixed the bug that was causing descriptions in shares to get truncated which means that once again we no longer need to count characters. In fact, longer descriptions are usually better over there so have fun!
* Add a "no_pin" class to the pin it hover button. If you add the class "no_pin" to an image, it will not get a pin hover button attached to it.
* Fixed the pin hover button. We refactored a couple of pieces of the javascript that control the hover button so it should work properly under most circumstances.
* Fixed the Really Simple SSL compatibility issue. You should now be able to use share recovery without Really Simple SSL forcing the recovery URL to be https when trying to recover from HTTP.
* Removed a description on the admin settings page that was written on there twice. Now it's only written on there once.
* Updated the information returned by the Facebook share count function.
* Renamed recursive_array_search to swp_recursive_array_search to avoid conflicts with other plugins that may have a function with the same name.
* Renamed isMobile to swp_isMobil to avoid conflicts with other plugins that may have a function with the same name.
* Fixed the Pin it hover button on legacy cache mode.
* Fixed the missing share counts on the all posts admin screen.

= 2.2.1 (05 JAN 2017) =

*Maintenance:*

* Fixed the WhatsApp button.
* Fixed some invalid integer warnings that appeared in PHP 7.1
* Made it so the social shares columns only display on pages and posts admin pages.
* Fixed a conflict with Yoast open graph tags on the archives pages.
* Fixed a conflict with lazyload plugin and the pinterest image hover button.
* Fixed a padding issue on the button counts for mobile.
* Fixed the screen options tab from bumping into the header menu on our admin options page.
* Fixed an issue with button outlines.

= 2.2.0 (29 NOV 2016) =

*Important:*

* Social Warfare has been developed into a core free plugin with the ability to install addons for additional functionality. If you are a a premium user, you'll need to <a href="https://warfareplugins.com/updates/social-warfare-pro/social-warfare-pro.zip" target="_blank">download</a> and install the Social Warfare - Pro addon to immediately regain access to all premium features. Additional addons are currently under development and will be released in the near future.

*Maintenance:*

* Refactored all of the Open Graph and Twitter Card output logic.
* Broke the meta tags into two filters. One creates the values. The second compiles them into HTML for output. This can allow people to hook in and change specific values on the fly via an add_filter() call.
* Refactored all of the cache functions.
* Added a function to clean out meta fields that are no longer used or needed.
* Added a check for invalid responses from Facebook's API
* Adjusted the default logic and fallback color system for the side custom color option.
* Refactored the Pinterest image logic.
* Add an undefined check for swpPinit to avoid JS notices in the admin area.
* Fixed an undefined index notice.
* Removed all non-public post types from the display locations settings.
* Added a homepage specific location setting.
* Added a function to make the plugin not duplicate share counts when duplicating a post via the Duplicate Post plugin.
* Consolidated some functions and files for more consistent organization.
* Fixed Google Click/Event Tracking
* Modify the hover pin so it's not created until after all images have finished loading.
* Fixed the raw share text from sometimes showing up in excerpts.
* Make the buttons not output on posts embedded into other posts (like embedded recipes).
* Patch to prevent buttons from being added to a post more than once.
* Remove the "active" index to prevent certain notices.
* Fixed custom color outlines on hover.
* Fixed an issue with double dividers on the admin options page.
* Fixed an issue that would sometimes cause Facebook counts to disappear.
* Fixed the http/https share recovery for pages.

= 2.1.3 (4 NOV 2016) =

*Maintenance:*

* Updated how the registration check determines if it's been 30 days since the last check.
* Fixed an alignment issue with the pin hover button for Internet Explorer.
* Updated how the facebook cache rebuild works when the plugin is set to the legacy cache rebuild method.

= 2.1.2 (2 NOV 2016) =

*Maintenance:*

* Fixed the "New Post" bug.
* Improved registration logic.
* Improved the cache rebuild logic.
* Fixed a CSS alignment bug for IE.
* Adjusted the debounce frequency for scroll events.
* Modified how the floating bars hide and reveal.
* Added compatibility for Grid plugin.
* Make all the link filters return modified arrays. This allows for multiple hooks to be added.
* Added the share recovery feature to the Facebook counts.
* Make the Facebook share recovery detect and filter out exact matches.
* Updated the alignment of the button icons and labels.

= 2.1.1 (26 OCT 2016) =

The 2.1.0 update fixed a ton of issues, but it also introduced a few bugs as well. We've been getting your reports and working as quickly as possible around the clock to get these fixed. This should fix almost everything that has been reported so far.

*Maintenance:*

* Fixed the share count issue. We had reports that share counts were not updating on some of the sites.
* Added versioning to the admin scripts and styles. This will prevent users from having to clear browser cache when the files are modified in an update.
* Added a counter to the Pinterest description field as we've discovered that Pinterest cuts off descriptions around 140 characters on share buttons.
* Changed the hover detection method to avoid conflicts across different versions of jQuery for when users are manually declaring a version of jQuery different from what is bundled into WordPress core.
* Added a CSS rule for the aligncenter class so the hover Pinit function will keep centered images centered.
* Fixed a minor Javascript error in the cache rebuild process.

= 2.1.0 (24 OCT 2016) =

This update has been an intensely focused effort to eliminate bugs and maximize the compatibility of our plugin with all other plugins and themes. We also want to give a big shout out to Rob Neu for helping us audit through the code and make many of these improvements.

*New:*

* Added an option to move the side floating buttons to the horizontal bottom floating position when the screen is too small to display the side floating buttons properly (like on mobile).
* Added a separate custom color option for the side floating buttons.
* Added nofollow to all the button links.
* Added an alt and title tag to the popular posts widget thumbnails.

*Maintenance:*

* Overhauled / Improved the registration logic.
* Refactored the options page settings.
* Deprecated some unused functions .
* Added a helper function for getting the site URL.
* Cleaned up the share cache rebuild process.
* Moved the mobile detection to the client side to avoid caching collisions with the showing/hiding of the WhatsApp button.
* Removed all custom jQuery functions to avoid collisions.
* Added translation functions to the admin options page. Translations can now be added for that.
* Cleaned up some alignment issues with the side floating buttons.
* Fixed the layout of the button version of the side floating buttons.
* Changed the sizing of the buttons from JS to FlexBox.
* Changed all scale properties from JS to pure CSS.
* Minified all the admin scripts and CSS.
* Removed the fade in effect from the buttons. They are now properly sized from the start so there's no need to keep them hidden while sizing logic is adjusting them. Instead they can now be visible from page load.
* Renamed the meta box classes to avoid collisions with other plugins or themes that use the same meta box class.
* Added throttles and debounces to some of the JS events.
* Improved the JS and layout of the Image Hover Pin Button.
* Moved all asset files to a single location.
* Improved script and style loading.
* Encapsulated JS within and anonymous function to improve compatibility with other plugins and themes.
* Removed the outerHTML function.
* Cleaned up options page and click to tweet assets.

= 2.0.7 (10 OCT 2016) =

Made some more major updates in response to Facebook's API changes. We've tested this on a dozen sites and we're experiencing a 100% success rate with the fix so far. If you're experiencing inaccurate share counts, install this update, ensure that the Cache Method is set to Advanced Page Caching on the Advanced Tab of the Social Warfare option page, then wait a few hours. Within a few hours (24 at the very, very latest) all of your Facebook shares counts should be 100% fully recovered.

= 2.0.6 (21 SEP 2016) =

*New:*

* Made some major updates in response to Facebook's API changes. Hopefully all the shares will count accurately once again.
* Added cross domain share recovery
* Updated the way Bitly functions shorten the URL's. Custom domain short links should now be fully supported.
* Added a metabox priority filter hook for folks who want to change the order of the metaboxes on the post editor screen.

*Fixes:*

* Fixed a couple minor PHP notices
* Made some updates to the registration function

= 2.0.5 (22 Aug 2016) =

*New:*

* Updated to Facebook’s new share API
* Shortcode parameters for buttons=“� now supports spaces
* Better detection of content location for some themes
* Floating buttons now ignore shortcode (to avoid wonky behavior)
* Updated floating position settings to apply to both side and horizontal instances
* Added Greek translation

*Fixes:*

* Cleaned up some outdated javascript
* URL encoding fixed for special characters in Pin button descriptions
* Fixed OG width/height output from showing when no image was uploaded
* Fixed a bug with the scale/resizing feature
* Got rid of a few minor notices
* Fixed a hover bug
* Fixed alignment issue with side floating share buttons (Thanks Peg!)

= 2.0.4 (9 August 2016) =

*Added:*

* Image Hover Pin Button applies to linked images.
* Added minimum dimensions for Image Hover Pin Button.
* Pinterest image and Twitter handles now included in cache rebuild process.
* Social shares column to Pages tab in WordPress.
* Changing Pin button to "Save" and added Pin icon on hover.
* Yummly Category and Tags function now operational.
* PHP7 compatibility.

*Bugs:*

* Button ordering on floating buttons now able to sort dynamically again.
* Image Hover Pin Button image alignment fix.
* Cleaned out false PHP error and undefined index notices.
* Image Hover Pin Button no longer hinders image saving.
* WPML compatibility.
* Abracadabra and your invisible buttons have reappeared!
* Extra whitespace issue being seen by some sites resolved.