New Release and Default Version: wp-parsely 3.6

wp-parsely 3.6 is now available in production and staging environments. Before using it in production, we recommend all customers to test the new release in staging.

wp-parsely 3.6 will become the default version in production on Tuesday January 17 2023, and all non-pinned environments will be auto-upgraded to wp-parsely 3.6. Please note that the auto-upgrade to wp-parsely 3.6 has already taken place in staging environments.

Those changes do not affect customers who don’t use wp-parsely, or use an integration method outside of mu-plugins.

What’s New

The highlight of this release is the redesigned Content Helper, which now features 2 panels. The original data shown by the Content Helper was converted into a redesigned Related Top-Performing Posts panel.

Content Helper: Related Top-Performing Posts

We’ve also added the new Performance Details panel, which shows performance metrics about the post or page currently being edited, such as:

  • Number of views and visitors.
  • Average time spent on the page by visitors.
  • Referrer data, including direct visits.
Content Helper: Performance Details

To complement the release, we’ve also improved the plugin’s settings page, our inbuilt support for the Co-Authors Plus plugin, and fixed some bugs.

To learn more about the Content Helper, we encourage everyone to visit its documentation page.

The full changelog of the release can be found here.

Release of wp-parsely 3.5.2 and Related VIP Platform Upgrades

Release of wp-parsely 3.5.2

We have released wp-parsely 3.5.2 which will land into staging on Tuesday 4 October.

This is a maintenance release that:

  • Improves the Content Helper’s error handling and messages.
  • Implements loading the plugin’s options using sensible defaults (when needed) in parts of the code where this was not yet supported.

IMPORTANT: Customers who use integrations (Facebook Instant Articles, Google AMP, and Google Web Stories) with wp-parsely should definitely test this release as it refactors related code.

Upcoming wp-parsely Upgrades on the VIP Platform

Here is a timeline for the upcoming wp-parsely upgrades on the VIP platform:

4 October

  • Default wp-parsely version gets upgraded to 3.5.1 in production (already available in staging).
  • wp-parsely 3.5.2 lands into staging.

11 October

  • wp-parsely 3.5.2 lands into production.

This effectively means that wp-parsely 3.5.2 will become the default version for production sites on 11 October.

Release of wp-parsely 3.5.1 and Default Version Upgrade

On Tuesday 20 September, wp-parsely 3.5.1 will be released into staging, followed by a production release on Tuesday 27 September.

wp-parsely 3.5.1 patches a bug that was found in wp-parsely 3.5.0. The changelog can be found here.

IMPORTANT: Along with the release of 3.5.1, the wp-parsely default version will be upgraded to the 3.5.x release. Customers are strongly encouraged to test the new version before it lands in production.

We also strongly encourage all customers who are pinned to older wp-parsely versions to consider whether this is required, as pinning to old versions prevents from having the latest features and updates. In addition, old wp-parsely versions will start to be phased-out as new versions are being released. As such, we recommend unpinning and following the normal wp-parsely release flow.

New Release: Parse.ly WordPress Plugin 3.5.0

On Tuesday 16 August, wp-parsely 3.5.0 will be released into staging, followed by a production release on Tuesday 23 August. It is currently an optional upgrade and does not introduce any breaking changes coming from 3.x versions. This release does not affect customers who don’t use Parse.ly or use an integration outside of mu-plugins.

wp-parsely 3.5 is a minor release that adds a couple of features on top of wp-parsely 3.4:

  • A live preview has been added for the Recommendations Block when the Block’s icon is being hovered in the Block Inserter.
  • An “Open Links in New Tab” option has been added to the Recommendations Block.
  • The “Metadata Format” setting has been moved into the “Basic Settings” section in the plugin’s settings page.

wp-parsely 3.4 (unavailable in mu-plugins) introduced the following features:

  • Content Helper. Provides editors and writers a list of the website’s most successful similar posts to the one that is currently being edited in the WordPress Editor.
  • Filter override notifications in the settings page, to know when particular settings are getting overridden by a filter.
  • wp-parsely debug information in the Site Health page that can be helpful for troubleshooting or when reporting issues.

Note: wp-parsely 3.4 and newer will throw a deprecation warning when calling the construct_parsely_metadata() function. This only affects custom Parse.ly integrations that call wp-parsely code (mu-plugins and regular wp-parsely users are unaffected).

