Jak wybrać wtyczkę do WordPressa?
Kamil Porembiński
Kamil Porembiński
23.07.2018

Jak wybrać wtyczkę do WordPressa?

Wiele razy spotykałem się z tym pytaniem – „Jak wybierasz wtyczki?”, „Na jakiej podstawie dobierasz wtyczki?”. Cóż, wybór wtyczki często nie jest procesem łatwym, ale jest kilka kwestii, na które warto zwrócić uwagę przed wyborem tej jedynej, która ma rozwiązać nasz problem – poniżej kilka porad jak dokonać dobrego wyboru.

Podcast

If you would rather listen to us than read the article, below you will find our podcast. This is the audio version of this article. You can listen to it through the system’s „Podcasts” application on iOS, your choice of Android, iTunes, YouTube, SoundCloud i Spreaker.

Zastanów się czy w ogóle potrzebujesz wtyczki

Ten punkt tyczy się głównie dwóch przypadków:

  1. Bardzo prostych problemów,
  2. Skomplikowanych problemów

W pierwszym przypadku może okazać się, że zamiast instalować wtyczkę wystarczy kawałek kodu dodany w pliku functions.php Twojego motywu potomnego. Przykłady tego typu problemów to:

W drugim wypadku może okazać się, że lepiej postawić na autorskie rozwiązanie niż próbować „ulepić” je (najczęściej) z kilku wtyczek. Ta grupa najczęściej tyczy się problemów, które rozwiązujemy na zasadzie – „Wtyczka X nie ma funkcji A, B i C, ale mają je wtyczki Y i Z”. Najczęściej oznacza to spore problemy na poziomie integracji działania wtyczek X, Y i Z a dodatkowo efekty uboczne w postaci narzutu dodatkowego, zbędnego i nieużywanego kodu.

Dobieraj poziom skomplikowania wtyczki adekwatnie do skali Twojego problemu

Umówmy się – instalowanie WooCommerce, gdy chcesz sprzedawać na stronie 2 e‑booki to trochę przerost formy nad treścią. Oczywiście zawsze wtedy pojawia się ktoś, kto mówi „ale przecież może za rok będę mieć sklep z e‑bookami! Lepiej przygotować się na to zawczasu”.

Warto być w takiej sytuacji pragmatycznym i stosować rozwiązania adekwatne do skali swojego bieżącego działania, ewentualnie z pewnym buforem. Oczywiście życzę każdemu by udało mu się, rozkręcić jego biznes na tyle, by te przygotowania poczynione na początku się w końcu przydały, lecz życie pokazuje, że mało kiedy jest tak jak planowaliśmy – zwłaszcza w świecie początkujących biznesów/projektów, gdzie dopiero zaczynamy odkrywać swoją grupę docelową.

Wracając do wspomnianego przykładu z WooCommerce – dlaczego nie? Bo WooCommerce to dosyć spory kombajn, wymaga pewnego poziomu wiedzy, odpowiedniej konfiguracji oraz (a może przede wszystkim) utrzymania. Utrzymanie w tym wypadku objawia się tym, że WooCommerce jak każda większa wtyczka, stale się rozwija – jego API się zmienia a dodatkowo czasem trzeba dostosować do niego motyw.

Czy warto wydawać pieniądze i poświęcać swój czas na coś, co może nam się w ogóle w przyszłości nie przydać? Nie sądzę.

Inny przykład to wtyczki do zarządzania galeriami – jeżeli posiadamy relatywnie niewielką liczbę zdjęć, to spokojnie można to rozwiązać mechanizmem galerii wbudowanym w WordPressa.

Sprawdź czy wtyczka nie zawiera błędów bezpieczeństwa

Temat galerii wspomniałem w poprzednim punkcie celowo. Jest taka popularna wtyczka od galerii – NextGEN Gallery. Gdy jednak zajrzymy na stronę WPScan Vulnerability Database to zobaczymy, że mniej więcej każda duża wersja tej wtyczki w ostatnim czasie miała jakąś lukę bezpieczeństwa – i to nie są jakieś drobne niedociągnięcia, tylko poważne błędy typu SQL Injection czy możliwość wysłania na nasz serwer dowolnego pliku. Gdy dodamy do tego dużą popularność tej wtyczki widać, że ryzykujemy całkiem sporo, bo tego typu podatności w popularnych wtyczkach najczęściej kończą się zmasowanymi atakami na strony używające tych wtyczek.

