Oferta pracy: Programista WordPress (projekt jednorazowy + możliwa pomoc)
Projekt: strona treściowa na WordPress, anglojęzyczna, odwiedzalność — kilka milionów wizyt miesięcznie. Wielojęzyczna: 7 wersji językowych z hreflang. Poprzedni programista odszedł, trzeba przejąć projekt i zamknąć nagromadzony dług techniczny.
Co ważne zrozumieć od razu: strona jest aktywna i komercyjna. Zmiany „na żywo” bez kopii zapasowej i wstępnej weryfikacji nie będą możliwe. Wykonawca samodzielnie uruchamia kopię testową — z mojej strony daję dostęp do niezbędnych danych do skopiowania.
Technologie
- WordPress, niestandardowy (mocno przerobiony) motyw
- VPS + nginx, wersję PHP przekażę wybranemu kandydatowi
- Wtyczki: wtyczka SEO, cache, wielojęzyczność — konkretny zestaw przekażę po selekcji
- Dostępy (panel administracyjny, FTP/SSH) będą wydawane po uzgodnieniu warunków, nie w korespondencji
Zadania
1. Aktualizacja WordPress do aktualnej wersji — bez utraty funkcjonalności
Obecnie: rdzeń, motyw i wtyczki nie były aktualizowane od dłuższego czasu. Istnieje podejrzenie, że zmiany były wprowadzane bezpośrednio w plikach motywu i/lub wtyczek, dlatego aktualizacja wszystko psuje.
Potrzebne:
- Uruchomić kopię testową, zaktualizować rdzeń, motyw, wtyczki, PHP do wspieranych wersji
- Znaleźć wszystkie niestandardowe zmiany w motywie/wtyczkach i poprawnie je wydzielić (motyw potomny, osobna wtyczka, haki) — tak, aby przyszłe aktualizacje ich nie nadpisywały
- Sprawdzić po aktualizacji: układ na stronie głównej i na wszystkich typach stron, niestandardowe bloki w edytorze, hreflang, cache, formularze, wstawki reklamowe
- Wdrożyć na produkcję z kopią zapasową i planem przywracania
Wynik: strona działa 1:1 jak przed aktualizacją, a następne aktualizacje mogę przeprowadzać samodzielnie bez konsekwencji. Dodatkowo krótkie opisanie w formie tekstowej — co zostało zmienione i gdzie teraz znajduje się niestandardowy kod.
2. Naprawić panel administracyjny
Dwa błędy, oba występują nie u wszystkich — na niektórych komputerach są, na innych nie:
- W edytorze nie wyświetlają się niestandardowe bloki (bloki informacyjne, które są wstawiane do artykułów)
- Podczas zapisywania artykułu pojawia się błąd
Trzeba znaleźć rzeczywistą przyczynę (konflikt JS, cache, ograniczenia po stronie serwera/WAF, przestarzała wtyczka — nie wiem), a nie „wyczyściłem cache, wydaje się, że działa”. Możliwe, że naprawi się samo po zadaniu 1 — wtedy to rejestrujemy i zamykamy.
Wynik: oba błędy nie występują na żadnym stanowisku roboczym, jest jasna odpowiedź, w czym była przyczyna.
3. [ZASTĘPSTWO — OPISAĆ]
Przykład sformułowania: „Uruchomić osobną sekcję na subdomenie — osobna instalacja lub multisite, własny motyw, wspólna nagłówek i menu z główną stroną, poprawne canonical i robots”.
4. Możliwość tłumaczenia „Stron” (Pages), a nie tylko wpisów
Obecnie wielojęzyczność działa dla wpisów. Statyczne strony (typ Pages) nie mogą być tłumaczone.
Potrzebne: włączyć/dopracować tłumaczenie dla typu Pages tak samo, jak dla wpisów — własny URL w formie /es/slug/, self-canonical na siebie (nie na angielski oryginał), poprawny hreflang między wszystkimi wersjami językowymi strony, przełącznik języków działa.
Języki: ES, ID, PT-BR, RU, TH, TR, VI.
Warunki
- Projekt jednorazowy, ocena każdej zadania osobno. Zadania bierzemy po kolei — zaczynamy od 1 i 2
- Kopia testowa obowiązkowa, git mile widziany
- Po zakończeniu możliwa regularna pomoc techniczna na stałe
Co przesłać w odpowiedzi
- 2–3 przykłady podobnych projektów (aktualizacja legacy-WP, wielojęzyczne strony, obciążone projekty)
- Doświadczenie z wielojęzycznością na WP — jakie wtyczki były używane
- Ocena (godziny + pieniądze) dla zadań 1, 2, 4. Jeśli nie można ocenić na podstawie opisu — napisz, jakich danych brakuje
- Jak zwykle przywracasz nieudane aktualizacje na żywym projekcie
Odpowiedzi „zrobię wszystko, piszcie na telegramie” nie będą rozpatrywane.