Skip to content

New REST API Endpoints for the block editor #95

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 82 commits into
base: feature/helpers
Choose a base branch
from

Conversation

s3rgiosan
Copy link
Member

@s3rgiosan s3rgiosan commented Feb 18, 2025

Warning

This PR is based on top of #96

Description of the Change

This PR adds REST API endpoints for searching, retrieving and managing post relationships, improving integration with the Block Editor and other WordPress components.

Closes #78

How to test the Change

Changelog Entry

  • Added - GET /content-connect/v2/post/{post_id}/relationships - Retrieve all relationships associated with a post.
  • Added - GET /content-connect/v2/post/{post_id}/related - Retrieve entities related to a post.
  • Added - POST /content-connect/v2/post/{post_id}/related - Update the list of related entities for a post.
  • Added - PUT /content-connect/v2/post/{post_id}/related - Add a related entity to a post.
  • Added - DELETE /content-connect/v2/post/{post_id}/related - Remove a related entity from a post.
  • Added - GET /content-connect/v2/post/{post_id}/search - Search for posts or users.
  • Added - relationships REST field for posts, exposing relationship data in REST API responses.

Credits

Props @s3rgiosan

Checklist:

dependabot bot and others added 30 commits March 1, 2023 18:02
Bumps [minimist](https://github.com/minimistjs/minimist), [minimist](https://github.com/minimistjs/minimist) and [mkdirp](https://github.com/isaacs/node-mkdirp). These dependencies needed to be updated together.

Updates `minimist` from 1.2.0 to 1.2.8
- [Release notes](https://github.com/minimistjs/minimist/releases)
- [Changelog](https://github.com/minimistjs/minimist/blob/main/CHANGELOG.md)
- [Commits](minimistjs/minimist@v1.2.0...v1.2.8)

Updates `minimist` from 1.2.5 to 1.2.8
- [Release notes](https://github.com/minimistjs/minimist/releases)
- [Changelog](https://github.com/minimistjs/minimist/blob/main/CHANGELOG.md)
- [Commits](minimistjs/minimist@v1.2.0...v1.2.8)

Updates `mkdirp` from 0.5.1 to 0.5.6
- [Release notes](https://github.com/isaacs/node-mkdirp/releases)
- [Changelog](https://github.com/isaacs/node-mkdirp/blob/main/CHANGELOG.md)
- [Commits](isaacs/node-mkdirp@0.5.1...v0.5.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
- dependency-name: minimist
  dependency-type: indirect
- dependency-name: mkdirp
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Bumps the npm_and_yarn group with 10 updates:

| Package | From | To |
| --- | --- | --- |
| [braces](https://github.com/micromatch/braces) | `2.3.2` | `3.0.3` |
| [watchify](https://github.com/browserify/watchify) | `3.11.1` | `4.0.0` |
| [browserify-sign](https://github.com/crypto-browserify/browserify-sign) | `4.0.4` | `4.2.3` |
| [elliptic](https://github.com/indutny/elliptic) | `6.5.4` | `6.6.1` |
| [fsevents](https://github.com/fsevents/fsevents) | `1.2.7` | `2.3.3` |
| [got](https://github.com/sindresorhus/got) | `7.1.0` | `11.8.6` |
| [vue-resource](https://github.com/pagekit/vue-resource) | `1.3.4` | `1.5.3` |
| [shell-quote](https://github.com/ljharb/shell-quote) | `1.6.1` | `1.8.2` |
| [tough-cookie](https://github.com/salesforce/tough-cookie) | `2.5.0` | `removed` |
| [node-sass](https://github.com/sass/node-sass) | `7.0.0` | `9.0.0` |


Updates `braces` from 2.3.2 to 3.0.3
- [Changelog](https://github.com/micromatch/braces/blob/master/CHANGELOG.md)
- [Commits](https://github.com/micromatch/braces/commits/3.0.3)

Updates `watchify` from 3.11.1 to 4.0.0
- [Release notes](https://github.com/browserify/watchify/releases)
- [Changelog](https://github.com/browserify/watchify/blob/master/CHANGELOG.md)
- [Commits](browserify/watchify@v3.11.1...v4.0.0)

Updates `browserify-sign` from 4.0.4 to 4.2.3
- [Changelog](https://github.com/browserify/browserify-sign/blob/main/CHANGELOG.md)
- [Commits](browserify/browserify-sign@v4.0.4...v4.2.3)

Updates `elliptic` from 6.5.4 to 6.6.1
- [Commits](indutny/elliptic@v6.5.4...v6.6.1)

Updates `fsevents` from 1.2.7 to 2.3.3
- [Release notes](https://github.com/fsevents/fsevents/releases)
- [Commits](fsevents/fsevents@v1.2.7...v2.3.3)

Updates `got` from 7.1.0 to 11.8.6
- [Release notes](https://github.com/sindresorhus/got/releases)
- [Commits](sindresorhus/got@v7.1.0...v11.8.6)

Updates `vue-resource` from 1.3.4 to 1.5.3
- [Release notes](https://github.com/pagekit/vue-resource/releases)
- [Commits](pagekit/vue-resource@1.3.4...1.5.3)

Updates `shell-quote` from 1.6.1 to 1.8.2
- [Changelog](https://github.com/ljharb/shell-quote/blob/main/CHANGELOG.md)
- [Commits](ljharb/shell-quote@v1.6.1...v1.8.2)

Removes `tough-cookie`

Updates `node-sass` from 7.0.0 to 9.0.0
- [Release notes](https://github.com/sass/node-sass/releases)
- [Changelog](https://github.com/sass/node-sass/blob/master/CHANGELOG.md)
- [Commits](sass/node-sass@v7.0.0...v9.0.0)

---
updated-dependencies:
- dependency-name: braces
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: watchify
  dependency-type: direct:development
  dependency-group: npm_and_yarn
- dependency-name: browserify-sign
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: elliptic
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: fsevents
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: got
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: vue-resource
  dependency-type: direct:development
  dependency-group: npm_and_yarn
- dependency-name: shell-quote
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: tough-cookie
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: node-sass
  dependency-type: direct:development
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <[email protected]>
# Conflicts:
#	package-lock.json
# Conflicts:
#	package-lock.json
#	package.json
# Conflicts:
#	includes/Registry.php
# Conflicts:
#	content-connect.php
#	includes/API/Search.php
#	includes/Plugin.php
@jeffpaul jeffpaul removed their request for review March 10, 2025 22:20
@jeffpaul jeffpaul added this to the 1.7.0 milestone Mar 10, 2025
@s3rgiosan
Copy link
Member Author

Hi @rickalee @jeffpaul, this is ready for review. This PR provides the foundational work for #94, and #97.

@s3rgiosan s3rgiosan requested a review from jeffpaul March 14, 2025 17:16
@s3rgiosan
Copy link
Member Author

I've created a try/block-editor-ui all-in-one branch to make it easier to test the features in both the block and classic editors, as well as the Query Loop integration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Code Review
Development

Successfully merging this pull request may close these issues.

Expose functionality through WP REST API
2 participants