Yet Another Blogging ‘Meta’ Post

I’ve got some things I want to blog but I’m so deep into the new setup and migration of posts that I haven’t been able to get to any of it. Instead, a few brief notes about how things have been going in this process.

First, the days-long conversation with ChatGPT (actually a large sequence of different chats) about trying to create a custom function for a system of internal backlinks appears finally to have paid off. I can’t tell you whether or not there are any problems with this code, but it does the three things.

  • It creates backlinks only on publish or update.

  • It doesn’t duplicate any data.

  • It removes backlinks if a linking post is deleted.

In addition, ChatGPT gave me a companion function defining a shortcode to display backlinks on any post that has them.

Both functions are active and behaving as intended, so far without any problems. This is a feature I’ve needed for at least a decade and have never been able to scare up, and it makes worth while just how arduous and at times exasperating was the ChatGPT process.

ChatGPT also gave me a quick custom function to allow me to keep my preferred permalink format, which uses three-letter month abbreviations instead of %monthnum%.

One thing we’ve not yet figured out, unfortunately, is how to have the pagination on my “all posts” archive page yield URLs of the page/2 format you see on the native date- and taxonomy-based archives, instead of the query-page=2 format it’s using by default.

I’m continuing to move posts over by hand, partly because it kills time and partly because it lets me catch any potential snags. In order to keep things consistent, since the posts I’m moving were in Markdown, I’m making use of the Markdown block provided by the Jetpack plugin.

(Technically, you can paste Markdown directly into the WordPress block editor and it automagically becomes HTML. Except that because WordPress blocks functionally don’t allow for things like paragraphs inside of list items, some of my post content wouldn’t translate. So, it makes sense just to stick with straight Markdown.)

Also, I’m working on re-working the Guide, if I can find a layout and presentation that both fits with the Beaumont theme and doesn’t look stupid because the Guide makes use of URLs in the copy and URLs don’t ling-wrap very well.

Once all 500 of so posts find their way here, I’ll return to the full-scale blog restoration project that’s gotten sidelined over the past couple of months.

Maybe I’ll actually get back to some non-meta blogging along the way, too.


  1. So there’s one giant, whopping problem with my permalinks scheme: date-based archive URLs still use the numerical %monthnum%. Normally, this easily would be fixed by add_rewrite_rule in WordPress.

    Unfortunately, that doesn’t work if you’re using nginx, and so far I cannot get ChatGPT to give me the correct combination of WordPress functions and nginx rewrites to force the date-based archive URLs to use the three-letter month abbreviations.

  2. This whole makeshift “all posts” archive page is a hot mess. For some reason while pseudo-titles for untitled posts show up on the front page and on the date- and taxonomy-based archive pages, they do not show up in the loop on the “all posts” archive page.

    Apparently, WordPress has some sort of congenital opposition to there being a native “all posts” loop, despite the fact that people keep asking for one.

  3. Also, there is a flaw or two in the handling of untitled posts and I have I say that I remain exasperated that WordPress, in 2023, still doesn’t have an elegant, native way to handle untitled posts by making some sort of “pseudo-title”.

    It seems like not rocket science to have settings for untitled posts where you can set some default behavior, such as “generate an 8-word slug from the post content” and “display the pseudo-title followed by an ellipsis in places such as <title> or next/previous links but don’t show them visually on the post page itself”.

    But, no. Decades into blogging and two decades into WordPress, they still don’t handle untitled posts in any way other than simply never showing any kind of title where at least a pseudo-title would make sense, and the slug just gets made from the post ID.

  4. I think we have fixed the issues with handling untitled posts as far as pseudo-titles, but I still have to sit down with ChatGPT and figure out post slugs. The issue there is not so much creating them but in the case of an untitled post I later title then reverting to the normal, native slug behavior.