Thursday, June 8, 2023

Automated lists by topic

Stylaized graphic of a woman presenting a list
image: mohamed hassan
Tag your posts with labels, and you'll be able to create dynamic lists of links to all the posts with a label.

(You can also do the same thing for all your posts, labeled or not.)

"Dynamic" means the list revises itself automatically whenever you add or subtract a label from a post.

All your posts about wheat beers. About the plan to put bike lanes on Main Street. About Greek myths.

A list like that in your sidebar can help your readers find older posts that are still evergreen.

This is one of my favorite Blogger tricks.

Google should really give us a widget for this. But absent that, I have been

  • using RSS feeds that are already part of Blogger, and 
  • promoting a third-party service that uses a feed to generate the list.

Paste in your feed url, click a button, and get a short bit of code to paste into your blog. The code makes the list for you.

Feed2JS, the service I used, is no more. All things must pass, especially online.

Here are some things you can use instead.

One blog, many feeds

Unless your blog is private, it has a feed.

Indeed many feeds: one for all your blog posts, one for each label, one for all your blog comments, and one for the comments to each post.

If you view any of these, you will see a bunch of code. Feeds, however, are the backbone of most automated email subscriptions, also of Blogger's Reading List and other rss readers.

They also let you make these automated lists.

Feed to HTML

There are, it turns out, many services that will turn an RSS feed into widget code for you. (And the code also works in blog pages).

The one that is most like the old Feed2JS is the similarly named RSS 2 HTML.

It will spit out working code, and it is free.

Another free service, sociablekit, has many formatting options. There's even an oldest-first option that would be a great way to list all your posts about your trip to the Maldives.

But sociablekit only operates on the 50 most recent posts in the feed.

Other services have more bells and whistles but typically charge for a subscription or have a free tier that is limited in some way.

By the way, these work with any feed, including your main blog feed. That would give you a list of all your posts.

What I'm talkin' about

Here's a list of all my blog posts about feeds, via RSS 2 HTML:

I had to tinker with the css to get that to format the way I wanted too.

Getting your feeds

For a label, the form for the feed url is as follows
[blogname].blogspot.com/feeds/posts/default/-/[label]?max-results=150

You substitute your information (no brackets) for [blogname] and [label]. The feed of all my posts with the "feeds" label, for instance, is

too-clever-by-half.blogspot.com/feeds/posts/default/-/feeds?max-results=150

If you have a custom domain, just substitute that for [blogname].blogspot.com in the example above.

Google caps Blogger feeds at 150 posts, but you can as get many as 500 if you use this hack.

For your whole blog, that is, a list of every post, it is even simpler:

[blogname].blogspot.com/feeds/posts/default?max-results=150

but consider that the Archive widget, which is designed for this, may be better.

Script it?

This approach has the virtue of ease of use. But if you want to manipulate the feed—say, list the elements in alphabetical order—you'll need a script that does that.

Similarly, these services don't typically handle big feeds. The cut-off is around 100 posts, and sometimes less.

But there are scripts that could handle a feed of any size.

I describe my favorite of these scripts in this report earlier this year.

Work Flow

  • Locate an RSS-to-HTML service, such as RSS 2 HTML.
  • Get the feed for the list you want to use. Don't forget to append "/?max-results=150."
  • Follow the instructions from the service about where to paste the feed and how to generate the list code.
  • Tweak any settings to get what you want.
  • Copy and paste the list code into an HTML widget or the editor, in HTML mode, of a page or post.

Hey Google

We should not have to code this! Please give us a widget that lets us share older content with our readers, by topic.

Preferable with some sorting options.

Please.

Meanwhile, reader, if you stumble across another third-party service for this, please drop a note in the comments.

2 comments:

  1. Hello Adam, I want to ask you something. Emails in TinyLetter are sent automatically? Or are you also writing?

    ReplyDelete
    Replies
    1. Note: @İsmail is asking about the service I am using for subscribe-by-email. It has nothing to do with the automated lists.

      Unfortunately not automatic. I have to recreate each post as an email and send. The least bad of many choices, from my point of view.

      Delete