Releases: AxeWP/wp-graphql-rank-math
v0.3.2 - 2024-08-17
This minor release fixes a fatal error when trying to resolve SEO data from private Post
models.
What's Changed
- fix: Use
Post::$databaseId
to prevent fatal errors on privatecontentNode
s. H/t @MonPetitUd
Full Changelog: 0.3.1...0.3.2
v0.3.1 - 2024-08-11
This minor release fixes several bugs and improves compatibility with WPGraphQL for WooCommerce.
What's Changed
- fix: Fix interface conflicts
Product.
andProductVariation.seo
types with WPGraphQL for WooCommerce. H/t @robbiebel - fix: Prevent fatal errors when resolving custom
seo.openGraph
schemas by improving type handling. H/t @juniorzenb - fix: Expose
RankMathSeo.canonicalUrl
to unauthenticated users. H/t @marziolek - fix: Check if classes are loaded by a different autoloader before attempting to autoload them.
- chore: Update Composer dev-deps.
- tests: fix namespaces for Codeception tests.
- ci: test plugin compatibility with WordPress 6.6.1.
- ci: Remove WP < 6.3 from GitHub Actions tests for RankMath 1.0.218+ compatibility.
- ci: add
INCLUDE_EXTENSIONS
to.env
for installing external plugins (woocommerce, wp-graphql-woocommerce). - ci: replace uses of deprecated
docker-compose
withdocker compose
.
Full Changelog: 0.3.0...0.3.1
v0.3.0 - 2024-05-11
This major releases simplifies the GraphQL schema by narrowing the seo
field types to their implementations. We've also bumped the minimum version of WPGraphQL to v1.26.0 and refactored the RedirectionConnectionResolver
to use the improved lifecycle methods introduced in that release.
Upgrade Notes
This release contains breaking changes to the schema. Instead of the seo
field returning a generic RankMathSeo
object, it now returns a more specific object based on the node type. For example, a Post
node will return a RankMathPostObjectSeo
object, while a Category
node will return a RankMathCategoryTermSeo
object.
In most cases, you should not need to update your queries, as the schema should resolve the correct type based on the node type. However, if you are using inline fragments on the seo
field inside your query that are not actually resolvable, you will need to remove them from your queries.
E.g.
query GetContentNodeSeo {
contentNodes {
nodes {
... on Post {
seo {
# ✔️ This now works and is the **preferred** way,
# since `seo` is always a `RankMathPostObjectSeo` type.
...MyPostSeoFragment
# 🤷 The old way will still work but is now redundant.
... on RankMathPostObjectSeo {
...MyPostSeoFragment
}
# ❌ This needs to be removed, since `Post` isnt a `User`
... on RankMathUserSeo {
...MyUserSeoFragment
}
}
}
}
}
}
Breaking Schema Changes
- Field
Category.seo
changed type fromRankMathSeo
toRankMathCategoryTermSeo
- Field
ContentNode.seo
changed type fromRankMathSeo
toRankMathContentNodeSeo
- Field
HierarchicalContentNode.seo
changed type fromRankMathSeo
toRankMathContentNodeSeo
- Field
MediaItem.seo
changed type fromRankMathSeo
toRankMathMediaItemObjectSeo
- Field
Page.seo
changed type fromRankMathSeo
toRankMathPageObjectSeo
- Field
Post.seo
changed type fromRankMathSeo
toRankMathPostObjectSeo
- Field
PostFormat.seo
changed type fromRankMathSeo
toRankMathPostFormatTermSeo
- Field
Tag.seo
changed type fromRankMathSeo
toRankMathTagTermSeo
- Field
User.seo
changed type fromRankMathSeo
toRankMathUserSeo
What's Changed
- feat!: Narrow
seo
field types to their implementations. - fix: Correctly resolve
rankMathSettings.homepage.description
field. Props @offminded 🙌 - dev: Update
RedirectionConnectionResolver
for v1.26.0 compatibility. - chore!: Bump minimum supported WPGraphQL version to v1.26.0.
- chore: Update Composer dev-dependencies to latest versions and address uncovered lints.
- chore: Update Strauss to v0.19.1
- tests: Update compatibility with
[email protected]
.
New Contributors
- @offminded made their first contribution in #92
Full Changelog: 0.2.0...0.3.0
v0.2.0 - 2024-04-08
This major release refactors the plugin's root files to use the WPGraphQL/RankMath
namespace. We've also added explicit support for WordPress 6.5 (including the new Plugin Dependencies feature), squashed a few bugs, and more.
Note
Although this release technically contains breaking changes, these changes are limited to developers directly extending the wp-graphql-rank-math.php, activation.php, deactivation.php files, and the WPGraphQL\RankMath\Main class.
If you are using the plugin as intended, you should not experience any issues when upgrading.
What's changed
- feat: Add plugin dependencies header.
- fix: Improve handling of
ContentTypeSeo
and prevent fatal error when generating breadcrumbs. H/t @MonPetitUd - fix: Plugin versions in dependency check logic is now in sync with the version requirements.
- fix: Update the return type of the
type
field in theRedirection
model to correctly return a?string
. - chore!: Add
WPGraphQL/RankMath
namespace to root-level files (activation.php
,deactivation.php
,wp-graphql-rank-math.php
). - chore: Declare
strict_types
in all PHP files. - chore: Refactor autoloader logic to
Autoloader
class. - chore: Update Composer dev-deps and fix newly-surfaced PHPCS smells.
- chore: Implement PHPStan strict rules.
- chore: Update WPGraphQL Plugin Boilerplate to v0.1.0.
- ci: Update GitHub Actions to latest versions.
- ci: Test plugin compatibility with WordPress 6.5.0.
- ci: Update Strauss to v0.17.0
v0.1.1 - 2024-03-24
This minor release adds support for more social fields in the RankMathSocialMetaSettings
and RankMathUserSeo
types. Additionally, it fixes a bug where the seo.openGraph.image
field would fail to resolve if provided a string image.
There are no breaking changes.
What's changed
- feat: Expose
additionalProfiles
field onRankMathSocialMetaSettings
. props: @colis 🙌 - feat: Expose
facebookProfileUrl
,twitterUserName
, andadditionalProfiles
social fields onRankMathUserSeo
. props: @colis 🙌 - fix: Correctly resolve
seo.openGraph.image
field when parsed value is a string.
New Contributors
Full Changelog: 0.1.0...0.1.1
v0.1.0 - 2024-03-03
This minor release bumps the plugin version to 0.1.0! 🎉
Additionally, we fixed a few bugs regarding seo.openGraph
resolution, and deprecated a setting that was removed in RankMath v1.0.211.
There are no breaking changes in this release.
Note
The reason for the version bump is to make it easier to update future releases in accordance with our versioning policy.
While the plugin version number is indicative of the (projected) schema maturity and not the underlying code (which has been used in enteprise production environments for almost two years), the new features and improvements that would warrant major changes to the schema are currently blocked upstream.
By bumping to v0.1.0, we can continue to push patch releases in the meantime without users having to worry about breaking changes.
What's changed
- fix: Deprecate
rankMathSettings.sitemaps.general.canPingSearchEngines
, as it was removed in RankMath v1.0.211. - fix: Improve SEO
head
data fetching to load Rank Math modules more consistently. - fix: Correctly parse OG product meta data when resolving
seo.OpenGraph
. H/t @joanpzen - chore: Pin WPBrowser to v3.4.x to avoid breaking changes in v3.5+.
- ci: Test plugin compatibility against WordPress 6.4.2
This release was sponsored by Red Rocks Web Development 😍.
Full Changelog: 0.0.16...0.1.0
v0.0.16
What's Changed
- fix: Correctly parse excluded Post/Term IDs when returning nodes for Sitemap. Props @marcinkrzeminski
- chore: Update Composer dev-dependencies.
- chore!: Bump minimum supported WPGraphQL version to v1.14.0.
- chore!: Bump minimum supported RankMath version to v1.0.201.
- chore!: Bump minimum supported WordPress version to v6.0.
- ci: Test Plugin Compatibility with WP 6.3.2 and PHP 8.2.
New Contributors
- @marcinkrzeminski made their first contribution in #62
Full Changelog: 0.0.15...0.0.16
v0.0.15
What's Changed
- chore: Update Composer dev-dependencies.
- chore: Update WPGraphQL Coding Standards to v2.0.0-beta and lint.
- chore: Fix minimum supported WordPress version to be 5.6, which is the minimum requirement for RankMath 1.0.90.
- ci: Test Plugin compatibility with WordPress 6.3.
Full Changelog: 0.0.14...0.0.15
v0.0.14
What's Changed
- fix: Fetch the correct SEO data when resolving custom taxonomy terms. Props @lucguerraz
- dev!: Move
SEO::$global_authordata
property to theUserSeo
model and make nullable. - dev: Move
seo.breadcrumbs
resolution from theRankMathSeo
interface to theSEO
model. - chore: Update Composer dev-dependencies.
New Contributors
- @lucguerraz made their first contribution in #57
Full Changelog: 0.0.13...0.0.14
v0.0.13
What's Changed
- feat: Expose Redirections to the GraphQL schema.
- dev: Convert HTML entities for
breadcrumbTitle
,description
, andtitle
fields to their corresponding characters. H/t @sdegetaus - chore: Implement
axepress/wp-graphql-cs
ruleset for PHP_CodeSniffer. - chore: Update Composer dependencies.
- docs: Relocate query docs to
docs/reference/queries.md
, and add docs on querying redirections, and included WordPress actions and filters.
Full Changelog: 0.0.12...0.0.13