Merge pull request #68 from litemotiv/wiki_tweaks

Add order to wiki categories
This commit is contained in:
deepend-tildeclub 2025-01-25 15:43:54 -07:00 committed by GitHub
commit 1184c77a1f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
15 changed files with 66 additions and 57 deletions

View File

@ -4,7 +4,7 @@
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title><?=isset($title) ? $title : "Welcome to ~tilde.club~"?></title>
<link rel="icon" type="image/png" href="favicon.png">
<link rel="icon" type="image/png" href="https://tilde.club/favicon.png">
<!-- Preload CSS and image resources -->
<link rel="preload" href="/style.css" as="style">

View File

@ -2,50 +2,59 @@
$title = "tilde.club wiki";
include __DIR__."/../header.php";
?>
<h1 id="fancyboi">the tilde.club wiki</h1>
<div class="grid">
<div class="row">
<div class="col">
<p>here's the articles on our wiki:</p>
<ul>
<?php
$category_to_articles = [];
foreach (glob("source/*.md") as $file) {
$article = basename($file, ".md");
$title = preg_match("/title: (.*)/i", file_get_contents($file), $matches) ? $matches[1] : $article;
$category = preg_match("/category: (.*)/i", file_get_contents($file), $matches) ? $matches[1] : 'default';
if (array_key_exists($category, $category_to_articles)) {
array_push($category_to_articles[$category], [$article, $title]);
} else {
$category_to_articles[$category] = [[$article, $title]];
}
ksort($category_to_articles);
}
?>
<?php foreach ($category_to_articles as $category => $articles) { ?>
<li><?=$category?></li>
<p>Here's the articles on our wiki:</p>
<ul>
<?php
$article_titles = [];
$article_names = [];
foreach ($articles as $article) {
array_push($article_names, $article[0]);
array_push($article_titles, $article[1]);
}
$name_to_title = array_combine($article_names, $article_titles);
asort($name_to_title);
foreach ($name_to_title as $name => $title) { ?>
<li><a href="/wiki/<?=$name?>.html"><?=$title?></a></li>
<?php } ?>
</ul>
<?php
// category order
$order = ['tilde.club', 'tutorials', 'software', 'links'];
<?php } ?>
</ul>
$category_to_articles = [];
// get articles
foreach (glob("source/*.md") as $file)
{
$article = basename($file, ".md");
$title = preg_match("/title: (.*)/i", file_get_contents($file), $matches) ? $matches[1] : $article;
$title = ucfirst($title);
$category = preg_match("/category: (.*)/i", file_get_contents($file), $matches) ? $matches[1] : 'default';
if (array_key_exists($category, $category_to_articles))
array_push($category_to_articles[$category], [$article, $title]);
else
$category_to_articles[$category] = [[$article, $title]];
ksort($category_to_articles);
}
foreach ($order as $category)
{
echo '<li>'.ucwords($category).'</li>';
echo '<ul>';
$article_titles = [];
$article_names = [];
foreach ($category_to_articles[$category] as $article)
{
array_push($article_names, $article[0]);
array_push($article_titles, $article[1]);
}
$name_to_title = array_combine($article_names, $article_titles);
asort($name_to_title);
foreach ($name_to_title as $name => $title)
echo '<li><a href="/wiki/'.$name.'.html">'.$title.'</a></li>';
echo '</ul><br>';
}
?>
</ul>
</div>
</div>
<?php include "../footer.php"; ?>
<?php include "../footer.php";

View File

@ -1,5 +1,5 @@
---
title: USING Two-Factor Authentication (2FA) ON TILDE.CLUB
title: Using Two-Factor Authentication (2FA) on Tilde.club
author: deepend
category: tutorials
---

View File

@ -1,5 +1,5 @@
---
title: bashblog
title: bashblog (blog platform)
author:
- deepend
- benharri

View File

@ -1,6 +1,6 @@
---
title: bbj
title: BBJ (Bulletin Butter & Jelly)
author: audiodude
category: tutorials
category: software
---
bbj: bulletin butter and jelly, a cozy bbs in your terminal

View File

@ -1,5 +1,5 @@
---
title: "CGI: Making web applications like it's 90s"
title: CGI: Making web applications like it's 90s
category: tutorials
author: xwindows
---

View File

@ -1,5 +1,5 @@
---
title: custom 404
title: custom 404 error page
author: deepend
category: tutorials
---

View File

@ -1,5 +1,5 @@
---
title: Terminal Multiplexers
title: Byobu, TMUX & Screen (terminal multiplexers)
author: rudi
category: software
---

View File

@ -1,6 +1,6 @@
---
author: benharri
title: ssh
title: How to connect using SSH (secure shell)
category: tutorials
---

View File

@ -1,6 +1,6 @@
---
author: jeffbonhag
title: SSHFS
title: SSHFS (SSH Filesystem)
category: software
---

View File

@ -1,5 +1,5 @@
---
title: tin
title: tin (UseNet reader)
category: software
---

View File

@ -1,7 +1,6 @@
---
title: ttbp (feels)
author:
- benharri
title: ttbp / feels (blog platform)
author: benharri
category: software
---

View File

@ -1,6 +1,6 @@
---
title: .vimrc file
category: tutorials
title: Vim (editor) .vimrc file
category: software
---
The file `.vimrc` in your home directory has instructions for [[vim]]

View File

@ -1,7 +1,7 @@
---
title: Don't use VPN services
author: joepie91 on github
category: tilde.club
category: tutorials
---
# Don't use VPN services.

View File

@ -14,7 +14,8 @@
<meta name="keywords" content="$for(keywords)$$keywords$$sep$, $endfor$" />
$endif$
<title>$if(title-prefix)$$title-prefix$ $endif$$pagetitle$</title>
<link rel="stylesheet" href="../style.css">
<link rel="stylesheet" href="https://tilde.club/style.css">
<link rel="icon" type="image/png" href="https://tilde.club/favicon.png">
<style type="text/css">
code{background: rgba(255, 187, 85, 0.15);padding: 0.1em 0.2em;border-radius: 0.3em;white-space: pre-wrap;}
pre code{background: none;}