For a detailed list of changes, please consult the version 3.4 and version 3.5 changelogs.

Current state of wp-parsely versions

Currently, wp-parsely 3.3 remains the default version for VIP sites that use Parse.ly through mu-plugins and are not pinned to a specific version.

3.5 is expected to become the default version in the future (there will be no 3.4 release for mu-plugins). The exact dates will be announced prior to the upgrade. In the meantime, all customers are encouraged to test the 3.5 release.

We also strongly suggest to all customers who are pinned to older wp-parsely versions to consider whether this is required, as pinning to old versions prevents from having the latest features and updates. In addition, old wp-parsely versions may start to be phased-out as new versions of wp-parsely are being released. As such, we recommend unpinning and following the natural wp-parsely release flow whenever possible.

Testing wp-parsely 3.5

The 3.5 release can be tested by using the following code:

add_filter(
	'wpvip_parsely_version',
	function() {
		return '3.5';
	} 
);

New Release: Parse.ly WordPress Plugin 3.3.0

The 3.3.0 version of wp-parsely has been released, and is currently an optional upgrade for VIP customers. It does not introduce any breaking changes coming from 3.x versions and does not affect customers who don’t use Parse.ly or have a custom version uploaded.

The 3.3.0 release introduces many new features, including:

  • The Recommendations Block is now out of beta phase and available for use by default.
  • Dynamic Tracking support.
  • Audience Segments support.

What is being added or changed?

From the plugin’s changelog:

Added

  • Tracker URL field to REST API endpoint. #743
  • Recommendations out of beta phase, now enabled by default. #764
  • Dynamic Tracking support. Disable autotrack option. #792
  • Added support for Audience Segments. JavaScript onReady hook. #808
  • End-to-end tests for front-end metadata. #789
  • Integration tests for post image metadata. #820

Changed

  • Recommendations Block:
    • Disabled link clicking in Editor. #767
    • Register the block using block.json file. #62
    • Fixed thumbnail images not showing. #793
    • Added additional testing. #724
    • Removed tag setting. #822
  • Metadata. We have changed the way metadata is generated. Filters continue to work as expected. We kept the legacy functions for backwards compatibility, but we recommend migrating to Metadata class. Extracted Metadata generation in a separate class. #742
    • Extracted Metadata rendering in a separate class. #751
    • Improved Site ID handling on settings page. #766
  • Upgraded dependencies: @wordpress/api-fetch from 6.2.0 to 6.3.0
    • @wordpress/babel-preset-default from 6.7.0 to 6.9.0
    • @wordpress/block-editor from 8.4.0 to 8.5.1
    • @wordpress/blocks from 11.4.0 to 11.5.0
    • @wordpress/components from 19.7.0 to 19.8.0
    • @wordpress/compose from 5.3.0 to 5.4.0
    • @wordpress/e2e-test-utils from 7.1.0 to 7.3.0
    • @wordpress/env from 4.4.0 to 4.6.0
    • @wordpress/eslint-plugin from 11.1.0 to 12.1.0
    • @wordpress/hooks from 3.6.0 to 3.7.0
    • @wordpress/scripts from 22.3.0 to 22.5.0
    • @wordpress/url from 3.6.0 to 3.7.0
    • eslint-plugin-jest from 26.1.3 to 26.1.5

Fixed

  • Image URL generation for metadata. Links would generate thumbnail-sized images. #758
  • Set image URL instead of thumbnail URL on metadata update. #794
  • Legacy Recommended Widget not showing. #797
  • PHPDoc annotations and comments. #761 #838
  • Removed redundant media query on settings page. #827
  • Improved accessibility of logo field on settings page. #826
  • Coverage annotations in tests. #837

Removed

  • References to the plugin not being compatible with Dynamic Tracking. #791
  • Removed Cache Buster function from Parse.ly class. #747

Upgrading to wp-parsely 3.3.0

Currently, the 3.2 branch is still the default for VIP sites that have Parse.ly enabled through VIP’s mu-plugins and are not pinned to a specific plugin version. To upgrade to 3.3, this must be done manually with the following code:

add_filter(
	'wpvip_parsely_version',
	function() {
		return '3.3';
	} 
);

