Skip to content
Le blog de Pascal Andy - L'homme et les relations technologiques

Tag Visibility System

Tag Visibility System

Configuration reference for controlling tag visibility across the blog.

Based on src/tags.ts.

Tag Configuration

Each tag can have two visibility flags:

FlagControlsDefault
hiddenFromTagsPageHide from /tags/ listingfalse
excludeFromBlogRollHide posts from /blog/ and RSSfalse

Current Configuration

TagHidden from /tags/Excluded from /blog/ & RSS
voidYesYes
crypto-in-montrealYesYes
dev-notesNoYes
biographieYesYes
randomNoNo

How It Works

Tags Page (/tags/)

Uses hiddenFromTagsPage from tag config:

// src/pages/tags/index.astro
let tags = getUniqueTags(posts).filter(
  ({ tag }) => !getTagConfig(tag).hiddenFromTagsPage
);

Blog Roll (/blog/) and RSS

Uses excludeFromBlogRoll via getExcludedTags():

// src/pages/blog/[...page].astro
const excludedTags = getExcludedTags();
const posts = await getCollection(
  "blog",
  ({ data }) =>
    !data.draft && !data.tags.some(tag => excludedTags.includes(tag))
);

Adding a New Tag

Edit src/tags.ts:

export const TAGS: TagConfig[] = [
  {
    slug: "my-tag",
    name: "My Tag",
    description: "Description for the tags page",
    hiddenFromTagsPage: false, // show on /tags/
    excludeFromBlogRoll: false, // show in /blog/ and RSS
  },
  // ...
];

Direct Access

Hidden tags are still accessible via direct URL:

Files