<-[[.:start]] ====== Pure Blog ====== ** I've installed Pure Blog ** After trying the Blog Plugin in dokuwiki and Chyrp-Lite PHP/SQLite blogging platform I switched to Pure Blog. It's just what I need, and nothing extra to make it big and bloated. ===== Installation & Configuration ===== FIXME See [[https://g4slv.info/installing-pure-blog]] for some info. Webfonts used * {{ :public:computers:atkinson_hyperlegible_mono_woff2.zip | Atkinson Hyperlegible Mono}} * {{ :public:computers:atkinson_next_woff2.zip | Atkinson Hyperlegible Next}} ==== CSS ==== .tag-cloud a {   margin: 0 0.5rem; line-height: 2rem; } .archive li { line-height: 1.5rem; font-size: 1.1rem; list-style-type: none; } body { font-size: 1rem; line-height: 1.25rem; } main { max-width: 50rem; } article { margin-bottom: 0; } p.post-archive-view { font-size : 1.1rem; line-height: 1.1rem; } main h1 { font-size: 2.8rem; } header, footer{ font-family: "atkinson_next", sans-serif; font-size: 1.1rem; } footer { margin-top: 3rem; } main h1, main h2, main h3, main h4, main h5, main h6 { margin-left: -1rem; font-family: "atkinson_next", sans-serif; } .tag-list { border-top: 1px solid var(--border-color); padding-top: 2rem; } .post-nav { margin-top : 0; margin-bottom: 3rem; } @font-face { font-family: 'atkinson_next'; src: url('/content/fonts/AtkinsonHyperlegibleNext-Regular.woff2') format('woff2'); font-weight: normal; font-display: swap; font-style: normal; } @font-face { font-family: 'atkinson_next'; src: url('/content/fonts/AtkinsonHyperlegibleNext-Bold.woff2') format('woff2'); font-weight: bold; font-display: swap; font-style: normal; } @font-face { font-family: 'atkinson_next'; src: url('/content/fonts/AtkinsonHyperlegibleNext-RegularItalic.woff2') format('woff2'); font-weight: normal; font-display: swap; font-style: italic; } @font-face { font-family: 'atkinson_next'; src: url('/content/fonts/AtkinsonHyperlegibleNext-BoldItalic.woff2') format('woff2'); font-weight: bold; font-display: swap; font-style: italic; } @font-face { font-family: 'atkinson_mono'; src: url('/content/fonts/AtkinsonHyperlegibleMono-Regular.woff2') format('woff2'); font-weight: normal; font-display: swap; font-style: normal; } @font-face { font-family: 'atkinson_mono'; src: url('/content/fonts/AtkinsonHyperlegibleMono-RegularItalic.woff2') format('woff2'); font-weight: normal; font-display: swap; font-style: italic; } @font-face { font-family: 'atkinson_mono'; src: url('/content/fonts/AtkinsonHyperlegibleMono-Bold.woff2') format('woff2'); font-weight: bold; font-display: swap; font-style: normal; } @font-face { font-family: 'atkinson_mono'; src: url('/content/fonts/AtkinsonHyperlegibleMono-BoldItalic.woff2') format('woff2'); font-weight: bold; font-display: swap; font-style: italic; } :root { --font-stack: "atkinson_mono", system-ui, monospace; } pre { font-family: "atkinson_mono", monospace; } code { font-family: "atkinson_mono", monospace; } ===== Addons ===== Kev sent me 2 PHP scripts to provide a Tag-Cloud and a full site Archive page. I tweaked them a bit, and here are my current versions. $slugs) { $tagCounts[$slug] = count($slugs); } } // Collect original display names from posts (slugs alone lose capitalisation/spaces) $originalNames = []; foreach (get_all_posts(false) as $post) { foreach (($post['tags'] ?? []) as $tag) { $slug = normalize_tag($tag); if (!isset($originalNames[$slug])) { $originalNames[$slug] = $tag; } } } // Sort alphabetically by display name uksort($tagCounts, function (string $a, string $b) use ($originalNames): int { return strcasecmp($originalNames[$a] ?? $a, $originalNames[$b] ?? $b); }); $maxCount = $tagCounts ? max($tagCounts) : 1; $minCount = $tagCounts ? min($tagCounts) : 1; $range = $maxCount > $minCount ? $maxCount - $minCount : 1; require PUREBLOG_BASE_PATH . '/includes/header.php'; render_masthead_layout($config, ['page' => null]); ?>

Tag Cloud

No tags found.

$count): $name = $originalNames[$slug] ?? $slug; $ratio = ($count - $minCount) / $range; $fontSize = round(0.85 + $ratio * 1.4, 2); $postWord = $count === 1 ? 'post' : 'posts'; echo '' . e($name) . '(' . e((string) $count) . ')' . '' . '  '; endforeach; ?>

null]); ?>

Archive

published posts.

No published posts yet.

$yearPosts): ?>

()

===== Further Information ===== {{tag>pure blog}} Page created : 02/03/26 08:50 GMT Page updated : ~~LASTMOD~~