New Release: Parse.ly WordPress Plugin 3.2.0

The 3.2.0 version of wp-parsely has been released, and is currently an optional upgrade for VIP customers. It does not introduce any breaking changes coming from 3.0/3.1, and It also does not affect customers who don’t use Parse.ly or have a custom version uploaded.

The 3.2.0 release introduces many new features, including:

  • A Recommendations Block that is designed to showcase links to content on your site as provided by the Parse.ly /related API endpoint. This is an early release and it is behind a feature flag.
  • Official support for interacting with the Parse.ly tracker’s onload event, that eliminates the possible need of resorting to workarounds.
  • GraphQL support which opens new possibilities for decoupled/headless setups.
  • Google Web Stories support.

What is being added or changed?

From the plugin’s changelog:

Added

  • Recommendations Block. #611, #642, #649
  • JavaScript hook for accessing the tracker’s onload event. #650
  • GraphQL support. #710
  • Google Web Stories support. #602
  • Settings link and API Key in Network Admin sites list. #583
  • Screen Options to toggle settings sections in plugin settings. #531
  • Allow user to choose logo using the WordPress Media Library in plugin settings. #570
  • Run integration tests against multiple WordPress versions. #689
  • Expose the wp-env script as-is in package.json. #648

Changed

  • Improve UI for post/page types to track in Settings page. #633, #668
  • Improve empty API key checks and check for API key existence earlier. #686, #709
  • Improve reliability and optimize E2E tests. #647, #675, #681, #684
  • Update README.md and plugin page on wordpress.org. #673, #700, #704
  • Cleanups and refactoring:
    • Unify AMP and Google Web Stories implementation. #622
    • Move Rest class into the Endpoints package. #707
    • Cleanup Scripts class. #644
    • Remove $GLOBALS['parsely_ui_plugins_actions'] global variable. #615
  • Assets and building:
    • Use WordPress scripts to export plugin. #634
    • Build the admin settings page script and enqueue built version. #635
    • Use built version strings and deprecate Parsely::get_asset_cache_buster. #636
    • Integrate Recommended Widget CSS into the build system and move it to the CSS folder. #656, #658
  • Dependency updates:
    • Update @wordpress/babel-preset-default package to 6.7.0. #660, #715, #737
    • Update @wordpress/dom-ready package to 3.5.0. #741
    • Update @wordpress/e2e-test-utils package to 7.1.0. #659, #718, #736
    • Update @wordpress/env package to 4.4.0. #663, #716, #734
    • Update @wordpress/eslint-plugin package to 11.1.0. #661, #719, #741
    • Update @wordpress/hooks package to 3.5.0. #717, #735
    • Update @wordpress/scripts package to 22.3.0. #671, #705, #720, #733
    • Update follow-redirects package to 1.14.8. #610, #669
    • Update minimist package to 1.2.6. #739
    • Update node-forge package to 1.3.0. #738
    • Update prettier package to 2.6.1. #727, #741
    • Update actions/checkout GitHub Action to 3. #701
    • Update actions/setup-node GitHub Action to 3.0.0. #699

Fixed

  • Remove phased-out boost parameters from legacy Recommended Widget. #728
  • Make integration tests work on Windows and remove unneeded end of lines. #677, #680

Upgrading to wp-parsely 3.2.0

Currently, the 3.1 branch is still the default for VIP sites that have Parse.ly enabled through VIP’s mu-plugins and are not pinned to a specific plugin version. To upgrade to 3.2, this must be done manually with the following code:

add_filter(
	'wpvip_parsely_version',
	function() {
		return '3.2';
	} 
);

Parse.ly 3.1 release as the new default for VIP sites

The wp-parsely 3.1 version got released 11 days ago and was also made available to VIP customers optionally. This release does not introduce any breaking changes coming from 3.0. Its main features are support for decoupled WordPress architechtures, the Open on Parse.ly button in the admin bar and a revamped settings page.

Currently, the 3.0 branch is the default for VIP sites that have Parse.ly enabled through VIP’s mu-plugins and don’t have any version pinned. On February 9th, 2022 we will switch the VIP platform default to 3.1. This change does not affect customers who don’t use Parse.ly or have a custom version uploaded.

If you want to try the version before that release date, you can do it with the following snippet:

