-
Notifications
You must be signed in to change notification settings - Fork 270
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
Explore a WP entity export iterator #2107
base: trunk
Are you sure you want to change the base?
Conversation
I've been reviewing WP tables and data structures to see what seems to make sense. This is a very rough outline that I plan to fill in and explore more tomorrow. So far, the rough approach is to iterate over various entity iterators, most of which will be iterating over table rows with a condition like One possibly controversial direction so far is that I am thinking it may make sense to directly convey terms, taxonomy, and term relationships separately rather than modeling categories and tags as first class entities. Intuitively, it less fraught to just convey what is there and leave meaning-making to API consumers. Do you have any thoughts on this, @adamziel and @zaerl? |
Note: Some of the inline TODOs share some of my thinking. |
This is okay, and it's not controversial at all. But remember that the tables may have some artifacts and some special rules (example: a post We should have two base XML exporters here and start from the simpler ones.
Reading the steps in twenty posts is okay. For every post, you should read the following:
|
Thank you for your feedback on this, @zaerl! It's helpful.
I am working on this first. Currently, there is just a dumb iteration over database rows starting with terms tables, but it's going to have to be a bit smarter than that (I think). And the above provides a good context / test case to see whether this is headed in a reasonable direction. |
Having both cases can be a good thing for us. The core Starting with the DB SQL queries is perfectly fine, and you made the right choice. 👍 |
Motivation for the change, related issues
For data liberation, we want an API for streaming WP entities from a site. Then we can export WP entities to multiple targets without having to solve the same entity traversal problems in each exporter.
Related to #2106
Implementation details
TBD
Testing Instructions (or ideally a Blueprint)
TBD