Easy way to create a single serving website that changes once per day?
February 2, 2017 10:22 AM   Subscribe

I own a domain that I want to use to post one thing every day for my partner (the domain is her nickname, but we haven't ever used it for anything). Basically, I see a thing she'd like, write a post that goes to a backlog, and then the site just displays the next backlogged post each day. I'm just not sure how to set it up.

I'm a new-to-the-field web dev, not afraid to try new tech, and way into Jekyll, so if I could somehow do it with a static site gen setup, that would be cool. If it needed a not-too-complex database, that's fine, too (though perhaps overkill?).
posted by hardlikealgebra to Computers & Internet (7 answers total) 5 users marked this as a favorite
Tumblr could do this. Each post goes into a queue and you tell it how often you want to post from that queue.
posted by AFABulous at 10:27 AM on February 2, 2017

Pelican, which is Jekyll's Python based cousin, could do that I think. So I imagine Jekyll could handle it to. With Pelican I might store all the future posts outside of the content folder. Then have a cronjob that simply moves one markdown file every day into the content folder, runs the Pelican script, and then use rsync to copy the updates to the live site.
posted by COD at 10:43 AM on February 2, 2017 [1 favorite]

My long neglected blog uses Wordpress which has this feature - you just tell it when you want to the post to go live.
posted by exogenous at 12:04 PM on February 2, 2017

Yeah, I've got the most experience with Wordpress. Set it up as
Settings: Reading: Blog Page Shows at Most "1" post
and schedule your posts when you write them.
posted by adamrice at 12:19 PM on February 2, 2017

Lemme get this straight. You want to do something like blast out 6 or 7 posts at once but have the main landing page catch up to you blast over 6 or 7 days showing each new post for only one day before going to the next until you get to the last available (and showing that one until there are more posts available...)?

Maybe a bit of ajaxy javascript and cookies. Number the posts sequentially (1.html, 2.html, ...) drop them in a directory and always add the next post as last+1.html. Have a cookie keep track of the last number seen and the date seen. Do some voodoo to see if a day has passed since last success and check if you can fetch the N+1 content, if so increment last seen number and time in cookie, if not keep the cookie as is and show the last content again.

You could do this server side as well with PHP etc.
posted by zengargoyle at 3:45 PM on February 2, 2017

Jekyll could do this, and you could have a script that runs it on some input, be it a template, or even a well-crafted email to generate the page.
posted by nickggully at 6:14 PM on February 2, 2017

Response by poster: Thanks y'all! Some clarifying:

- I want to avoid Wordpress and Tumblr. Part of this is learning to build pages more from scratch, and those are too ready out of the bid for my taste. I also want just the one thing to show for any particular day, so the WordPress/Tumblr queue isn't quite there.

- Pelican and Jekyll sound right up my alley. I don't know from cronjobs or rsync tho -- any good resources there?
posted by hardlikealgebra at 2:45 PM on February 23, 2017

« Older Find immigration/terror attack commentary video...   |   Travel Ban Executive Order Enforcement Newer »
This thread is closed to new comments.