Publish a blog article
Publish a blog node to a public URL, embed it in your own site with an iframe, restrict who can embed it, and unpublish when you're done.
How to take a blog node from your project and put it on the web — as a shareable page and as an embed inside your own site.
Publish from the blog node
Open the blog node in the editor. Its header carries the publishing controls:
- Publish writes your article to a public page and, from then on, that page reflects whatever you last published — your working draft stays private until you publish again.
- Publishing is explicit and owner-only: you must be signed in and online.
Once published, the article lives at:
https://papera.dev/blog/<your-slug>
Use View in the header to open that page in a new tab.
Choose the URL (slug)
The slug is the last part of the URL. It is suggested from your title and you
can edit it in the article's SEO settings. Slugs are unique across Papera:
if the one you picked is already taken, publishing tells you and offers a free
alternative (for example my-article-2) that you can accept with one click.
Changing the slug of a published article republishes it at the new URL and frees the old one — there is no redirect, so update any links you've shared.
Embed it in your own site
To place the article inside another page, first turn on embedding for the article, then use Copy embed code in the header. You get a self-contained snippet:
<iframe src="https://papera.dev/embed/blog/my-article"
title="My article" loading="lazy"
style="width:100%;border:0;height:600px"></iframe>
<script>
addEventListener("message", (e) => {
if (e.data?.type !== "papera:embed:height") return;
const f = document.querySelector('iframe[src*="/embed/blog/my-article"]');
if (f) f.style.height = e.data.height + "px";
});
</script>
Paste it into your site. The embed is chrome-less — just the article and its styling — and it sizes itself: the small script grows the iframe to fit the content. If you drop the script, the iframe simply keeps its fixed height. Links inside an embedded article open in a new tab, so they never navigate your page away.
Restrict embedding to named sites
By default an embeddable article can be framed by any site. To limit it, list the allowed sites (origins) in the article's embed settings. Only those sites can frame it; any other site's iframe stays empty. The public page keeps working regardless.
Unpublish
Unpublish removes the public page — both /blog/<slug> and its embed return a
plain 404, indistinguishable from an article that never existed. Your local draft
is untouched, so you can keep editing and publish again later.