Wpis z mikrobloga

Mirki od #wordpress i #webdev: za kilka chwil albo dni wydamy wtyczkę WPML w wersji 3.4.

Nie chcę zapeszyć, ale jest to wydanie, które warto zachować na dłużej i na pewno do niego zaktualizować, jeśli ktoś używa.

Pamiętam jak wyglądał WPML 2-3 lata temu i jaką miał opinię: niekwestionowany standard wśród wtyczek służących do tworzenia wielojęzycznych stron, ale niestety przy tym spowalniający stronę oraz mający mnóstwo niespodziewanych błędów.

Jakieś 1,5 roku temu odsialiśmy z tego opisu "spowalniający" - znacząco wyeliminowaliśmy zbędne wykonywanie wielokrotnie tego samego kodu i nie ma żadnych problemów na linii współpracy z wtyczkami cache-ującymi (Polecam tu W3TC, który mamy najlepiej rozpracowany)

Potem z wydania na wydanie podnosiliśmy jakość kodu. Poprawiliśmy wewnętrzne procedury, zatrudniliśmy nowych developerów (cała firma liczy teraz ponad 70 osób, gdy 3 lata temu było nas 20). Duża część kodu została przepisana tak by to miało ręce i nogi, niemal wszystko jest pokryte teraz testami jednostkowymi.

Przez ostatni tydzień spora część pracowników - w tym i ja - została rzucona do testów rzeczywistych, gdzie mamy wyklikać najbardziej oczywiste scenariusze użycia i najbardziej zwariowane i znaleźć możliwe błędy.

I o ile w poprzednich wydaniach słynąłem z tego, że te wydania opóźniałem, bo w ostatniej chwili wyłapywałem masę mniejszych i większych fuck-upów, to przez ostatni tydzień znalazłem tylko dwa PHP Notice i nic więcej. Z radością i rozczarowaniem muszę przyznać, że poległem :)

Tak więc jeśli pamiętacie WPML z czasów gdy był "ambiwalenty", myślę, że to pora by dać mu drugą szansę :)

#unittest #testowanieoprogramowania
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@konradk: no i miło, że piszesz bo mam sprawę właśnie z WPML związaną. Autor jednego z szablonów zaleca użycie Twojej wtyczki do tłumaczenia. Projekt kończę po kimś innym. Ktoś inny używał LocoTransalte. Tłumaczenia robione przez Loco nie działają. Sprawdzałem zarówno katalog globalny na poziomie plugins i themes jak i w folderze wtyczki. Czy WPML tłumaczy pliki w jakiś inny, nieznany mi sposób, że tłumaczenia będą działać tam gdzie dotychczasowe nie
  • Odpowiedz
@krzysztof114: nie jest on oficjalnie kompatybilny z WPML. Nie znaczy to jednak ze nie dziala: po prostu nigdy autor motywu ani zaden uzytkownik nie zglosil nam go do przetestowania i wydania opinii czy dziala czy nie.

Jesli w motywie widzisz ze wszystkie stringi ktore chce on wyswietlic przechodzą przez standardowe funkcje wordpress do l18n ( __() czy _e() ) to WPML to spokojnie przetłumaczy

Jesli znajdziesz ze jednak nie dziala
  • Odpowiedz
@konradk: Stringów nie sprawdzałem, ale jeśli nawet wrzucenie do functions.php tłumaczenia jakiejś frazy w locie nie działa to zapala mi się czerwona lampka. Co do WPML: super robota! Jeśli będę miał więcej zleceń na WP to chętnie się zgłoszę.
  • Odpowiedz
@krzysztof114: wlasnie sprawdzilem te stringi i widze ze uzywaja funkcji do i18n, wiec to bedzie dziala

co rozumiesz przez "wrzucenie do functions.php tłumaczenia jakiejś frazy w locie"? co tam wrzucasz? wklej na pastebin i podlinkuj
  • Odpowiedz
@krzysztof114: update mojego info o komatybilnosci, bo znalazlem ticket w naszym systemie zwiazany z tym motywem:

autor zglosil sie jednak do nas do testow. Zaczelismy testowac, ale od razu wyskoczyly nam PHP Notice i Warningi w kokpicie pochodzące z motywu, ale nie zwiazane z WPML. (zawsze testujemy z wp_debug na true).

Poprosilismy autora by usunal, ale od tej pory cisza (luty tego roku).

Pingnąłem testera by sie jeszcze raz odezwal
  • Odpowiedz
@konradk: Ok, czyli jednak trzeba się nauczyć tego php w końcu.

Czy WPML radzi sobie jakoś z aktualizacjami? Mam motyw potomny dla szablonu, ale wtyczki mają tłumaczenia w swoich folderach. Jak jest to zorganizowane? Co ciekawe autor dodaje chyba z 5 wtyczek i każda ma taką samą nazwę plików .pl i .mo, więc wrzucenie ich do jednego globalnego katalogu też czarno widzę. Musiałbym wszystkie połączyć w jedną całość, a potem
  • Odpowiedz
@krzysztof114: domyslnie WPML nie operuje na plikach .po/.mo. Jak zainstalujesz jakis plugin, WPML skanuje go w poszukiwaniu ciagow do tlumaczenia (w funkcjach i18n, tych z ostatnich linkow plus kilka dodatkowych). Jak znajdzie, zapisuje w swojej bazie stringow.

Potem mozesz isc do WPML > String Translation i tam przetlumaczyc je. Tlumaczenia tez zapisuja sie w bazie.

Tak wiec aktualizacja wtyczek czy motywu nie usunie tych
  • Odpowiedz
@konradk: PoEdit znam, to nie problem. Dziwi mnie, to że we wtyczkach są te pliki .po i .mo a tłumaczenia nie działają. Przychodzi mi do głowy taka myśl, że one nie są w standardzie a ktoś kto instalował LocoTransalte je stworzył. Pozostaje więc Twój produkt. Fajna filozofia z tłumaczeniami. Wielkie dzięki za wyjaśnienie.
  • Odpowiedz