#wordpress 2023-12-03

2023-12-03 UTC
#
GWG
Great... nothing should have broken
[benji] joined the channel
#
Loqi
GWG has 28 karma in this channel over the last year (53 in all channels)
#
gRegor
GWG++ awesome!
#
GWG
gRegor: Slogging toward Tickets
[pfefferle] and [aciccarello] joined the channel
#
s​tarrwulfe
BTW, is it possible to enable the Post Kinds plugin to work on more than just posts? I'm also using Jan's Indieblocks plug in to use his Likes and Notes sections; Would be great if Post Kinds worked in there too...
#
s​tarrwulfe
Maybe there's something I can add to just my instance of it to do it if you don't want to go thru the trouble of a whole release
#
GWG
I'm confused. What are more than Posts?
#
GWG
You may have to explain. The products address certain things differently.
#
s​tarrwulfe
It's basically two more post sections.
#
GWG
Could Indieblocks use my parsing code to get a representation of the post you were liking, yes. It's an endpoint.
#
GWG
You are referring to Custom Post Types then in WordPress in general?
#
s​tarrwulfe
Not custom post types. Let me see if I can make a screenshot of the backend here...
#
s​tarrwulfe
Here's a post that is in my "Notes" section:
#
IWDiscord
<s​tarrwulfe#0>
#
s​tarrwulfe
I use that section to reply to other pages mostly, including my own
#
GWG
I could try installing Indieblocks on something.
#
s​tarrwulfe
Would be nice to be able to keep the post response as "reply"
#
GWG
In the abstract, I have no problem working with jan to figure something out if people are interested.
#
s​tarrwulfe
I'm sure he's open to it. He said as much when I talked to him a few months ago about it.
#
GWG
If I understand, Note and Like are custom post types.
#
s​tarrwulfe
Yep, that's what they are
#
GWG
I thought about doing it that way, but I originally opted for representing all indieweb post types as the post type in WordPress as equivalent to h-entry. If I ever did event, that would be a custom post type.
#
GWG
So, what would you want the two plugins to do together?
#
GWG
If they are both doing notes in different ways, I mean?
#
s​tarrwulfe
Honestly, I could get behind that.
#
s​tarrwulfe
Jan's plug in allows the capability to turn off the custom post type functions
#
GWG
Yes.
#
GWG
My question is, what functionality from Post Kinds is missing from Indieblocks or vice-versa?
#
GWG
So, if you were to merge the feasture set, what would you want from each?
#
GWG
The theme blocks I can see.
#
s​tarrwulfe
The major thing is the ability to access the post type dashboard from the Gutenberg "blocks" dashboard (I know, I know)
#
s​tarrwulfe
But that's because the mobile app uses it as well so...
#
s​tarrwulfe
And being able to have custom post types for each Post Kind because you can create different templates per type in the Site Editor.
#
GWG
So, that seems to be jan's approach, to do Custom Post Types. So, what features from Post Kinds would you want to progressively enhance Indieblocks?
#
s​tarrwulfe
This may also help you deal with "block life" which everyone kinda avoided until now (at least I did 😅)
#
GWG
The only one I can think of is the generation of link previews.
#
GWG
So, put in a URL, get back all the data on it to render context.
#
GWG
And that is actually independent of Post Kinds.
#
s​tarrwulfe
I like how you have those. That's the major reason I keep it here.
#
GWG
So, Indieblocks should use Parse This
#
GWG
It is what gets all that data and creates an API endpoint inside WordPress to retrieve it
#
GWG
If Indieblocks can call the API endpoint for a Parse this install, which can be installed independently, then it could store that as well.
#
GWG
Also, the format for storing in WordPress post meta is using the microformats-2 property name with the mf2 prefix
#
GWG
So, mf2_in-reply-to is where the microformats 2 for a reply would be.
#
GWG
mf2_like-of would have it if it was a like.
#
GWG
In theory, I could further decouple the rendering from the storage, I suppose.
#
GWG
I have been doing that because I figured at some point, someone would want to blockify Post Kinds
#
s​tarrwulfe
Interesting. I've been messing with the resulting custom fields in a few of my entries to play nice with ActivityPub as well so I can have the post response for replies fall outside of h-content and not get carted off into a Mastodon post. Super WIP though.
#
GWG
It is also how Micropub, the plugin does it...although partially only if you disable auto-rendering, which I'd really like to remove.
#
GWG
e-content, not h-content
#
s​tarrwulfe
yeah, e-content.
#
GWG
But, if you have Post Kinds and Micropub installed, it disables automatic rendering in Micropub.
#
s​tarrwulfe
hmm... I noticed as much when I make a post with Quill for example.
#
GWG
We had multiple conversations about not storing the rendered version in the post at all in Micropub, but it was always complicated.
#
GWG
I also considered storing everything in content, and parsing out the Microformats similarly to the way blocks are parsed out, but that would be an insanely big project
#
s​tarrwulfe
If it was blockified with a custom post type, then at least for me I'd put it into a template and take care of it that way.
#
s​tarrwulfe
Seems like that would be the move unless I'm missing something
#
GWG
The goal I keep being willing to do is to gradually make the elements increasingly accessible over the REST API so the blocks could use it. I'm not sure if I'm going to force myself to write the javascript part
#
s​tarrwulfe
I wonder if Jan would be available to collab... Maybe there's a best of both worlds approach that could be done?
#
GWG
I think possibly.
#
GWG
My original plan was two different UIs, but the same backend
sknebel joined the channel
#
[snarfed]
yeah mf2 storage and rendering is arguably the single biggest problem for WordPress IndieWeb right now, and has been for a long time
#
[snarfed]
apart from Post Kinds, we have no structured storage, it's all in brittle rendered HTML in content, and rendering mf2 for meta depends on per-theme support, which has always confused users and been unsustainable for developers
#
[snarfed]
my site's post-meta mf2 rendering is literally in a few hacky one-off functions in functions.php. not ok 😕
#
GWG
[snarfed]: My idea of having post_content parsed by an mf2 parser and converted might work
#
GWG
Sorry, for the delay, I was laminating my NYC Water supply land access permit.
#
[snarfed]
not ideal for interop between different plugins
#
[snarfed]
structured data should ideally be stored structured, not unstructured
#
[snarfed]
(like Post Kinds, I assume!)
#
[snarfed]
honestly I suspect blocks are a good fit for this
#
[snarfed]
they let you store and then render independent parts of a post as structured data, which is exactly what mf2 is
#
[snarfed]
and blocks are easily writable and readable by independent plugins and themes
#
GWG
[snarfed]: I know.. I'm just still not on the block train, but I know I'll be forced on eventually
#
[snarfed]
totally ok. the point here isn't blocks, it's that we need to start storing post contents as structured mf2 data, not as baked HTML
#
GWG
[snarfed]: Post Kinds does. Micropub does if you turn off the rendering.
#
[snarfed]
wait micropub does?! interesting, news to me. how does that work?
#
[snarfed]
and I guess even more importantly, we really need all of the indieweb plugins to agree on a common data model and set of post data (or whatever) so they can all read and write the _same_ structured mf2
#
GWG
[snarfed]: It stores every property in mf2_ prefixes except post_content. Which is the issue.
#
[snarfed]
right, the rendering also needs to render from those dynamically, which is hard
#
[snarfed]
if we decide the common data model is Post Kinds, great! if it's micropub's, great! but we need to push hard to standardize everything in the ecosystem on some mf2 data model, maybe especially themes
#
[snarfed]
themes not supporting mf2, or not enough or not correctly, is way too common a problem for users
#
GWG
They share the same model. The mf2 prefixed properties where WordPress itself has no equivalent property. There are just two modes in Micropub, which I think was where we ended up in trouble.
#
[snarfed]
huh, maybe. how do users choose between them?
#
GWG
It is the removal of this that does it
#
[snarfed]
what removes that?
#
GWG
Or in a theme, in theory.
#
GWG
But, we haven't reviewed that decision in years.
#
[snarfed]
interesting! if post kinds and micropub share data model, and micropub can render content dynamically based on stored structured mf2, that's more progress than I thought. that's great!
#
GWG
[snarfed]: It can't, but it would be an easy change to have it do that.
#
GWG
We talked about it in 2017 and 2018.
#
GWG
I just ripped out a bunch of code from IndieAuth, I might end up trying to be opinionated again.
#
[snarfed]
yeah that would be the key next step
#
[snarfed]
that and (separate) pluggable post meta rendering that could be used in any theme
#
[snarfed]
(I guess that's the wordpress-uf2 plugin, which got abandoned, but probably shouldn't have been)
#
GWG
[snarfed]: wordpress-uf2 broke more than it fixed a lot of the time, unfortunately.
#
GWG
But that doesn't mean it couldn't be resurrected with a new focus.
#
GWG
IndieAuth started out as a web-signin plugin before we used that exact term, and is new a full IndieAuth implementation
#
[snarfed]
right. or something else, I'm agreeable, we just need a way to add mf2 to post meta in any theme
#
GWG
So, pivoting is not out of the question
#
[snarfed]
could I ask you to write up this ^ progress and current state and TODOs in https://github.com/indieweb/wordpress-micropub/issues/85? and maybe link to it in https://github.com/indieweb/wordpress-uf2/issues/30#issuecomment-312375228 and anywhere else relevant?
#
GWG
It isn't add so much as display. It is always added.
#
GWG
Micropub is the oldest plugin I actively develop that hasn't seen attention in too long
#
GWG
Last Update was March
#
GWG
Major update in longer
#
[snarfed]
sounds like it's time for current status ^ writeup and issue triage!
#
[snarfed]
https://github.com/indieweb/wordpress-micropub/issues/294 is a good example (I think?) of the current mf2 storage/rendering awkwardness
#
GWG
I'll finish up what I'm working on and switch over.
gRegorLove_, Anomalily, [schmarty] and angelo joined the channel