WordPress · Budownictwo
FoxBud
Strona generująca leady dla firmy wykończeniowej, czytelna dla wyszukiwarek i AI
FoxBud wykańcza i aranżuje biura w Warszawie, Wrocławiu i Krakowie. Nowa strona zbiera zapytania od dwóch grup odbiorców, zarządców nieruchomości i office managerów, na własnym motywie i wtyczce WordPress z pełnymi danymi strukturalnymi dla wyszukiwarek i modeli językowych.
- Rola
- Jedyny programista: 124 ze 125 commitów, 28 pull requestów
- Okres
- lipiec - wrzesień 2026
- Technologie
- WordPress
- PHP
- Custom theme and plugin
- ACF
- schema.org
- llms.txt
- Cloudflare


- własne typy treści
- 4
- typów schema.org w grafie
- 18
- botów AI z jawną polityką dostępu
- 17
- miesięcy do usunięcia leadów / zgód
- 24 / 48
Kontekst
Strona powstała od nowa na własnym motywie, z dwiema ścieżkami usług pisanymi innym językiem: fit-out dla zarządców nieruchomości i wykończenie biur dla office managerów, plus bezpłatna analiza kosztorysu.
Stare adresy usług przekierowują na stałe do nowych stron usług.
Co zrobiłem
- Klasyczny motyw w PHP i własna wtyczka, bez page buildera i bez kroku budowania
- Cztery własne typy treści: usługi, realizacje, case studies i baza wiedzy, z polami ACF rejestrowanymi w kodzie
- Własna obsługa formularzy: leady zapisywane w tabeli w bazie, z zapisem zgód przy każdym leadzie
- Graf schema.org rozszerzony o dane z ACF: usługi z ofertami i cenami, FAQ, artykuły, okruszki, miejsca i grupy odbiorców
- llms.txt generowany z bazy przy każdym zapytaniu
- Polityka dla botów AI: 8 botów wyszukiwarek i 8 botów treningowych dopuszczonych decyzją klienta, jeden zablokowany
- Codzienne zadanie retencji: leady wraz z załącznikami usuwane po 24 miesiącach, zapisy zgód po 48 miesiącach
Jak to jest zbudowane
Treści
- Usługi
- Realizacje
- Case studies
- Baza wiedzy
Wynik
- Strony
- Graf schema.org
- llms.txt
Odbiorcy
- Odwiedzający
- Wyszukiwarki
- Asystenci AI
Leady i zgody zapisywane razem i usuwane według harmonogramu.
Trudne momenty i jak je rozwiązałem
Problem
Po każdym wdrożeniu odwiedzający widzieli stare strony, bo cache serwera i Cloudflare trzymały pliki po 7 dni.
Rozwiązanie
Cache czyści się automatycznie przy zmianie wersji motywu, a adresy zasobów zawierają czas modyfikacji pliku.
Problem
Na iOS Safari niektóre słowa się sklejały. Tekst wklejony z Figmy zawierał niewidoczny separator linii U+2028.
Rozwiązanie
Wyczyściłem 27 pól w jednej paczce i usuwam ten znak przy każdym zapisie, żeby nie wrócił.
Problem
Zmiany treści wprowadzone przez klienta wracały po wdrożeniach, bo migracje treści uruchamiały się za każdym razem.
Rozwiązanie
Każda paczka treści uruchamia się raz na instalację i zapisuje, że już się wykonała.
Wyniki
- Model treści dla 26 realizacji, 23 artykułów bazy wiedzy, 3 case studies i 3 stron usług
- 16 paczek treści wdrożonych jako wersjonowane migracje uruchamiane raz na instalację
- Dane strukturalne z 18 typami schema.org, budowane z tych samych pól, które wypełniają redaktorzy
Strona czeka na start, więc nie ma jeszcze linku.
Ekrany
Przesuń palcem albo użyj przycisków, żeby przejrzeć ekrany.
Szukasz takiej osoby do zespołu?
Chętnie opowiem o każdym z tych projektów szczegółowo.
Napisz do mnie



