Wspieramy społeczność WordPress w Marsylii
Nie jesteśmy tylko zdalną agencją. Jesteśmy aktywną częścią ekosystemu. Wierzymy w Open Source i wnosimy wkład w społeczność, która napędza ponad 40% sieci (W3Techs).
Kontekst lokalny: Widoczność w lokalnym SEO, szybkie działanie na urządzeniach mobilnych oraz praktyczne integracje z CRM, rezerwacjami i płatnościami używanymi przez firmy regionalne.
- Członek Marseille WordPress Meetup
Nawiązywanie kontaktów z innymi programistami w regionie Marsylia.
Dołącz do nas na następnym spotkaniu →
Strona firmowa w Marsylii stoi przy Vieux-Port, w biurze w Euroméditerranée albo w centrum logistycznym w Joliette. To nie jest powód, żeby WordPress udawał system ERP albo platformę rezerwacji statków w Port de Marseille-Fos. To powód, żeby motyw, bloki Gutenberg, CPT i wtyczki były napisane tak, jak oczekuje francuski dział prawny, redaktor w wersji FR/EN i zespół compliance, który czyta RODO i CNIL, a nie tylko wynik Lighthouse.
WPPoland buduje ten WordPress z polskiego zespołu seniorów dla firm w Marsylii i w Métropole Aix-Marseille Provence. Zakres to programowanie WordPress: motyw blokowy albo klasyczny, własne wtyczki, Gutenberg, CPT, ACF albo natywne bloki, integracje REST i przegląd kodu na Git. Sklep WooCommerce z checkoutem francuskim, abonament opieki i kontakt są osobnymi tematami, z linkami na końcu.
Programowanie WordPress w Marsylii
Marsylia to największy port Morza Śródziemnego, drugie co do wielkości miasto Francji i ośrodek aglomeracji Aix-Marseille Provence. To nie jest Paryż fintech ani Lyon biotech. Tu serwis WordPress często obsługuje lokalne MŚP z branży logistycznej, turystyki przy Vieux-Port, usług portowych w Joliette, firm z Euroméditerranée i startupów z ekosystemu La French Tech Aix-Marseille. Strona musi przeżyć sezon letni, kiedy ruch rośnie trzykrotnie, i jednocześnie respektować francuską Loi Informatique et Libertés oraz wytyczne CNIL dla formularzy i plików cookie.
Euroméditerranée to największy projekt urbanistyczny w południowej Europie: nowe biurowce, Silo, CMA CGM Tower i strefa biznesowa między Vieux-Port a Joliette. WordPress w tym obszarze trzyma landingi usługowe, formularze zapytania ofertowego, blogi branżowe i strony employer branding dla firm, które właśnie otworzyły biuro w nowej wieży albo przygotowują kampanię B2B na rynek śródziemnomorski. Awaria po aktualizacji wtyczki formularza albo regresja w tłumaczeniach FR/EN boli w lipcu, kiedy Vieux-Port tętni życiem, a nie w listopadzie.
Joliette i Les Docks to serce portu handlowego: Terrasses du Port, centra logistyczne, operatorzy frachtu i firmy usługowe obsługujące Port de Marseille-Fos. WordPress obsługuje katalogi usług logistycznych, formularze rezerwacji slotów, strony dystrybutorów i treści FR/EN dla klientów z Maghrebu, Italii i całej Unii. Brief od klienta stąd często brzmi: „mamy Elementor, redakcja boi się migracji, a CTO chce Gutenberg i Git”. To problem modelu treści i procesu wdrożenia, nie problem szablonu z marketplace.
Vieux-Port i dzielnice turystyczne to inny profil niż biuro w Euroméditerranée. Więcej treści sezonowych, więcej rezerwacji, więcej formularzy zbierających dane osobowe pod RODO i więcej wymagań dotyczących wydajności mobilnej. WordPress w tym środowisku to strona restauracji, hotelu, biura podróży albo operatora wycieczek, która zbiera rezerwacje i musi respektować francuską CNIL przy plikach cookie i trackingu marketingowym.
La French Tech Aix-Marseille i społeczność Marseille WordPress Meetup spotykają się w obszarze między Marsylia a Aix-en-Provence. WordPress obsługuje landingi SaaS, formularze rejestracji beta, blogi produktowe i treści wielojęzyczne FR/EN dla firm, które sprzedają do całego basenu Morza Śródziemnego. Startup, który po rundzie seed musi wdrożyć nową stronę przed demo day, nie potrzebuje kolejnego szablonu z ThemeForest. Potrzebuje motywu blokowego, CPT pod produkt i formularz zgodny z CNIL.
Typowy projekt, który trafia do seniorów w Marsylii, nie brzmi „zróbcie ładną stronę”. Brzmi: odziedziczone motywy z page builderem, firma logistyczna z Joliette publikująca ofertę B2B w krótkim oknie czasowym, formularz z polem SIRET zbierający dane osobowe pod RODO i CNIL, a nowa podstrona pod sezon letni powstaje przez kopiowanie strony z zeszłego roku i ręczne podmienianie dat. To dług techniczny, który wychodzi w poniedziałek rano, nie w audycie SEO.
Motyw blokowy, motyw klasyczny i własna wtyczka
Nowa budowa w Marsylii startuje od decyzji, która później kosztuje miesiącami: czy prezentacja żyje w motywie blokowym z theme.json, czy w klasycznych szablonach PHP, i co idzie do wtyczki. Ta decyzja jest zapisywana przed pierwszym commitem.
theme.json, wzorce i granica motywu
Motyw blokowy trzyma tokeny: paletę, skalę typografii, odstępy, szerokości treści. Dla firmy z Euroméditerranée oznacza to odważną paletę marki z zachowaniem kontrastu WCAG 2.2 AA. Dla operatora portowego z Joliette oznacza to stonowany layout, czytelny krój bez ozdobników i komponenty, które nie pękają na długich nazwach tras frachtowych albo kodach kontenerów. Wzorce bloków opisują powtarzalne układy: hero z mapą biur, siatka zespołu, blok komunikatu operacyjnego, karta oferty logistycznej z datą, stopka z linkiem do politique de confidentialité zgodnej z RODO.
Pełna edycja witryny (FSE) ma sens, gdy zespół redakcyjny naprawdę ma dostać kontrolę nad nagłówkiem i stopką. W praktyce wiele firm B2B i turystycznych w Marsylii tej kontroli nie chce: nagłówek jest elementem brandu i compliance, a nie placem zabaw. Wtedy motyw blokowy zostaje, ale szablony części (header, footer) są zablokowane, a redakcja pracuje w obrębie wzorców i własnych bloków.
Każdy własny blok dostaje block.json, kategorię, ikonę i atrybuty ze schematem. Tam, gdzie treść ma trafić do wyszukiwarki i do RSS, render idzie po stronie serwera. React w edytorze służy do InspectorControls i podglądu, nie do tego, żeby front był aplikacją SPA udającą WordPressa. Handbook na developer.wordpress.org jest źródłem kontraktu API, nie slajdem ze szkolenia.
Kiedy klasyczny motyw PHP zostaje
Odziedziczone instalacje w Marsylii często mają pięć, siedem lat: child theme na komercyjnym szkielecie, ACF wklejone w page.php, shortcode’y w treściach, jQuery z epoki przed blokami, osobna kopia strony pod każdy sezon letni. Przepisanie tego na FSE „bo tak wypada w 2026” jest droższe niż naprawa hierarchii szablonów, wyciągnięcie logiki do wtyczki i dokładanie Gutenberg tylko tam, gdzie redakcja naprawdę składa nowe landingi.
Klasyczny motyw zostaje, gdy:
- logika warunkowa siedzi w szablonach (inne menu dla klienta B2B, inne dla partnera z Maghrebu, inne dla dystrybutora włoskiego) i przeniesienie jej do
theme.jsonnic nie upraszcza; - zespół redakcyjny publikuje setki stron w klasycznym edytorze i szkolenie z FSE byłoby większym ryzykiem niż dług;
- child theme jest cienki, a problemem są wtyczki i autoload, nie sam silnik szablonów.
Nawet wtedy nowe klocki idą jako bloki, nie jako kolejne shortcode’y. Shortcode w treści z 2019 roku zostaje do migracji. Nowy kod go nie dokłada.
Funkcja do wtyczki, wygląd do motywu
Granica jest prosta i zapisana w runbooku. Motyw umie pokazać. Wtyczka umie wiedzieć. CPT oferty logistycznej, kolejka do CRM, endpoint REST dla intranetu, rola „redaktor operacyjny” bez publish_pages na produkcji publicznej: to wtyczka. Kolory, siatka, wzorzec hero: to motyw. Jeśli po zmianie motywu znika katalog usług portowych, architektura była zła.
Własna wtyczka ma własny prefix, autoload PSR-4, plik główny z nagłówkiem Plugin Name i wersją semver oraz testy tam, gdzie logika liczy (daty sezonu, mapowanie pól do CRM, walidacja formularza z polem SIRET). Logika biznesowa nie trafia do functions.php motywu, bo functions.php umiera razem z motywem, a firma w Marsylii zmienia partnera brandingowego częściej niż model treści.
Porównanie warstw przy kickoffie:
| Warstwa | Co tam żyje | Przykład w Marsylii |
|---|---|---|
| Motyw | prezentacja, tokeny, wzorce | landing sezonu Vieux-Port, stopka z politique de confidentialité |
| Wtyczka | CPT, role, REST, integracje | oferta logistyczna, lokalizacja biura, logi audytowe |
| Gutenberg | redakcja bez HTML | wzorzec wydarzenia, blok lokalizacji, karta usługi |
| środowisko testowe i Git | proces, nie feature | gałąź, review, freeze przed sezonem |
Gutenberg, CPT i ACF pod lokalne MŚP i sektor portowy
Gutenberg bez modelu treści kończy się tym, że każda podstrona jest unikalnym kolażem bloków i nikt nie potrafi zrobić listy. W Marsylii listy są konkretne: usługi logistyczne, oferty turystyczne, wydarzenia, lokalizacje biur (Euroméditerranée to nie Joliette, Joliette to nie Vieux-Port), publikacje, oferty pracy. To obiekty, nie „kolejne strony w drzewie”.
Własne typy treści zamiast kopiowanych landingów
CPT rejestrujemy z własnymi capabilities, nie z mapowaniem na post. Redaktor operacyjny ma edytować kartę usługi, a nie kasować wtyczek. Archiwum CPT dostaje szablon albo wzorzec zapytań. Pojedynczy obiekt ma szablon, który nie pozwala rozpychać layoutu poza ustalony układ. Taksonomie są osobne: typ usługi (logistyka, turystyka, consulting) nie miesza się z tagami bloga.
ACF ma tu miejsce, ale nie jako substytut bloków. Pola ACF na CPT sprawdzają się przy danych, które są polami, nie layoutem: data sezonu, numer sezonu, język wersji, plik PDF katalogu, flaga „embargo do”. Layout strony oferty albo artykułu składa Gutenberg. Mieszanie ACF Flexible Content z pełnym edytorem bloków na tym samym obiekcie kończy się dwoma źródłami prawdy i redaktorem, który nie wie, gdzie kliknąć.
Gdzie ACF jest zbędne, atrybuty bloku w block.json wystarczą. Blok „lokalizacja z mapą” nie potrzebuje grupy pól na każdej stronie. Potrzebuje atrybutów i ewentualnie InnerBlocks na opis. Mniej wtyczek w panelu to mniej powierzchni ataku i mniej konfliktów z wtyczkami consent i cache.
Landing sezonu letniego w Vieux-Port jako kopia strony z zeszłego roku jest długiem, który wychodzi w poniedziałek rano. Obiekt CPT z polami sezonu, dat i materiałów przeżywa lato 2027 bez kopiowania drzewa. Szablon czyta obiekt. Redaktor zmienia daty, nie HTML.
Bloki serwerowe zamiast shortcode’ów
Shortcode w treści to dług, który widać dopiero przy migracji. Nowy kod w Marsylii idzie jako blok z renderem serwerowym: znaczniki semantyczne, atrybuty w komentarzu bloku, możliwość filtrowania wyjścia. Blok listy usług czyta CPT, cache’uje zapytanie transjentem z jawnym TTL i invalidacją przy save_post, a nie przy każdym requeście w szczycie sezonu letniego.
przegląd kodu bloku sprawdza trzy rzeczy, zanim gałąź wpadnie do main: czy blok działa po wyłączeniu JS w podglądzie frontu, czy atrybuty mają typy i defaulty, czy nie ładuje całego builda edytora na froncie. Gutenberg, który dokłada megabajt Reacta do strony katalogu B2B, nie przejdzie review.
RODO, CNIL i formularze w francuskim kontekście
Francja stosuje RODO (GDPR) oraz krajową ustawę Loi Informatique et Libertés. Organ nadzorczy to Commission Nationale de l’Informatique et des Libertés (CNIL). Dla strony WordPress w Marsylii to nie abstrakcyjny paragraf prawny. To decyzje w formularzach, w wtyczkach consent, w politique de confidentialité i w logach audytowych.
Co wpisujemy w brief i w kod:
- Formularze zbierające dane osobowe (zapytania B2B z polem SIRET, newslettery, formularze rezerwacji na sezon letni, formularze kontaktowe dla dystrybutorów) dostają jawną podstawę prawną, checkbox zgody tam, gdzie consent jest wymagany, i minimalizację pól. Pola, których nie potrzebujesz do celu formularza, nie istnieją.
- Wtyczki consent (Axeptio, Tarteaucitron, Cookiebot, Complianz) konfigurujemy tak, żeby skrypty marketingowe nie ładowały się przed akceptacją. Wytyczne CNIL wymagają świadomej zgody przed nieistotnymi plikami cookie. To decyzja w motywie i w kolejności enqueue, nie ticket opieki po pierwszym raporcie.
- Politique de confidentialité i politique des cookies są szablonami z polami, nie blokami, które redaktor może usunąć z drzewa. W Marsylii te strony są elementem compliance, nie stopką marketingową.
- Integracje z CRM (HubSpot, Pipedrive, Salesforce) dostają dokumentację przepływu danych: co trafia do systemu zewnętrznego, jak długo, kto jest administratorem. Umowy powierzenia przetwarzania to decyzja klienta, ale konfiguracja WordPressa musi umożliwiać realizację tej decyzji.
- Logi audytowe dla formularzy i zmian w panelu admina pomagają przy incydentach. Jeśli ktoś pyta „kto zmienił ustawienia formularza kontaktowego w piątek przed sezonem letnim w Vieux-Port”, odpowiedź nie może być „nie wiemy”.
CNIL publikuje rekomendacje dotyczące plików cookie i trackingu, które wpływają na konfigurację GTM, Meta Pixel i podobnych narzędzi. Wtyczka consent skopiowana z niemieckiego sklepu nie jest automatycznie „CNIL-compliant”, a brak bannera nie jest automatycznie legalny, gdy idzie tracking. Development nie sprzedaje opinii prawnej. Pilnuje, żeby narzędzia na stronie zgadzały się z tym, co stoi w politique de confidentialité, i żeby po aktualizacji GTM albo wtyczki consent logi zgód nadal się zapisywały.
Dla sklepów WooCommerce w EUR integracja z bramką płatniczą obsługującą Stripe, Payplug, Mollie, TVA i faktury zgodne z francuskim prawem podatkowym to osobny brief na stronie programista WooCommerce w Marsylii. Ta strona trzyma się programowania WordPress, nie checkoutu.
Hosting w UE i wersje FR/EN
Dane osobowe pod RODO ciągną pytanie: w której jurysdykcji stoi serwer. OVH we Francji, Scaleway w Paryżu, AWS w Irlandii (eu-west-1), Hetzner w Niemczech to różne odpowiedzi dla compliance officer, ale wszystkie mieszczą się w UE. Ashburn albo Hillsboro to Stany i zwykle veto bez Standard Contractual Clauses albo innej podstawy transferu.
Pytanie „czy hosting jest w Marsylii” wraca rzadziej niż „czy w UE”. Odpowiedź operacyjna jest dwuczęściowa. Jurysdykcja: UE, kopia nie wyjeżdża nocą na bucket w regionie US bez uzgodnienia. Latencja: origin we Francji albo Irlandii plus CDN z terminałem TLS w UE zwykle wystarcza dla użytkowników w Marsylii i w basenie Morza Śródziemnego. Decyzja rezydencji trafia do runbooku, a nie do hasła „hosting w Marsylii”.
Wielojęzyczność FR/EN (czasem FR/IT dla klientów z Ligurii albo Maghrebu) wymaga osobnej decyzji architektonicznej. WPML dla tradycyjnego WordPress albo natywny routing i18n dla buildów headless z Astro lub Next.js. Każda wersja językowa dostaje prawidłowe tagi hreflang, zlokalizowane slugi URL i niezależne meta dane SEO. Formularz B2B w wersji francuskiej z polem SIRET i wersja angielska bez tego pola to nie kopia 1:1, tylko dwa szablony z różnymi polami walidacji.
Sezon turystyczny i okno freeze wdrożeń
Lato w Vieux-Port, festiwale przy Canebière, targi w Joliette albo kampanie produktowe skierowane na rynek śródziemnomorski tworzą okna, w których setki firm patrzą na landingi produktowe, formularze rezerwacji i integracje z systemami CRM. Awaria strony w środku lipca to nie „bug do backlogu”. To utracone leady i reputacja u partnerów, którzy mają pełny kalendarz na cały kwartał.
Runbook wdrożeniowy dla klientów w Marsylii ma wpisane zamrożenie deployów produkcyjnych na okno sezonu, zwykle od dwóch tygodni przed szczytem letnim do tygodnia po jego zakończeniu. Aktualizacje krytyczne bezpieczeństwa przechodzą przez środowisko testowe i okno nocne, reszta czeka. To nie preferencja developera. To decyzja operacyjna uzgodniona z klientem przed sezonem. Kto robi „drobny patch cache” w poniedziałek lipca, uczy się tego na własnej skórze, kiedy serwis nie wytrzymuje skoku ruchu z telefonów turystów przy Vieux-Port.
Integracje, które się powtarzają w Marsylii
Formularze kontaktowe B2B to najczęstszy punkt integracji dla firm z Euroméditerranée i operatorów logistycznych z Joliette. W praktyce oznacza to podłączenie WordPressa do CRM, walidację pól zgodną z RODO i limitowanie zapytań na endpointach publicznych, żeby formularz nie stał się wektorem spamu w godzinie ogłoszenia nowej oferty.
Dla firm z La French Tech Aix-Marseille druga powtarzalna integracja to landingi produktowe SaaS: synchronizacja z systemem demo, embed wideo z Vimeo albo YouTube, formularze rejestracji beta z polami zgodnymi z CNIL. Każda integracja dostaje dokumentację webhooków, matrycę błędów i test end-to-end na środowisku testowym przed wdrożeniem na produkcję.
Dla branży turystycznej przy Vieux-Port trzecia integracja to rezerwacje i kalendarze: formularze z minimalizacją danych, integracja z systemem bookingowym, webhooki statusu rezerwacji. Webhooki i status formularza muszą przeżyć aktualizację wtyczki. Hotel, który po patchu traci log zgód CNIL, produkuje incydent compliance, nie ticket UX.
Jak pracujemy
Każdy projekt w Marsylii realizujemy według ustrukturyzowanego procesu minimalizującego ryzyko i maksymalizującego transparentność:
- Odkrywanie i audyt. Przeglądamy architekturę obecnej strony, strukturę treści, dane analityczne i cele biznesowe. Dokumentujemy dług techniczny, identyfikujemy szybkie wygrane i definiujemy mierzalne kryteria sukcesu zanim napiszemy pierwszą linię kodu. Sprawdzamy też kalendarz sezonu letniego, targów w Joliette albo demo day w La French Tech, żeby wdrożenie nie wpadło w okno krytyczne.
- Specyfikacja techniczna. Na podstawie audytu tworzymy szczegółową specyfikację obejmującą decyzje architektoniczne, wybory technologii, harmonogram, kamienie milowe i zakres. Zatwierdzasz plan zanim rozpoczną się prace programistyczne.
- Sprinty deweloperskie. Pracujemy w 1-2 tygodniowych iteracjach z demo na koniec każdego sprintu. Widzisz postęp na bieżąco, dajesz uwagi na czas i możesz zmieniać priorytety bez wykolejania projektu.
- Przegląd na środowisku testowym. Kompletne rozwiązanie działa na środowisku testowym identycznym z produkcją. Testujesz z prawdziwą treścią, weryfikujesz integracje i zatwierdzasz do uruchomienia. Naprawiamy wszelkie problemy przed uruchomieniem.
- Launch i przekazanie. Obsługujemy zmiany DNS, konfigurację SSL, rozgrzewanie cache’u, weryfikację przekierowań i konfigurację monitoringu. Po uruchomieniu zostajemy w gotowości przez 72 godziny do natychmiastowego rozwiązywania problemów.
Typowe wyzwania, które rozwiązujemy
Firmy w Marsylii regularnie zgłaszają się do nas z tymi problemami:
- Migracje z page builderów do Gutenberg FSE przed sezonem letnim: wyodrębniamy treść, przebudowujemy layouty jako wzorce bloków i szkolimy zespoły redakcyjne bez zakłócania ruchu na żywo czy pozycji SEO w tygodniach, gdy strona ma najwięcej odwiedzin
- Problemy wydajnościowe z nadmiaru wtyczek na stronach B2B i turystycznych: audytujemy zainstalowane pluginy, zastępujemy ciężkie zależności lekkim kodem niestandardowym, implementujemy warstwy cachowania i redukujemy zapytania do bazy z setek do pojedynczych
- Skalowanie WordPress dla sezonu letniego i wydarzeń w Vieux-Port: konfigurujemy Cloudflare full-page caching z wyjątkami dla formularzy, optymalizujemy indeksy bazy danych, implementujemy cachowanie wyników zapytań i przeprowadzamy testy obciążeniowe przed startem sezonu
- Hardening bezpieczeństwa dla stron zbierających dane kontaktowe albo formularze B2B: nagłówki Content Security Policy, wyłączony XML-RPC, wymuszone uwierzytelnianie dwuskładnikowe do panelu i limitowanie zapytań na endpointach logowania
Wydajność mierzona, nie obiecana z góry
Core Web Vitals są czynnikiem rankingowym Google i jednocześnie czynnikiem konwersji na stronie, która zbiera leady B2B w szczycie sezonu letniego albo w tygodniu targów w Joliette. Nie obiecujemy konkretnej delty procentowej przed audytem, bo skala poprawy zależy od stanu wejściowego konkretnej instalacji. To, co robimy systematycznie:
- Optymalizacja zasobów. Obrazy przetwarzane przez proces budowania w responsywne srcset w formatach WebP i AVIF, CSS purgowany i inlinowany dla treści above-the-fold, JavaScript tree-shaken i ładowany dynamicznymi importami.
- Architektura cachowania. Wielowarstwowe cachowanie: cache przeglądarki, CDN (Cloudflare), cache aplikacji (Redis), cache zapytań do bazy z inteligentną inwalidacją - z osobnym potraktowaniem dynamicznych fragmentów, jeśli strona ma formularz kontaktowy albo embed wideo.
- Optymalizacja sieci. HTTP/3 z QUIC, kompresja Brotli, hinty preconnect i dns-prefetch, priorytetyzacja zasobów krytycznych dla pierwszego widoku.
- Optymalizacja renderowania. Inlining krytycznego CSS, asynchroniczne ładowanie stylów, lazy loading obrazów i iframów, triggery animacji oparte na Intersection Observer.
Każda decyzja wydajnościowa jest oparta na danych. Mierzymy przed i po, dokumentujemy wpływ i dołączamy baseline wydajności do dokumentacji projektu, żeby regresja po kolejnej aktualizacji wtyczki była widoczna od razu, a nie po fakcie w oknie sezonu letniego.
Lokalne SEO i widoczność cyfrowa w Marsylii
Dobrze zbudowana strona jest wartościowa tylko wtedy, gdy Twoja grupa docelowa w Marsylii i w Métropole Aix-Marseille Provence może ją znaleźć. Nasze projekty programowania WordPress obejmują fundamentalną architekturę SEO od pierwszego szkicu:
- Fundamenty techniczne SEO. Czyste struktury URL, mapy strony XML, konfiguracja robots.txt, tagi canonical i prawidłowa hierarchia nagłówków. Implementujemy dane strukturalne Schema.org: LocalBusiness, Organization, Product, Service, FAQ i HowTo tam, gdzie mają sens.
- Optymalizacja wyszukiwania lokalnego. Integracja z Google Business Profile, lokalne dane strukturalne z adresem w Marsylii, spójność NAP (nazwa, adres, telefon) i strony przygotowane pod zapytania regionalne, uwzględniające Euroméditerranée, Joliette i Vieux-Port tam, gdzie biznes faktycznie działa w aglomeracji marsylskiej albo w basenie Morza Śródziemnego.
- Core Web Vitals jako sygnały rankingowe. Google używa metryk doświadczenia strony w ocenie page experience. Budżety wydajnościowe ustalamy na starcie projektu i weryfikujemy je na danych terenowych z raportu CrUX, nie tylko w pomiarze laboratoryjnym.
- Architektura treści. Układamy strony filarowe, artykuły pomocnicze i linkowanie wewnętrzne tak, żeby użytkownik szybko trafiał do właściwego tematu, a wyszukiwarka jasno rozumiała zakres kompetencji firmy.
SEO nie jest dodatkiem po uruchomieniu strony, jest częścią decyzji architektonicznych od pierwszego szkicu.
Pytania, które zadają nam firmy w Marsylii
Czy możecie zmigrować naszą istniejącą stronę? Tak. Obsługujemy migracje z dowolnego CMS do WordPress, z WordPress do architektury headless (Astro/Next.js) i między dostawcami hostingu. Każda migracja obejmuje mapowanie URL, implementację przekierowań 301 i monitoring SEO przez 90 dni po migracji, z uwzględnieniem kalendarza sezonu letniego albo targów, żeby migracja nie wypadła w oknie krytycznym.
Czy pracujecie z firmami spoza Marsylii? Tak. Znamy lokalny kontekst (Euroméditerranée, Joliette, Vieux-Port, La French Tech Aix-Marseille), ale współpracujemy z klientami w całej Francji i za granicą. Wiele firm w Marsylii obsługuje klientów w Paryżu, Lyonie i całej Unii bez osobnej strony na każde miasto.
Jak obsługujecie strony wielojęzyczne? Implementujemy wielojęzyczność przez WPML dla tradycyjnego WordPress lub natywny routing i18n dla buildów headless z Astro lub Next.js. Każda wersja językowa dostaje prawidłowe tagi hreflang, zlokalizowane slugi URL i niezależne meta dane SEO. Dla firm obsługujących rynek francuski i anglojęzyczny konfiguracja locale FR/EN wymaga osobnej decyzji architektonicznej.
Co obejmuje bieżące wsparcie? Po zakończeniu budowy projekt może przejść na dedykowaną opieka techniczna WordPress w Marsylii: testowane aktualizacje, kopie zapasowe, monitoring bezpieczeństwa i wydajności oraz priorytetowe wsparcie z udokumentowanym runbookiem. Szczegóły na stronie opieki, nie w tym briefie programistycznym.
Czym różni się współpraca z WPPoland od lokalnej agencji w Marsylii? Przede wszystkim doświadczeniem w WordPress od 2007 roku, własnym zapleczem technicznym na Astro i headless WordPress oraz pracą na jasnych założeniach: zakres, etapy i odpowiedzialność są opisane przed wdrożeniem. Wycena jest indywidualna i zależy od zakresu, nie z gotowego cennika.
Powiązane usługi
Jeśli Twoja firma prowadzi już sklep online albo planuje go zbudować, mamy dedykowaną stronę o programista WooCommerce w Marsylii z checkoutem francuskim, integracją z Payplug i przygotowaniem pod RODO z CNIL. Jeśli obecna strona działa i potrzebuje tylko stałej opieki, testowanych aktualizacji i monitoringu, zobacz opieka techniczna WordPress w Marsylii - obie strony opisują ten sam stos techniczny z perspektywy operacyjnej, nie programistycznej.
Pełny zakres prac programistycznych WordPress (motywy, wtyczki, Gutenberg, refaktoryzacje) opisuje strona programista WordPress. Jeśli chcesz omówić brief, wyślij krótki opis obecnej sytuacji przez formularz kontaktowy.
Rozpocznij swój projekt w Marsylii
Jeśli chcesz omówić programowanie WordPress, wyślij krótki opis obecnej sytuacji, celu biznesowego i ograniczeń technicznych. Na tej podstawie sprawdzamy konfigurację, wskazujemy ryzyka i proponujemy praktyczny plan działania.
Jeśli planujesz nową budowę, migrację do Gutenberg albo refaktoryzację odziedziczonego motywu przed sezonem letnim w Vieux-Port albo kampanią w Euroméditerranée, zacznij od spisania celów, ograniczeń i obecnego stanu projektu. Wycena jest indywidualna i zależy od zakresu prac.
Mapa w Marsylii i okolic
Obsługujemy klientów w Marsylii i pobliskich miejscowościach.
Społeczność WordPress w Marsylii
Jako aktywni członkowie globalnej społeczności open-source, wspieramy lokalne inicjatywy w Marsylii. Wierzymy, że dzielenie się wiedzą buduje lepszy ekosystem technologiczny.
Marseille WordPress Meetup
Lokalna grupa społeczności dla programistów i użytkowników.
Dołącz do grupy →
Projekty WordPress zrealizowane w Marsylii i Francja
Zobacz wybrane realizacje, które wspierają biznes naszych klientów.
E-commerce Development: funderwear.pt
Funderwear.pt to sklep internetowy na WooCommerce, który zaspokoi potrzeby nawet najbardziej wymagających klientów szukających niezwykłych prezentów lub chcą...
E-commerce Development: haveabook.pl
Serwis haveabook.pl to platforma dla wydawnictwa i drukarni, która obsługuje wymagających klientów z krajów skandynawskich. Projekt powstał...
E-commerce Development: ILOVEHAIR
Ilovehair.pl to sklep internetowy oparty na platformie WordPress, dedykowany sprzedaży profesjonalnych produktów fryzjerskich marki Hair Saloon Products. Jak...
Wsparcie techniczne WordPress w Marsylii
Przewodniki metodyczne (SEO, GEO, compliance)
Te materiały opisują, jak pracujemy nad cytowaniami w modelach językowych, modernizacją WooCommerce B2B oraz odpornością operacyjną pod NIS2 i przetargi - niezależnie od miasta realizacji.
Co wyróżnia w Marsylii
Lokalna ekspertyza: - Seniorskie prace WordPress dla firm w Marsylii: dedykowane motywy, wzorce Gutenberg, CPT, ACF albo natywne atrybuty bloków oraz własne wtyczki - Kontekst lokalny: Euroméditerranée, Joliette, Vieux-Port, La French Tech Aix-Marseille, logistyka portowa i lokalne MŚP w Métropole Aix-Marseille Provence - WordPress Coding Standards, RODO z francuską CNIL, hosting w UE i wersje FR/EN wpisane w proces realizacji, bez certyfikatu, którego nie było Nasz zespół rozumie specyfikę rynku w Marsylii i dostosowuje rozwiązania do lokalnych potrzeb biznesowych. Największą przewagą jest połączenie technicznej jakości z lokalnym kontekstem biznesowym Marsylii.
Potrzebujesz usługi: Programista WordPress w Marsylii?
Porozmawiajmy o tym, jak możemy wprowadzić Twoją stronę na wyższy poziom wydajności.
Umów bezpłatną konsultację w MarsyliiFAQ - Programista WordPress w Marsylii
Jakie projekty WordPress podejmujecie w Marsylii?
Dedykowane motywy zgodne z WordPress Coding Standards, własne wtyczki, wzorce bloków Gutenberg, modele treści oparte na CPT plus ACF albo natywne atrybuty bloków, integracje REST oraz refaktoryzacje starszych motywów. Zakres trzyma się prac programistycznych WordPress. Jeśli inny stack faktycznie byłby lepszy, zespół zapisuje to na piśmie zamiast zmieniać temat strony. Sklep WooCommerce i stała opieka są osobnymi briefami.
Motyw od zera czy rozszerzenie istniejącego?
Oba podejścia. Nowy projekt w Marsylii zwykle zaczyna się od motywu blokowego opartego o API edytora: theme.json, wzorce bloków, warianty. Odziedziczone instalacje firm z Euroméditerranée albo operatorów portowych z Joliette częściej potrzebują skoncentrowanej refaktoryzacji hierarchii szablonów i procesu budowania zasobów niż przepisywania od zera. Decyzja zapada na bazie kosztu względem długu, a nie tego, co ciekawiej się buduje.
Gutenberg i FSE czy motyw klasyczny?
Dla nowych budów domyślem jest motyw blokowy z edycją całej witryny, bo tam zmierza edytor WordPressa. Klasyczne motywy PHP zostają, gdy istniejąca warstwa logiki w szablonach jest zbyt kosztowna do przeniesienia, albo gdy zespół redakcyjny pracuje w klasycznym edytorze i zmiana narzędzia byłaby większym ryzykiem niż dług techniczny. Wybór trafia do pisemnego kompromisu technicznego, nie do decyzji ideologicznej.
Czy budujecie też wtyczki, czy tylko motywy?
Jeśli funkcjonalność jest logiczna, a nie prezentacyjna, trafia do wtyczki, żeby przetrwała zmianę motywu. Motywy opisują prezentację i strukturę redakcyjną. Wtyczki trzymają integracje, własne typy treści (oferta logistyczna, lokalizacja biura, karta usługi), logikę biznesową, endpointy REST i narzędzia administracyjne. Granica zapada na etapie architektury i jest zapisana w runbooku.
Jak wygląda przekazanie i dalsze utrzymanie?
Żyjąca dokumentacja dla redaktorów i programistów, ślad przegląd kodu na każdej gałęzi, pisemny zapis decyzji architektonicznych oraz sesja przekazania na koniec zlecenia. Projekt może następnie trafić do zespołu klienta albo na opcjonalną opiekę z tą samą dokumentacją. Stałe aktualizacje, WAF i kalendarz freeze sezonu opisuje osobna strona utrzymania WordPress, nie ten brief.
Technologie i Specjalizacje - w Marsylii
Specjalizujemy się w:
Wspominamy o:
Sprawdź inne usługi WordPress i bazę wiedzy
Wzmocnij swój biznes dzięki profesjonalnemu wsparciu technicznemu w kluczowych obszarach ekosystemu WordPress.
Audyt CrUX i atrybucja LCP, INP, CLS per template.
Core Web Vitals, cache i szybki frontend.
Stabilność, aktualizacje i wsparcie po wdrożeniu.
Migracja do Astro, Next.js i headless WordPress.
Headless WordPress, Sanity, Strapi i Contentful z Astro lub Next.js.
Audyt, hardening i ochrona przed incydentami.
Powiązane kategorie
Artykuły wspierające temat

Jak zoptymalizować Interaction to Next Paint (INP) na stronach WordPress. Praktyczne poprawki najnowszej metryki Core Web Vitals wpływającej bezpośrednio na pozycje w Google.

Pole kontra lab, LCP, INP i CLS dla WordPressa w 2026. Zielone LCP Google to nadal 2,5 s w CrUX. 100/100 w Lighthouse to cel laboratoryjny. Consent, Cookiebot, widgety kasowe, cache HTML.

Porównanie najlepszych wtyczek do optymalizacji obrazów w WordPress, konfiguracja dostarczania WebP/AVIF, ekstrakcja critical CSS i ustawienie LiteSpeed Cache dla maksymalnych wyników PageSpeed.