FR
Traduction bêta

@core / blog

1.0.1 ▾
vérifiéMIT
GitHub

Blog sur @core/content : articles, auteurs, catégories, tags, séries, articles liés, archives et flux RSS/Atom/JSON

Code7 fichiersContexte~554 tokensanalyse réussie

L’arborescence exacte qui sera injectée, après .genpmignore. Épinglée à

src/lib/blog/sources.tslecture seule · 8aaf3ee
// Fuentes de sitemap y buscador del blog, y recursos del panel.
import { contentAdminResource, contentSearchSource, contentSitemapSource } from '../content/index.ts';
import { type Doc, toPlainText } from '../rich-text/index.ts';
import { BLOG_COLLECTIONS } from './collections.ts';

type PathFn = (p: { slug: string; locale: string }) => string;
const defaultPath: PathFn = ({ slug }) => `/blog/${slug}`;

export const blogSitemapSource = (path: PathFn = defaultPath) => contentSitemapSource('posts', path);

/** Documentos de búsqueda con el cuerpo en texto plano. Los posts `membersOnly` solo indexan título y extracto. */
export const blogSearchSource = (path: PathFn = defaultPath) =>
  contentSearchSource('posts', {
    type: 'post',
    path,
    title: (d) => String(d.title ?? ''),
    text: (d) => (d.membersOnly ? String(d.excerpt ?? '') : `${d.excerpt ?? ''}\n${toPlainText(d.body as Doc)}`),
  });

/** Recursos del panel: posts (con enlaces "Ver" y "Vista previa"), autores, categorías, etiquetas y series. */
export const blogAdminResources = (path: PathFn = defaultPath) =>
  BLOG_COLLECTIONS.map((c) => ({ ...contentAdminResource(c, c === 'posts' ? { path } : {}), group: 'Blog' }));

Signaler @core/blog

Connectez-vous avec GitHub pour signaler un paquet.