add_filter(
	'wpvip_parsely_version',
	function() {
		return '3.1';
	} 
);

If you want to skip this version and stay on the 3.0 branch, you can do it with:

add_filter(
	'wpvip_parsely_version',
	function() {
		return '3.0';
	} 
);

Parse.ly 3.0 release as default and call for testing for 3.1

The 3.0 version of the Parse.ly WordPress plugin was released on December the 15th, 2021, and made available to VIP customers that same day. Versions 3.0.1, 3.0.2, and 3.0.3 which addressed minor bugs, got released afterwards and made available to VIP customers as well. The Parse.ly 3.0 plugin contains breaking changes.

Currently, the 2.6 branch is the default for VIP sites that have Parse.ly enabled through VIP’s mu-plugins and don’t have any version pinned. On January 19th, 2022 we will switch the VIP platform default to 3.0. This change does not affect customers who don’t use Parse.ly or have a custom version uploaded.

If you want to try the version before that release date, you can do it with the following snippet:

add_filter(
	'wpvip_parsely_version',
	function() {
		return '3.0';
	} 
);

add_filter( 'wpvip_parsely_load_mu', '__return_true' );

If you want to skip this version and stay on the 2.6 branch, you can do it with:

add_filter(
	'wpvip_parsely_version',
	function() {
		return '2.6';
	} 
);

add_filter( 'wpvip_parsely_load_mu', '__return_true' );

wp-parsely 3.1 and decoupled support

We are also happy to introduce the next iteration on the Parse.ly plugin, version 3.1. This version does not contain any breaking changes with respect to 3.0. Its main feature is the introduction of support for decoupled WordPress architectures.

The 3.1 version will be made available in the WordPress.org plugin repository by the end of the week and as an option to VIP customers shortly after that. It won’t be the default version yet, but we encourage our customers, especially the ones with decoupled setups, to upgrade to it and test it on their sites.

Call for testing: Parse.ly 3.0

The Release Candidate for the WordPress Parse.ly plugin 3.0 is now available. It can be downloaded here.

This RC version is already available for users to test in the VIP platform. To enable this version, the following code is required:

add_filter(
	'wpvip_parsely_version',
	function() {
		return '3.0';
	} 
);

add_filter( 'wpvip_parsely_load_mu', '__return_true' );

The final version will be released in the coming weeks and will be made available to VIP sites at the same time. However, 3.0 will not be the default version on the VIP platform until Q1 2022 (the 2.6 branch will remain the default until then).

What is being added or changed?

From the plugin’s changelog:

Important information about this release

wp-parsely 3.0.0 is a major release of the Parse.ly WordPress plugin. The major version bump is because we are introducing a number of breaking changes that have allowed us to modernize the codebase and make future features easier to implement.

The biggest breaking change is the new minimum requirements for running the plugin. You now need PHP 7.1 or newer and WordPress 5.0 or newer. If you are running one of those old versions, you shouldn’t get the update option on your WordPress admin.

If you are using the plugin without any code-level customizations (for instance, calling the plugin’s functions or methods or hooking in the plugin’s WordPress hooks), this update should be seamless and everything should keep operating normally. The plugin’s way of working is still fundamentally the same. If you are using those customizations, we recommend you going through the detailed changelog to see if they affect you. In most of the cases, only trivial changes will be required to make your code work.

Added

  • Namespaces to files. #430 #475 #477
  • Now all functions and classes are under the Parsely namespace, or a child namespace of that e.g. Parsely\Parsely or Parsely\UI\Recommended_Widget. If your code is calling a wp-parsely function (directly, or as a hook callback) without the namespace, then you’ll need to update that call.
  • Strict typing (strict_types=1) to all files in the codebase #420.
  • Passing a value to a function in wp-parsely with an incorrect type will now raise an error.
  • Type declarations have been added to function returns #429 and arguments #455.
  • wp_parsely_should_insert_metadata filter. #440
  • The filter controls whether the Parse.ly metadata should be inserted in the page’s HTML. By default, the meta tags are rendered (the filter returns true).
  • wp_parsely_enable_cfasync_tag filter. #473.
  • The Cloudflare cfasync attributes are now not rendered by default, but they can be enabled by returning true to this filter.
  • WordPress plugin uninstall script. #444
  • When the plugin is uninstalled, the options will be removed from the database. Deactivating the plugin will not cause the options to be deleted.
  • npm run dev:start and npm run dev:stop commands to run the plugin locally for development purposes. #493
  • E2E test for recommended widget. #434
  • JavaScript code-scanning #453

