A user site is your HTML, so you can already build whatever you like. Scripts are the bits you
cannot build on your own: the ones that need somewhere to keep things, that need to know who is
looking, and that need a form that can post back. A guestbook, a forum, a poll, a hit counter.
You add one by typing its code into a page. That is all there is to it. There is no panel to
configure and nothing to install.
[lp:guestbook]
17 of them at the moment, 11 of which take posts from visitors. This page is built from the scripts themselves, so it is never out of date.
An odometer showing how many people have been by. One count per visitor per day, so a refresh does not pad it.
[lp:hitcounter]
| Setting | What it does |
|---|---|
| id | Name it if you want more than one. Default main. |
| style | odometer (black LCD) or plain. Default odometer. |
| digits | How many digits to pad to. Default 6. |
| label | Text above the number. Default "You are visitor". |
Shows one other LonePortal user site, picked fresh each day. Everybody sees the same one, so it is a real spotlight rather than a random link.
[lp:siteoftheday]
| Setting | What it does |
|---|---|
| title | Heading. Default "Site of the Day". |
| mine | 1 lets your own site come up. Default 0, which skips it. |
| count | How many to show. Default 1, max 5. |
Shows who is looking at your site right now. Members by name, everyone else counted as guests.
[lp:whosonline]
| Setting | What it does |
|---|---|
| id | Name it. Default main. |
| minutes | How recent counts as online. Default 15, max 120. |
| title | Heading. Default "Who is Online". |
A room for talking or roleplay. Members post under a character name if they want one, and the room can refresh itself while you are reading.
[lp:chatroom]
| Setting | What it does |
|---|---|
| id | Name it. One id per room, so you can run more than one. |
| title | Heading. Default "Chatroom". |
| limit | Lines kept on screen. Default 40, max 200. |
| rp | 1 shows the character name box. Default 1, set 0 for a plain chat. |
| refresh | Seconds between auto refreshes. Default 20, 0 turns it off. |
Everybody keeps their own list here: films, games, records, books, whatever you set it to. Search it to check whether you already own something, and look through what other members have.
[lp:collection kind="Films"]
| Setting | What it does |
|---|---|
| id | Name it. One id per list, so a site can run films and games side by side. |
| kind | What is being collected, like Films or Games. Default Items. |
| title | Heading. Defaults to the kind. |
| field2 | Label for the middle box. Default Year. |
| field3 | Label for the third box. Default Format. |
| limit | Entries shown per page. Default 25, max 100. |
| wish | 1 keeps a wishlist alongside what people own. Default 1. |
A comment thread tied to the page it is on. Put it on your layout once and every page gets its own thread. Members only.
[lp:comments]
| Setting | What it does |
|---|---|
| id | Name it if you want more than one on a page. Default main. |
| title | Heading. Default "Comments". |
| limit | How many to show. Default 50. |
| order | asc for oldest first, desc for newest first. Default asc. |
A proper little forum on your site. Members start topics and reply to each other, busiest topic floats to the top, and you can hide or delete anything.
[lp:forum]
| Setting | What it does |
|---|---|
| id | Name it if you want more than one. Default main. |
| title | Heading. Default "Forum". |
| limit | Topics per page. Default 15, max 50. |
| locked | 1 lets people reply but stops new topics. Default 0. |
Visitors sign your page and leave a message. Members only, so it does not fill up with spam. You can hide any entry from your dashboard.
[lp:guestbook]
| Setting | What it does |
|---|---|
| id | Name it if you want more than one. Default main. |
| title | Heading. Default "Sign my guestbook". |
| limit | How many entries to show. Default 20, max 200. |
Ask your visitors something. Members only, one vote each, results shown as bars. Change the question by editing the shortcode.
[lp:poll q="Best console?" options="SNES|N64|Genesis"]
| Setting | What it does |
|---|---|
| id | Name it. Change the id to start a fresh poll and keep the old votes. Default main. |
| q | The question. |
| options | The choices, separated by a pipe character. |
| results | always to show results before voting, after to hide them until someone votes. Default after. |
Write posts on your own site. Only you can post, anybody can read, and you can edit a post after the fact. Put [lp:comments] underneath if you want replies.
[lp:blog]
| Setting | What it does |
|---|---|
| id | Name it if you want more than one. Default main. |
| title | Heading. Default "Blog". |
| limit | Posts per page. Default 5, max 25. |
| full | 1 shows every post in full on the list. Default 0, which shows openings. |
Pulls headlines from any RSS or Atom feed and lists them. Game news, a webcomic, another LonePortal site, anything with a feed. Cached for an hour.
[lp:rss url="https://example.com/feed.xml"]
| Setting | What it does |
|---|---|
| id | Name it if you want more than one. Default main. |
| url | The feed address. Required. Must be http or https. |
| limit | How many headlines. Default 8, max 25. |
| title | Heading. Defaults to the feed title. |
| dates | yes or no. Default yes. |
Proper recipe cards with ingredients, steps, timings and servings. Yours by default, or open it up and let members add theirs.
[lp:recipes]
| Setting | What it does |
|---|---|
| id | Name it if you want more than one. Default main. |
| title | Heading. Default "Recipes". |
| open | 1 lets any member add a recipe. Default 0, just you. |
| limit | Recipes per page. Default 12, max 50. |
Let members rate and review something out of five stars. One review each, an average with a breakdown, and you can hide anything unfair.
[lp:reviews of="Chrono Trigger"]
| Setting | What it does |
|---|---|
| id | Name it. Use a different id per thing you are reviewing. |
| of | What is being reviewed. Shown as the heading. |
| limit | Reviews per page. Default 10, max 50. |
A submission archive for creepypasta, SCP style entries or any long form writing. Members submit, you approve, readers get a clean reading page.
[lp:stories]
| Setting | What it does |
|---|---|
| id | Name it if you want more than one. Default main. |
| title | Heading. Default "Archive". |
| submit | 1 lets members submit, 0 makes it yours alone. Default 1. |
| queue | 1 holds submissions for your approval. Default 1. Turn it off and they go straight up. |
| limit | Entries per page. Default 15, max 50. |
| prefix | Puts a code in front of each title, like SCP. Off by default. |
Drop anything from the LonePortal media library onto your page. Pick one exact image, or let it choose from a category so the page changes by itself each day.
[lp:media type="icon"]
| Setting | What it does |
|---|---|
| item | One exact image, using the code from the Media tab, like m42. |
| type | gallery, gif, icon, background, wallpaper or misc. Ignored when you name an item. |
| cat | Narrow it to one category. |
| mode | one for a single image, strip for a row of them. Default one. |
| count | How many in a strip. Default 5, max 24. |
| daily | 1 keeps the same pick all day, 0 changes it every load. Default 1. |
| w | Max width in pixels, so a wallpaper does not swallow your page. |
| link | 1 links the image to its full size copy. Default 0. |
Run an LP$ giveaway on your site, paid from your site wallet. Members enter once by default, and you draw a winner when you are ready.
[lp:giveaway prize=250]
| Setting | What it does |
|---|---|
| id | Name it. Use a fresh id for each giveaway you run. |
| title | Heading. Default "Giveaway". |
| prize | LP$ the winner gets. Required. |
| what | What people are entering for, in your own words. |
| joins | Entries one person may have. Default 1. |
| ends | Closing date, like 2026-09-20. Optional. |
Shows a LonePortal ad on your site. You earn LP$1 each time a member clicks one, once per member per day, up to LP$50 a day. The LP$ comes from whoever bought the ad. You can buy one yourself on the Wallet tab of your dashboard.
[lp:ads]
| Setting | What it does |
|---|---|
| id | Name the slot so you can tell them apart in your stats. Default main. |
| size | banner (728x90), half (468x60) or box (250x250). Default banner. |
| label | yes or no, shows the small "Ad" marker. Default yes, and it stays on for honesty. |
Anywhere in a page, in your dashboard under Pages. It sits in your HTML like any other line, and whatever is around it stays exactly where you put it. The Scripts tab has an Add to page button that does it for you.
Everything you add lands in your demo build first. Preview it, move it, take it out again. The live site does not change until you press Publish Changes, and Revert to Previous Published throws the demo build away and starts again from whatever is live. Those two buttons are the whole safety net.
Give them different id values and they keep their own separate contents. Two guestbooks, one on each page, that do not share entries:
[lp:guestbook id="main"]
[lp:guestbook id="art"]
Change an id later and you get a fresh empty one. The old contents are not deleted, they are just not on screen any more, so changing it back brings them with it.
On your own pages you get Hide and Delete next to every post anybody leaves. Nobody else sees those buttons. Hiding is not deleting: a hidden post can come back, so it is the safer one to reach for first.
Every posting box has an emoji strip and a GIF picker under it, and the GIFs come from the LonePortal media library. To put an image in a post by hand:
[img]https://loneportal.com/assets/...[/img]
Only images hosted here are allowed, which is deliberate: it means nobody can use your guestbook to load a tracking pixel from somewhere else. The Media tab in your dashboard has everything with the tag already written out.
The Wallet tab holds LP$ you have set aside for your site. Turn on pay per
post and members earn LP$ for signing your guestbook or leaving a comment, up to the daily
limits you set. Giveaways come out of the same wallet, which is why a giveaway can say on
the page whether the prize is actually set aside.
The other direction is [lp:ads]: an ad slot that earns you
LP$1 per member who clicks it, once per person per day.
Anything anybody posts is escaped before it is shown, so nothing typed into a guestbook can run as code on your page. A small set of things are turned back into formatting afterwards: [b]bold[/b], [i]italics[/i], links, and [img] for LonePortal hosted images. Links get nofollow so a guestbook cannot be farmed for search ranking.
A shortcode you mistyped shows as Unknown script rather than disappearing, because staring at an empty space wondering where your guestbook went is a miserable afternoon. A script that hits a problem shows a small note and the rest of your page carries on as normal.