site: rename "finds" superpost collection to "bundles"
Disambiguates the one-letter `find` (item) vs `finds` (roundup) split that
kept causing confusion. Audience-facing now: `/bundles/<slug>/`, "Bundle"
labels in home/footer/search.
Internals: `getCollection('finds')` → `('bundles')`, `Entry.type 'finds'`
→ `'bundle'`, `OgFallback 'finds'` → `'bundles'`, `findListMosaic` →
`bundleMosaic`, `FindsPost` → `Bundle`, `findsReferencing` →
`bundlesReferencing`. Build script + generated mosaic dir follow
(`scripts/build-bundle-mosaics.mjs`, `src/generated/bundle-mosaics/`).
Skills `build-finds` → `build-bundle`, `cluster-finds` →
`cluster-bundles`. The `find` collection (individual items) is unchanged.
No URL redirects: low external-link surface area.
This commit is contained in:
@@ -137,7 +137,7 @@ const year = new Date().getFullYear();
|
||||
<ul>
|
||||
<li><a href="/grid/">Reviews</a></li>
|
||||
<li><a href="/find/">Finds</a></li>
|
||||
<li><a href="/finds/">Lists</a></li>
|
||||
<li><a href="/bundles/">Bundles</a></li>
|
||||
<li><a href="/blog/">Posts</a></li>
|
||||
</ul>
|
||||
</section>
|
||||
@@ -417,6 +417,120 @@ const year = new Date().getFullYear();
|
||||
font-style: italic;
|
||||
}
|
||||
hr { border: 0; border-top: 1px solid var(--rule); margin: 2rem 0; }
|
||||
|
||||
/* External CTA — primary "go to source" link on /reviews/ and /find/.
|
||||
Sits in the body region below the write-up, not in the colophon. */
|
||||
.external {
|
||||
margin: 1.5rem 0 0;
|
||||
font-family: ui-sans-serif, system-ui, -apple-system, sans-serif;
|
||||
}
|
||||
.external a {
|
||||
display: inline-block;
|
||||
padding: 0.5rem 1rem;
|
||||
background: var(--accent);
|
||||
color: var(--bg);
|
||||
border-radius: 6px;
|
||||
font-weight: 600;
|
||||
font-size: 0.95rem;
|
||||
}
|
||||
.external a:hover { text-decoration: none; opacity: 0.9; }
|
||||
.external .aff-badge {
|
||||
display: inline-block;
|
||||
margin-left: 0.6rem;
|
||||
padding: 0.15rem 0.5rem;
|
||||
font-size: 0.7rem;
|
||||
font-weight: 600;
|
||||
letter-spacing: 0.04em;
|
||||
text-transform: uppercase;
|
||||
color: var(--muted);
|
||||
background: var(--rule);
|
||||
border-radius: 999px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.aff-disclosure {
|
||||
margin: 0.6rem 0 0;
|
||||
font-size: 0.78rem;
|
||||
color: var(--muted);
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
/* Colophon — understated meta block at the foot of a post.
|
||||
Used on /reviews/, /find/, /bundles/ pages. */
|
||||
.colophon {
|
||||
margin: 3rem 0 0;
|
||||
padding-top: 1.5rem;
|
||||
border-top: 1px solid var(--rule);
|
||||
font-family: ui-sans-serif, system-ui, -apple-system, 'Helvetica Neue', sans-serif;
|
||||
font-size: 0.8rem;
|
||||
line-height: 1.5;
|
||||
color: var(--muted);
|
||||
}
|
||||
.colophon dl {
|
||||
margin: 0;
|
||||
display: grid;
|
||||
grid-template-columns: max-content 1fr;
|
||||
gap: 0.55rem 1.25rem;
|
||||
align-items: baseline;
|
||||
}
|
||||
.colophon dt {
|
||||
margin: 0;
|
||||
font-size: 0.72rem;
|
||||
font-weight: 600;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: 0.08em;
|
||||
line-height: 1.5;
|
||||
color: var(--muted);
|
||||
}
|
||||
.colophon dd {
|
||||
margin: 0;
|
||||
color: var(--muted);
|
||||
line-height: 1.5;
|
||||
}
|
||||
.colophon a {
|
||||
color: var(--muted);
|
||||
border-bottom: 1px solid var(--rule);
|
||||
}
|
||||
.colophon a:hover {
|
||||
color: var(--accent);
|
||||
border-bottom-color: currentColor;
|
||||
text-decoration: none;
|
||||
}
|
||||
.colophon .colophon-tags {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
gap: 0.35rem 0.75rem;
|
||||
}
|
||||
.colophon .colophon-tags a { border-bottom: 0; }
|
||||
.colophon time { color: var(--muted); }
|
||||
.colophon .aff-badge {
|
||||
display: inline-block;
|
||||
margin-left: 0.45rem;
|
||||
padding: 0.1rem 0.4rem;
|
||||
font-size: 0.62rem;
|
||||
font-weight: 600;
|
||||
letter-spacing: 0.04em;
|
||||
text-transform: uppercase;
|
||||
color: var(--muted);
|
||||
background: var(--rule);
|
||||
border-radius: 999px;
|
||||
vertical-align: middle;
|
||||
}
|
||||
.colophon-aff {
|
||||
margin: 1rem 0 0;
|
||||
padding-top: 0.85rem;
|
||||
border-top: 1px dashed var(--rule);
|
||||
font-size: 0.72rem;
|
||||
font-style: italic;
|
||||
color: var(--muted);
|
||||
}
|
||||
@media (max-width: 520px) {
|
||||
.colophon dl {
|
||||
grid-template-columns: 1fr;
|
||||
gap: 0.15rem 0;
|
||||
}
|
||||
.colophon dt { margin-top: 0.6rem; }
|
||||
.colophon dt:first-child { margin-top: 0; }
|
||||
}
|
||||
</style>
|
||||
{import.meta.env.DEV && <EditConfirm />}
|
||||
</body>
|
||||
|
||||
Reference in New Issue
Block a user