feat(seo): facts in src/data/business.ts, SEO + JSON-LD components in layout
- business.ts: single source of truth; unknown facts (city, area, prices, packages, phone, delivery time, experience, testimonials) are null and are skipped everywhere. faq.ts builds answers only from known facts. - portfolio-meta.ts: data hook for real per-image alt texts. - SEO.astro: title, description, canonical, Open Graph, Twitter, og:image (EXIF-free JPG via getImage, absolute URL). - SchemaOrg.astro: @graph with WebSite, Person, ProfessionalService (sameAs, ReserveAction to the customer portal, offer catalog without prices), WebPage, optional FAQPage and BreadcrumbList. - MainLayout: lang=sv, Swedish nav (adds Tjänster), consent banner and footer in Swedish, lyxlimo/karleksguiden line removed, info@ address. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01WvE3C43Uwtv2vtnoFBLDw7
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
ce5676f552
commit
30e385ec7f
@@ -0,0 +1,26 @@
|
||||
// src/data/portfolio-meta.ts
|
||||
// DATAKROK för riktiga alt-texter (och ev. titel/kategori) per portfoliobild.
|
||||
// Fylls i senare (t.ex. av Imogen-agenten). Tom post = sidan använder en
|
||||
// neutral svensk reservtext byggd på datum, aldrig kameramodell eller "undefined".
|
||||
//
|
||||
// Nyckel = bildens filnamn utan ändelse, exakt som i src/assets/images/portfolio/,
|
||||
// t.ex. "immich-02533d10-07ca-4a39-8b8a-6648fe2ffcef-20260905-DSC07734"
|
||||
// eller "20250510-WJ9E1439-Enhanced-NR".
|
||||
//
|
||||
// Exempel:
|
||||
// "immich-02533d10-...-20260905-DSC07734": {
|
||||
// alt: "Norrsken i grönt och lila över en mörk skogssiluett",
|
||||
// title: "Norrsken i september",
|
||||
// category: "Norrsken",
|
||||
// },
|
||||
|
||||
export type PortfolioMeta = {
|
||||
/** Beskriv vad bilden visar, på svenska, ca 8–16 ord. */
|
||||
alt?: string;
|
||||
/** Kort bildtitel (visas i lightboxen om den finns). */
|
||||
title?: string;
|
||||
/** Helst ett av namnen i business.genres, t.ex. "Natur och djur". */
|
||||
category?: string;
|
||||
};
|
||||
|
||||
export const portfolioMeta: Record<string, PortfolioMeta> = {};
|
||||
Reference in New Issue
Block a user