Open iandunn opened 7 years ago
I guess a third idea would be to try and mirror the functionality of WP::parse_request()
in JavaScript, but that seems fragile and not future-proof.
@iandunn Either the first or the second idea are worth considering. Ideally you don't want to recreate existing core functionality of WordPress in JavaScript.
cc @danielwrobert, this is the issue we talked about last week.
#42465-core may be helpful here.
I think Foxhound is an awesome theme and a big step forward for the entire WP theming community, kudos!
It seems like one of the major challenges that still needs to be solved is allowing the user to set arbitrary permalinks. I don't have a solution for that, but I figured I'd start an issue so we can all brainstorm ideas.
I'm guessing the problem is that the JS client doesn't know which endpoint it should query for the data, because the only thing it knows is the URI. Are there any other problems besides that one?
My first thought on the unknown endpoint issue would be something like this:
https://example.org/wp-json/foxhound/v1/uri/contact-us
orhttps://example.org/wp-json/foxhound/v1/uri/2017/03/foo-bar
X-Foxhound-Template
Another idea would be to have client make a request to
https://example.org/wp-json/foxhound/v1/uri/contact-us/json
orhttps://example.org/2017/03/foo-bar/json
directly, and let WP do the normal work of looking up the data/template on it's own, but then have Foxhound hook in attemplate_redirect
or earlier and prepare the data using the appropriate API controller, then output it withwp_send_json()
. I'm guessing this would be slower than the custom API endpoint, but I haven't tested that.I haven't tested either of those ideas, so there could be big holes in them, but hopefully it's enough to start a discussion that leads to something.