fishpig / magento2-wordpress-integration-yoastseo
fishpig/magento2-wordpress-integration-yoastseo
Magento 2 WordPress Inegration Addon module to support the WordPress SEO plugin by Yoast.
FishPig_WordPress_Yoast
A free Magento 2 module that integrates the Yoast SEO WordPress plugin with WordPress Integration.
Installation
This module required FishPig_WordPress be installed.
Composer
composer require fishpig/magento2-wordpress-integration-yoastseo
bin/magento module:enable FishPig_WordPress_Yoast && bin/magento setup:upgrade --keep-generated
Manual
mkdir -p app/code/FishPig && cd app/code/FishPig && \
curl -sS https://codeload.github.com/bentideswell/magento2-wordpress-integration-yoastseo/zip/master -o master.zip && \
unzip -q master.zip && rm -rf master.zip && mv magento2-wordpress-integration-yoastseo-master WordPress_Yoast && \
cd - && bin/magento module:enable FishPig_WordPress_Yoast && bin/magento setup:upgrade --keep-generated
WordPress Integration Add-ons
The following add-ons are currently available and more are on the way.
- Multisite
- Root
- Post Types and Taxonomies
- Shortcodes
- Advanced Custom Fields (ACF)
- Related Products
- Integrated Search
- WPML
For an up to date list, check the Magento 2 WordPress Integration Add-ons page.
Changelog
Change log for FishPig_WordPress_Yoast.
[3.3.16] - 2026-06-19
[Fixed]
- Fixed missing date helper when rewriting SEO strings.
## [3.3.15] - 2025-09-12
[Changed]
- Remove unreplaced template variables
[3.3.14] - 2025-07-26
[Changed]
- Changed escaping of OG tag names to allow unescaped colons.
[3.3.12] - 2025-07-18
[Fixed]
- Added PHP 8.4 compatibility
[3.3.11] - 2024-02-26
[Fixed]
- Fixed issue with stripcategorybase plugin option. Even if this is set in Admin,
it can be overwritten in config as key is set in multiple options.
[3.3.10] - 2024-03-21
[Changed]
- Changed links in README.md to use fishpig.com.
[3.3.9] - 2024-03-20
[Added]
- Added pt_plural and pt_single variables to post view templates.
## [3.3.8] - 2024-01-27
[Changed]
- Moved permalink plugin to global scope to ensure it runs during XML sitemap generation.
[3.3.7] - 2024-01-08
[Fixed]
- Removed trailing comma in getTypeOption method declaration.
[3.3.6] - 2023-12-19
[Fixed]
- Fixed config retrieval for post types that contain a hyphen. Yoast changes this
to an underscore.
[3.3.5] - 2023-07-03
[Added]
- Added WP theme file to stop CSS file being included in the XML sitemap index.
This fixes CORS issues when using external integration and a separate WP
domain.
[3.3.4] - 2023-06-08
[Changed]
- Changed AssetProvider to use canProvideAssets method.
[3.3.3] - 2023-06-08
[Fixed]
- Fixed issue introduced in 3.3.1 with dynamic routes.
[3.3.2] - 2023-05-09
[Fixed]
- Fixed bug where term meta description template was not used.
[3.3.1] - 2023-04-17
[Changed]
- Added plugin to change dynamic routing of category URLs when using /category/
prefix even though Yoast config forbids this. This now results in a 404.
[3.3.0] - 2023-03-22
[Added]
- Added PHP 8.2 support.
[3.2.1] - 2023-01-03
[Changed]
- Changed string rewriting to include support for %%primary_category%%
[3.2.0] - 2022-08-26
[Added]
- Added support for Premium URL redirects.
[3.1.1] - 2022-08-05
[Fixed]
- \FishPig\WordPress\Model\Post::isPublic now returns false if post is set to
noindex.
[3.1.0] - 2022-07-19
[Added]
- Added a Factory class to prevent PSR-0 errors when optimizing the composer autoloader.
[3.0.9] - 2022-05-04
- Fixed strict type error for str_replace
[3.0.8] - 2022-03-16
[Fixed]
- Open Graph now uses meta description if specific description not set.
[3.0.7] - 2022-03-14
[Fixed]
- Fixed missing YoastHelper class in StringRewriter.
[3.0.5] - 2022-02-08
[Changed]
- Removed trailing commas to fix some PHP 7.2 compat issues. This is fine in PHP 7.3 and above.
[3.0.4] - 2022-01-06
Fixed
- Various strict type errors
- Incorrect variable name ($object, should have been $postType)
[3.0.2] - 2021-12-22
[Changed]
- Code formatting clean up
[3.0.1] - 2021-12-16
Fixed
- Updated some references to legacy classes to the new versions.
[3.0.0] - 2021-12-15
A new major version to support the changes in fishpig/magento2-wordpress-integration (FishPig_WordPress)
----- Legacy Change Log Below -------
21/05/2021 - 2.0.11.6
- Fixed issue when using custom post titles.
18/12/2020 - 2.0.11.5
- Fixed issue when rewriteString encounters an array from ACF.
30/06/2020 - 2.0.11.4
- Changed Data helper to Proxy in Breadcrumbs plugin.
10/01/2020 - 2.0.0.25
- Code formatting cleanup
16/12/2019 - 2.0.0.24
- Optimised meta data retrieval when using Shortcodes & Widgets
23/11/2019 - 2.0.0.23
- Fixed issue with og:url when using static page as posts page
14/11/2019 - 2.0.0.22
- Fixed several issues with author meta data
28/10/2019 - 2.0.0.21
- Fixed og:image tag so original image is used rather than the 150x150 thumbnail
25/10/2019 - 2.0.0.19
- Fixed issue when using %category% in permalink structure
14/10/2019 - 2.0.0.17
- Changed og:image to full size image rather than smallest image
02/10/2019 - 2.0.0.16
- Fixed issue with Factory
31/05/2019 - 2.0.0.14
- Added fix for Yoast variables displaying instead of rendered page title.
28/05/2019 - 2.0.0.12
- Added support for the Yoast breadcrumbs enable/disable flag
08/04/2019 - 2.0.0.10
- Added support for the Yoast Primary category feature. Calling $post->getParentTerm('category') returns the primary category set via Yoast.
06/03/2019 - 2.0.0.8
Fixed warning regarding invalid argument for foreach.
22/01/2019 - 2.0.0.5
- Fixed issue with posts page title and custom post type archive meta data.
21/01/2019 - 2.0.0.4
- Fixed issue where breadcrumb settings in Yoast were used even when the Yoast config had breadcrumbs disabled.
21/01/2019 - 2.0.0.3
Removed 'Page 1 of 1' from page titles.
03/10/2018 - 2.0.0.1
- Fixed issue with fatal error when calling getFactory() method.
11/05/2018 - 1.0.0.20
- Added support for custom fields. You can use custom fields like so: %%cf_custom_field%% where custom_field is the custom field name. If the custom field was 'meta_description' the token would be %%cf_meta_description%%.
| Version | Stability | QA Status | Compatibility | Released |
|---|---|---|---|---|
| 3.3.16 | stable | Fail | Magento 2.4.7-2.4.9 Details | 2026-06-19 09:54:42 |
| 3.3.15 | stable | Fail | Magento 2.4.7-2.4.9 Details | 2025-09-12 12:42:23 |
| 3.3.14 | stable | Not tested | Not yet tested Details | 2025-07-26 06:08:04 |
| 3.3.12 | stable | Not tested | Not yet tested Details | 2025-07-18 08:36:07 |
| 3.3.11 | stable | Not tested | Not yet tested Details | 2024-03-26 09:09:39 |
| 3.3.10 | stable | Not tested | Not yet tested Details | 2024-03-21 13:02:55 |
| 3.3.9 | stable | Not tested | Not yet tested Details | 2024-03-20 14:58:36 |
| 3.3.8 | stable | Not tested | Not yet tested Details | 2024-01-27 06:32:59 |
| 3.3.7 | stable | Not tested | Not yet tested Details | 2024-01-08 15:17:41 |
| 3.3.6 | stable | Not tested | Not yet tested Details | 2023-12-19 15:48:46 |
| 3.3.5 | stable | Not tested | Not yet tested Details | 2023-07-03 12:05:08 |
| 3.3.4 | stable | Not tested | Not yet tested Details | 2023-06-08 11:03:40 |
| 3.3.3 | stable | Not tested | Not yet tested Details | 2023-06-08 09:57:54 |
| 3.3.2 | stable | Not tested | Not yet tested Details | 2023-05-09 14:13:08 |
| 3.3.1 | stable | Not tested | Not yet tested Details | 2023-04-17 08:37:01 |
| 3.3.0 | stable | Not tested | Not yet tested Details | 2023-03-22 14:31:49 |
| 3.2.1 | stable | Not tested | Not yet tested Details | 2023-01-03 11:20:25 |
| 3.2.0 | stable | Not tested | Not yet tested Details | 2022-08-26 15:37:52 |
| 3.1.1 | stable | Not tested | Not yet tested Details | 2022-08-05 08:16:24 |
| 3.1.0 | stable | Not tested | Not yet tested Details | 2022-07-19 12:38:29 |
| 3.0.9 | stable | Not tested | Not yet tested Details | 2022-05-04 10:06:02 |
| 3.0.8 | stable | Not tested | Not yet tested Details | 2022-03-16 19:14:16 |
| 3.0.7 | stable | Not tested | Not yet tested Details | 2022-03-14 09:16:48 |
| 3.0.5 | stable | Not tested | Not yet tested Details | 2022-02-08 13:43:48 |
| 3.0.4 | stable | Not tested | Not yet tested Details | 2022-01-06 13:20:29 |
| 3.0.3 | stable | Not tested | Not yet tested Details | 2021-12-23 14:02:24 |
| 3.0.2 | stable | Not tested | Not yet tested Details | 2021-12-22 17:47:24 |
| 3.0.1 | stable | Not tested | Not yet tested Details | 2021-12-16 10:14:02 |
| 3.0.0 | stable | Not tested | Not yet tested Details | 2021-12-15 13:32:48 |
| 2.0.23.0 | stable | Not tested | Not yet tested Details | 2021-09-09 12:04:38 |
| 2.0.11.9 | stable | Not tested | Not yet tested Details | 2021-08-20 23:08:10 |
| 2.0.11.8 | stable | Not tested | Not yet tested Details | 2021-05-28 13:31:05 |
| 2.0.11.6 | stable | Not tested | Not yet tested Details | 2021-05-21 12:46:26 |
| 2.0.11.5 | stable | Not tested | Not yet tested Details | 2020-12-18 12:43:06 |
| 2.0.11.4 | stable | Not tested | Not yet tested Details | 2020-06-30 11:36:09 |
| 2.0.11.3 | stable | Not tested | Not yet tested Details | 2020-03-06 13:14:58 |
| 2.0.11.0 | stable | Not tested | Not yet tested Details | 2020-02-24 17:30:12 |
| 2.0.0.26 | stable | Not tested | Not yet tested Details | 2020-02-10 09:45:04 |
| 2.0.0.25 | stable | Not tested | Not yet tested Details | 2020-01-14 08:01:13 |
| 2.0.0.24 | stable | Not tested | Not yet tested Details | 2019-12-16 22:27:25 |
| 2.0.0.23 | stable | Not tested | Not yet tested Details | 2019-11-23 14:43:37 |
| 2.0.0.22 | stable | Not tested | Not yet tested Details | 2019-11-14 13:41:39 |
| 2.0.0.21 | stable | Not tested | Not yet tested Details | 2019-10-28 09:42:00 |
| 2.0.0.20 | stable | Not tested | Not yet tested Details | 2019-10-25 12:43:45 |
| 2.0.0.19 | stable | Not tested | Not yet tested Details | 2019-10-25 12:35:39 |
| 2.0.0.18 | stable | Not tested | Not yet tested Details | 2019-10-14 15:04:22 |
| 2.0.0.17 | stable | Not tested | Not yet tested Details | 2019-10-14 08:59:35 |
| 2.0.0.16 | stable | Not tested | Not yet tested Details | 2019-10-02 16:12:06 |
| 2.0.0.15 | stable | Not tested | Not yet tested Details | 2019-07-11 13:23:48 |
| 2.0.0.14 | stable | Not tested | Not yet tested Details | 2019-05-31 12:32:49 |
| 2.0.0.12 | stable | Not tested | Not yet tested Details | 2019-05-28 13:23:36 |
| 2.0.0.11 | stable | Not tested | Not yet tested Details | 2019-04-16 12:23:22 |
| 2.0.0.10 | stable | Not tested | Not yet tested Details | 2019-04-08 17:04:51 |
| 2.0.0.9 | stable | Not tested | Not yet tested Details | 2019-03-22 23:47:07 |
| 2.0.0.8 | stable | Not tested | Not yet tested Details | 2019-03-07 15:12:15 |
| 2.0.0.7 | stable | Not tested | Not yet tested Details | 2019-01-26 13:14:38 |
| 2.0.0.6 | stable | Not tested | Not yet tested Details | 2019-01-22 15:12:21 |
| 2.0.0.5 | stable | Not tested | Not yet tested Details | 2019-01-22 12:00:16 |
| 2.0.0.4 | stable | Not tested | Not yet tested Details | 2019-01-21 17:56:42 |
| 2.0.0.3 | stable | Not tested | Not yet tested Details | 2019-01-21 15:04:34 |
| 2.0.0.2 | stable | Not tested | Not yet tested Details | 2018-10-08 12:56:24 |
| 2.0.0.1 | stable | Not tested | Not yet tested Details | 2018-10-03 10:38:07 |
| 2.0.0.0 | stable | Not tested | Not yet tested Details | 2018-09-06 08:57:53 |
| 1.0.0.22 | stable | Not tested | Not yet tested Details | 2018-06-01 12:44:24 |
| 1.0.0.21 | stable | Not tested | Not yet tested Details | 2018-05-16 14:18:19 |
| 1.0.0.20 | stable | Not tested | Not yet tested Details | 2018-05-11 13:15:25 |
| 1.0.0.19 | stable | Not tested | Not yet tested Details | 2018-04-24 12:16:03 |
| 1.0.0.18 | stable | Not tested | Not yet tested Details | 2018-01-31 08:11:58 |
| 1.0.0.17 | stable | Not tested | Not yet tested Details | 2018-01-31 08:11:10 |
| 1.0.0.16 | stable | Not tested | Not yet tested Details | 2018-01-08 13:18:14 |
| 1.0.0.15 | stable | Not tested | Not yet tested Details | 2017-10-13 10:07:56 |
| 1.0.0.14 | stable | Not tested | Not yet tested Details | 2017-10-12 15:37:27 |
| 1.0.0.12 | stable | Not tested | Not yet tested Details | 2017-08-30 10:08:36 |
| 1.0.0.11 | stable | Not tested | Not yet tested Details | 2017-07-31 08:42:29 |
| 1.0.0.10 | stable | Not tested | Not yet tested Details | 2017-07-26 14:46:10 |
| 1.0.0.9 | stable | Not tested | Not yet tested Details | 2017-05-31 15:39:31 |
| 1.0.0.8 | stable | Not tested | Not yet tested Details | 2017-05-10 12:53:22 |
| 1.0.0.7 | stable | Not tested | Not yet tested Details | 2017-05-04 07:04:44 |
| 1.0.0.6 | stable | Not tested | Not yet tested Details | 2017-05-02 07:19:08 |
| 1.0.0.5 | stable | Not tested | Not yet tested Details | 2017-04-17 18:20:57 |
Requires 1
| Package | Constraint |
|---|---|
| fishpig/magento2-wordpress-integration | ^3.29.0 |
Compatibility
Each Magento release line is installed on its supported PHP versions, then the module is built (DI compilation + static-content deploy) and its unit and integration suites are run. The matrix shows the lines and PHP versions the module is confirmed to install and run on. Code-quality results further down (phpstan, phpcs, …) are reported separately and never affect compatibility.
Code Quality
Advisory checks against the module's source. Static analysis runs once across the whole module; PHPStan re-runs per Magento + PHP version because resolvable symbols differ between releases. These NEVER affect the Compatibility badge — a phpcs finding can't make a module incompatible.
Static analysis
Coding standards (phpcs), mess detection (phpmd), copy-pasted code (cpd), PHP cross-version compatibility, composer.json validity. Each runs once for the whole module.
| Tool | Status | Findings | Summary |
|---|---|---|---|
| PHPCS | Warning | 61 | 61 warnings (ruleset: Magento2) |
| PHPMD | Warning | 42 | 42 rule violations (IfStatementAssignment:24, UnusedFormalParameter:9, UnusedLocalVariable:4, NPathComplexity:2, UnusedPrivateField:1) |
| Cpd | Pass | 0 | |
| Composer validate | Info | 2 | valid; 2 advisory notes (composer validate --strict) |
PHPStan
Type-checks the module's PHP against a real Magento install at the configured gate level. Re-runs per Magento and PHP version because resolvable symbols differ between releases. Cell → details modal.
Tests
Unit and integration suites, run for each applicable Magento and PHP version. A test failure speaks to the module's behaviour, not its compatibility with a Magento line, so it is reported here separately and never reddens the compatibility matrix.
Unit tests
| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | N/A | N/A | ||
| 2.4.8 | N/A | N/A | ||
| 2.4.9 | N/A | N/A |
Integration tests
| Magento | PHP 8.2 | PHP 8.3 | PHP 8.4 | PHP 8.5 |
|---|---|---|---|---|
| 2.4.7 | N/A | N/A | ||
| 2.4.8 | N/A | N/A | ||
| 2.4.9 | N/A | N/A |
Security
Security checks run directly against the module: an audit of its declared dependencies for known vulnerabilities (composer audit) and a scan of its source for malware and web-shell signatures. Each runs once. A malware detection fails the version outright.
No license declared
This package's composer.json doesn't declare a license, homepage, or authors. Check the source repository for terms of use.
More from fishpig
View vendorTurn an existing module into recurring revenue.
If you already maintain a Magento 2 module on GitHub or GitLab, listing it on Packagento takes about five minutes. We mirror your tags, handle distribution signing, and route paid licenses through Stripe Connect, so you can keep shipping the way you already do.