Changed

  • Minimum PHP and WP versions required to run the plugin are now 7.1 (from 5.6) and 5.0 from (4.0), respectively. #416
  • The development Node JS version has been bumped from 14 to 16.
  • Extract logic from class-parsely.php file:
  • Extract admin warning to Parsely\UI\Admin_Warning. #468
  • Extract tracker logic to Parsely\Scripts #478
  • Extract settings page to Parsely\UI\Settings_Page. #467
  • Rename Parsely_Recommended_Widget class to Parsely\UI\Recommended_Widget.
  • Rename methods in Parsely\Scripts class #481:
  • register_js() to register_scripts().
  • load_js_api() to enqueue_js_api().
  • load_js_tracker() to enqueue_js_tracker().
  • Move Parse.ly settings file to views/parsely-settings.php. #459
  • Open on Parse.ly links are displayed by default. #433
  • To disable the feature, the wp_parsely_enable_row_action_links filter must return false.
  • Parsely::get_current_url() default value for argument string $parsely_type changed from nonpost to non-post. #447
  • This change has been done to better align with Parse.ly’s backend.
  • Enqueue scripts with theme independent hook. #458
  • The JavaScript scripts are now enqueued at the wp_enqueue_scripts hook instead of wp_footer.
  • Replace multi-select fields with checkboxes on the settings page. #482
  • Existing selections will be retained.
  • Made class members private #486:
  • Parsely\Integrations\Facebook_Instant_Articles: REGISTRY_IDENTIFIER, REGISTRY_DISPLAY_NAME, get_embed_code().
  • Parsely\UI\Recommended_Widget: get_api_url().
  • Tests: Specify coverage: none where it is not needed. #419
  • Bump @wordpress/e2e-test-utils from 5.4.3 to 5.4.8. #492
  • Bump @wordpress/scripts from 18.0.1 to 19.1.0. #480
  • Bump @wordpress/eslint-plugin from 9.2.0 to 9.3.0. #490

Fixed

  • Fix missing translation support for Yes and No labels in the settings page. #463
  • Avoid making duplicate calls to Parse.ly API on the Recommended Widget’s front-end. #460
  • Fix JS string translation in settings page. #462
  • Consistent return types on update_metadata_endpoint. #446
  • The function used to return different return types, now it always returns void.
  • Consistent return type on insert_parsely_page. #443
  • The function used to return string|null|array, now it returns void.
  • Tests: Stop using deprecated setMethods() method. #427
  • e2e tests: fix watch command. #476
  • Fix non-working README code example. #439

Removed

  • Previously deprecated filter after_set_parsely_page. #436
  • Use wp_parsely_metadata instead.
  • Previously deprecated filter parsely_filter_insert_javascript. #437
  • Use wp_parsely_load_js_tracker instead.
  • post_has_viewable_type function. #417
  • Use is_post_viewable instead. The post_has_viewable_type function was only added to support older versions of WordPress.
  • Custom Parse.ly load text domain. #457
  • Since the plugin now supports versions of WordPress that load custom text domains automatically, the plugins doesn’t have to explicitly load the text domain itself.
  • Empty functions for admin settings. #456
  • The callbacks were never utilised.
  • Redundant code coverage annotations. #469
  • Old init Python script. #441
  • “Add admin warning for minimum requirements in 3.0” notice. #424
  • This was only added in the previous version of the plugin.
  • Upgrade README notice. #470

Parse.ly WordPress Plugin 2.6.1 Release

We are pleased to introduce the 2.6.1 release of the wp-parsely plugin. This is a patch release that fixes an issue with the recommended WordPress widget.

Parse.ly gives creators, marketers and developers the tools to understand content performance, prove content value, and deliver tailored content experiences that drive meaningful results.

We encourage everyone using the plugin to update to the latest version.

If you have any questions about how WPVIP + Parse.ly can help you deliver meaningful customer experiences, please get in touch.

What is being added or changed?

Please, check the GitHub changelog.

Questions?

If you have any questions, related to this release, please open a support ticket and we will be happy to assist.