Refactor: Implement GraphQL fragments for WordPress API queries #280
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What & Why
Refactored WordPress API queries to use centralized GraphQL fragments instead of duplicating field definitions across multiple functions.
Problem: Field definitions repeated in 10+ places
Solution: Created reusable fragment library
Result: ~200 lines of duplicate code eliminated
Changes
lib/graphql-fragments.tswith 8 reusable fragmentslib/api.tsto use fragmentsFragments Added
AUTHOR_FIELDS_FRAGMENT- Author dataPOST_PREVIEW_FRAGMENT- Post listingsFULL_POST_FRAGMENT- Complete post dataPAGINATION_INFO_FRAGMENT- PaginationFEATURED_IMAGE_FRAGMENT,CATEGORY_FIELDS_FRAGMENT,SEO_FIELDS_FRAGMENT,TAG_FIELDS_FRAGMENTTesting
✅ Tested locally - all pages work as expected:
No visual changes, no console errors.
Impact
Before:
After:
Benefits: Easier maintenance, single source of truth for schema changes, cleaner code.