# Lokální SEO: plán pro nový web

Cíl: být první volbou, když někdo v Jablonecku, Semilsku nebo Liberecku v telefonu hledá „zámečník“ nebo „otevření dveří“. Rozhoduje hlavně **mapový balíček** (Google Maps, Mapy.com / Firmy.cz) a **rychlý mobilní web s číslem na jedno klepnutí**.

Hledanost klíčových slov (objemy) je potřeba ověřit v Google Keyword Planneru a Sklik nástroji. Níže je jen struktura, žádná vymyšlená čísla.

---

## 1. Klíčová slova (mapa na stránky)

| Záměr | Příklady dotazů | Cílová stránka |
|---|---|---|
| Pohotovost obecně | zámečník nonstop, zámečnická pohotovost, otevření dveří | `/` |
| Lokální obecné | zámečník Tanvald, zámečník Jablonec nad Nisou, zámečník Liberec, zámečník Semily, zámečník Turnov, zámečník Železný Brod | `/` + budoucí `/zamecnik/{obec}` |
| Konkrétní problém | zabouchnuté dveře, zlomený klíč v zámku, otevření auta, zamčené auto klíče uvnitř, otevření trezoru | `/cenik` (kotvy) + budoucí `/sluzby/{sluzba}` |
| Cena | cena otevření dveří, kolik stojí zámečník | `/cenik` |
| Plánované práce | výměna zámku, montáž cylindrické vložky, sjednocení klíčů, SGHK | `/poptavka`, `/cenik` |
| Důvěra | zámečník recenze, Ondřej Balý zámečník | `/o-me` |

---

## 2. Struktura URL

Zachovat stávající: `/`, `/cenik/`, `/o-me/` (v Laravelu bez lomítka + 301 z varianty s lomítkem).
Nové: `/poptavka`, `/kontakt`, `/ochrana-osobnich-udaju`.

**Fáze 2 (po spuštění):** lokální podstránky, jen s **unikátním obsahem** (ne kopie se změněným názvem obce, to Google vyhodnotí jako doorway pages):
- `/zamecnik/tanvald`, `/zamecnik/jablonec-nad-nisou`, `/zamecnik/liberec`, `/zamecnik/semily`, `/zamecnik/turnov`, `/zamecnik/zelezny-brod`
- Obsah: orientační dojezd, konkrétní zkušenosti z obce (typy domů, sídliště, chaty na horách), recenze z dané obce, mapa výřezu, FAQ. Šablona textu je v `COPYWRITING.md` každého návrhu.

Služby (fáze 2): `/sluzby/otevreni-dveri`, `/sluzby/otevreni-auta`, `/sluzby/vymena-zamku`, `/sluzby/trezory`.

---

## 3. On-page pravidla

- `<title>` do ~60 znaků, vzor: `{Téma} {obec} | {USP} | tootevru.cz`. Meta description do ~155 znaků, vždy s číslem 730 915 828.
- Jeden H1 na stránku. Na hlavní stránce je H1 slogan (požadavek klienta), proto lokální výrazy musí nést `<title>`, H2 a text sekcí („Jezdím po Jablonecku, Semilsku a Liberecku“).
- Telefon jako `<a href="tel:+420730915828">` v top baru, headeru, hero, mobilní liště a patičce.
- NAP (název, oblast, telefon) v patičce identický na všech stránkách i profilech.
- Obrázky: WebP/AVIF, `width`/`height`, `alt` česky a popisně, názvy souborů česky bez diakritiky (`otevirani-auta.jpg`).
- Interní odkazy: z karet služeb na `/cenik#dvere` apod., z ceníku na poptávku a telefon.
- FAQ na ceníku jako `<details>` + `FAQPage` JSON-LD (jen reálné otázky a odpovědi).
- Drobečková navigace + `BreadcrumbList` na podstránkách.

---

## 4. Strukturovaná data

- `Locksmith` (podtyp `LocalBusiness`) v layoutu, šablona v `content.md`. `areaServed` = 3 okresy, `openingHoursSpecification` 24/7, `sameAs` = Firmy.cz, Mapy.com, Google.
- Bez `aggregateRating` z cizích recenzí (self-serving reviews).
- `Service` + `Offer` s cenami na `/cenik` (ceny z DB, `priceCurrency: CZK`).
- `FAQPage` na `/cenik`, `BreadcrumbList` na podstránkách, `Person` (Ondřej Balý, `jobTitle: Zámečník`, `knowsAbout`, `hasCredential`: profesní kvalifikace Zámkař 69-038-H) na `/o-me`.
- Validovat v Rich Results Test a Schema Markup Validatoru.

---

## 5. Profily (off-page)

| Profil | Stav | Úkol |
|---|---|---|
| **Google Business Profile** | nenalezen | založit / ověřit jako firmu působící v oblasti (skrytá adresa), kategorie *Zámečník* (+ *Služba otevírání zámků*), oblast = obce ze 3 okresů, nonstop, web, fotky (auto, nářadí, práce), služby s cenami, pravidelné příspěvky |
| **Firmy.cz / Mapy.com** | existuje „To otevřu“, 5,0 z 6 | sjednotit název se značkou, doplnit web, popis, fotky, otevírací dobu, kategorie, widget/QR pro recenze |
| Bing Places, Apple Business Connect | neověřeno | založit (import z Google) |
| Katalogy (Najisto.cz, Zlaté stránky, Živéfirmy) | neověřeno | jen konzistentní NAP, žádné placené balíčky nutné |
| Seznam Webmaster + Google Search Console | | ověřit web, poslat sitemapu |

**Recenze jako proces:** po každé zakázce předat kartičku A7 s QR (Google i Seznam) nebo poslat SMS s odkazem na hodnocení. Na recenze odpovídat.

---

## 6. Technické SEO v Laravelu

- Sitemap: `spatie/laravel-sitemap` (generovat při změně obsahu / denně), `robots.txt` s odkazem na sitemapu.
- Meta tagy: vlastní Blade komponenta `<x-seo :title :description :canonical :image />` nebo `artesaos/seotools`.
- 301 přesměrování ze starých WordPress URL (`/cenik/`, `/o-me/`, `/feed/`, `/wp-login.php` → 404/410, obrázky `wp-content/uploads/...` → 410 u dokumentů s osobními údaji).
- Výkon (Core Web Vitals, mobil): LCP < 2,5 s (hero bez velkých fotek nad ohybem nebo s `fetchpriority="high"`), CLS < 0,1 (rozměry obrázků, `font-display: swap` + self-hosted fonty s `size-adjust`), INP < 200 ms (minimum JS, mapa lazy-load).
- Cache: full-page cache pro statické stránky (Laravel Response Cache), CDN pro assety.
- Měření (po souhlasu): GA4 události `click_to_call` (každé tel: tlačítko s parametrem umístění: topbar, header, hero, mobile_bar, footer), `click_sms`, `form_submit_poptavka`, `click_review_google`, `click_review_seznam`, `download_vcard`. Konverze = hovor a odeslaná poptávka.