Oczywiście ciężko o oprogramowanie bez błędów bezpieczeństwa, jednak warto zawsze sprawdzić, czy dana wtyczka miała dużo problemów z bezpieczeństwem w przeszłości, a jeśli tak to czy nie było jakiś małych afer dookoła tego tematu. Niektórzy autorzy wtyczek niechętnie dzielą się informacjami o lukach bezpieczeństwa w changelogu wtyczki albo reagują na błędy dopiero po opublikowaniu podatności publicznie.

Ogólnie im popularniejsza wtyczka i im więcej błędów bezpieczeństwa w przeszłości posiadała, tym ostrożniej powinniśmy podchodzić do danej wtyczki.

Zobacz co o wtyczce mówi repozytorium

Każda wtyczka w repozytorium posiada kilka użytecznych informacji z punktu widzenia podjęcia decyzji o jej instalacji. Warto zwrócić uwagę na:

  1. Proporcję ocen pozytywnych (5 i 4) do ocen negatywnych (1 i 2),
  2. Recenzje wystawiane przez użytkowników – może się okazać, że opis wtyczki jest mylący albo wtyczka nie robi tego czego byśmy oczekiwali,
  3. Czas odpowiedzi na forum wtyczki istniejącym na repozytorium – dzięki temu wiemy ile mniej więcej możemy czekać na odpowiedź od autora. Czerwona lampka powinna się nam zapalić gdy autor niezbyt udziela się na forum.
  4. Kompatybilność wtyczki z aktualnie używaną przez nas wersją WordPressa,
  5. Ilość aktywnych instalacji (osobiście unikam tych < 1000 jeśli mogę),
  6. Data ostatniej aktualizacji,
  7. Częstotliwość aktualizacji

Dwa ostatnie punkty warto też odnieść do poziomu skomplikowania wtyczki – jeżeli wtyczka robi jedną rzecz a jej kod zamyka się w kilkuset linijkach kodu to nic dziwnego, że od 2 do 3 lat leży nieaktualizowana – to po prostu działa.

Zbadaj wpływ wtyczki na wydajność Twojej strony

Warto tymczasowo zainstalować sobie wtyczkę Query Monitor i odświeżyć kilka razy stronę notując przy tym czas odpowiedzi i ilość zapytań. A następnie powtórzyć operację po instalacji wtyczki. Prosta sprawa a pozwala uniknąć zbędnych kosztów.

Ostatnio miałem przypadek, gdy wtyczka, która robiła to co 6 linijek kodu CSS (z prefiksami) wydłużała czas wczytywania strony o 5-6 sekund i dokładała od siebie 80 zapytań SQL do bazy.

Zweryfikuj czy to co robi wtyczka na pewno robione jest z użyciem adekwatnych technologii

To punkt dla bardziej zaawansowanych użytkowników z wiedzą techniczną – warto czasem sprawdzić jak wtyczka rozwiązuje dany problem. Na przykład w poprzednim punkcie opisałem właśnie taki przykład – wtyczka po stronie serwera robiła coś co da się zrobić poprzez kod CSS/JS – wielokrotnie szybciej i bez obciążania serwera.

Dodatkowy profit z tego podejścia jest taki, że można się nauczyć wielu nowych trików i rozwiązań.

W wypadku dużych wtyczek – przetestuj ją lokalnie

Jeżeli przymierzamy się do instalacji jakiejś większej wtyczki, warto zbadać jej wpływ na naszą stronę na lokalnej instalacji lub środowisku testowym. Dzięki temu unikniemy wielu niespodziewanych problemów i konfliktów.

Preferuj wtyczki z repozytorium

Szczególnie w wypadku mniejszych wtyczek – warto korzystać z tych, które znajdują się w oficjalnym repozytorium wtyczek. Z prostego powodu – zostały one przejrzane przez wolontariuszy i spełniają pewne standardy bezpieczeństwa i jakości kodu.