Hiyo, I've been having fun working on my other sites over the past week, and one thing I finally got around to trying was implementing zoneRSS on one that uses Zonelets. This was a bit of a task because I already had posts there, and zoneRSS has no simple way to pull historic posts into the RSS feed. So I did it manually, and will explain how in this post.

Zonelets & zoneRSS explainer

If you are unfamiliar Zonelets is a popular html blogging codebase and set of themes (that I use here also) which once you know it, you recognize it everywhere on Neocities and related site hosts. zoneRSS is a supplemental bit of code, designed for use with Zonelets, that does the following:

I think this makes posting with Zonelets easier, especially for beginners not having to manually update the post array every time, and the RSS feed is a nice bonus. The in-browser post editor/creator isn't for everyone though, even I prefer using local templates in text editors and uploading them when ready (which to be fair, you could still do and copy/paste into the zoneRSS editor).

The historic/existing posts problem

The intended use of zoneRSS seems to be replacing the Zonelets 'archive.html' page with the zoneRSS 'feed.html' page, but if you have a history of posts made with Zonelets already you have a problem. You are able to add your old posts to a 'Historic Posts Array' in the zoneRSS code, but they won't appear on the RSS feed, and by extension will be absent from the feed.html page. The historic posts will only appear on the archive.html page, which is just the output of Zonelets' 'post list' that will also now contain any newer posts made with zoneRSS. This means you can't really put the 'postlistdiv' code underneath the feed code, as it will show doubles of any newer posts.

The solutions to this problem seem to be:

The manually adding posts solution

I chose to take up the latter of the previously mentioned solutions because I wanted every post in full text on the RSS feed, so people can read as they wish or backup/keep if they wanted (posts typically download locally in feed readers). This solution gets much more time consuming with the more posts you have, if you are/were considering zoneRSS and already have a Zonelets blog with posts, it would benefit you to do this sooner rather than later. You also should skip the step in the zoneRSS manual that says to add your posts to the 'historic posts array' as this will make them double up in the archive.html page (if you intend to still use that), and you will be adding them manually to the new system anyway.

While following the zoneRSS manual, you will generate your RSS feed for the first time. From that you have the template with which to add posts. Below is an example of the code, anything in italics will be specific to you/r site, and everything between the 'item' tags is an individual RSS feed post:



<item>

<title>post title</title>

<description>

<![CDATA[ <p>html content of post within the CDATA tag brackets</p> ]]>

</description>

<pubDate>Sat, 28 Feb 2026 00:00:00 +0000</pubDate>

<link>https://example.com/posts/examplepost.html</link>

<guid isPermaLink="false">https://example.com/feed.xml#0</guid>

</item>



If you copy that block from your own RSS feed generated with zoneRSS, it will have your site's address between the link tags and the guid tags. Which means that for each individual post you will have to copy and paste in, or otherwise manually enter the following:

If you only have a few posts, this should be pretty quick! I had 26 posts, and at one point almost lost all the work by not saving and nearly became the joker, but it took about an hour overall. Once complete, copy/paste the whole feed.xml file's text through an RSS validator to see if it worked, then you can upload it! After this point the manually edited feed should show up corrently in; the feed.html page, the archive.html page (that's now pulling posts from the feed instead of the old Zonelets post array), and you can use zoneRSS as intended by creating new html posts and/or RSS posts in the feed.html page's editor.

Beyond this, I will also note (because it isn't explicitly mentioned in the zoneRSS manual) that the template zoneRSS uses for creating html posts is the one that comes with Zonelets (posts/2020-11-10-Post-Template.html). You can redirect it to a different template in the script.js, but that didn't work properly for me. It may need text in the <p> tags to replace, or it may be set up specifically for the text in the Zonelets post template, idk and I cbf working it out, just keeping that template around was easier (redownload it if you need).

Conclusion

This mess worked for me in this situation, but I am typically someone who slogs through an inefficient solution for a desired end goal if other means are outside of my ability. I'm sure I could 'just' create some other code or script to do this, but that would probably take me days-weeks to learn and struggle with, as opposed to an hour of manual data entry ¯\_(ツ)_/¯. I haven't implemented this on my personal site here, because I already have a setup for updating my RSS feed using RuSShdown. I wrote about that process in another post that might be more useful if you don't use Zonelets/zoneRSS :)

Thanks for reading!