Dokąd zmierza WordPress – epilog

Po mojej prelekcji na WordCampie, która traktowała m.in. o tym czy jako developerzy WordPressa powinniśmy się bać o swoje dochody i przyszłość, odbyłem sporo rozmów oraz naszło mnie kilka przemyśleń do których chciałbym się odnieść jako uzupełnienie do mojej prezentacji. Czytaj dalej Dokąd zmierza WordPress – epilog

Google Maps API od 22 czerwca wymaga kluczy API dla nowych stron

Informacyjnie dla tych, którzy używają Google Maps API na swoich stronach – od 22 czerwca wszystkie zapytania do API dla nowych stron muszą zawierać klucz API. Wcześniej w wypadku małych lub lokalnych projektów klucz API nie był potrzebny do działania. W praktyce wygląda to tak, że strony na których wykorzystywaliśmy Google Maps API przed zmianami, nadal działają poprawnie, gdyż jak napisano w oficjalnym oświadczeniu:

Existing applications have been grandfathered based on their current usage to ensure that they continue to function both now and in the future. We will also be proactively contacting all existing API key users who, based on usage growth patterns, may be impacted in the future.

Zatem nie należy się dziwić, że na jednych stronach witryny mapy działają, a na innych mamy taki komunikat:

api-error

Po prostu API bez kluczy nie działa dla adresów dla których nie było wywołań przed 22 czerwca.

Informacje jak wygenerować klucz API dla swojej strony znajdziecie tutaj.

Electron – wprowadzenie

W maju ukazała się wersja 1.0 Electrona – narzędzia do tworzenia aplikacji desktopowych z wykorzystaniem technologii webowych. Dla niewtajemniczonych – Electron to narzędzie, które wykorzystano przy tworzeniu takich aplikacji jak Slack, edytor Atom, Calypso dla WordPress.com czy Visual Studio Code. Ponieważ sam od dłuższego czasu korzystam z tego rozwiązania, chciałbym je Wam przybliżyć.

Dlaczego? Bo Electron idealnie nadaje się do tworzenia aplikacji, które korzystają np. z WordPressowego REST API – nie trzeba się uczyć zbyt wielu rzeczy jeżeli mamy na swoim koncie aplikacje SPA.

Czytaj dalej Electron – wprowadzenie

ECMAScript 2015 w pigułce

Jeżeli jeszcze nie pisaliście kodu z użyciem nowych elementów składni JavaScript to czas najwyższy nadrobić zaległości 🙂 Zacznijmy od tego, że składnia specyfikacji ES2015 (często nazywana też ES6) ma już bardzo dobre wsparcie w najnowszych wersjach przeglądarek – na bieżąco postępy można śledzić dzięki temu zestawieniu.

Ale wcale nie trzeba się martwić o wsparcie przeglądarek – istnieją preprocesory takie jak Babel, które kompilują kod zgodny z ES2015 do składni zgodnej z ES5, która jest wspierana przez większość istniejących przeglądarek. Jeżeli korzystasz z Gulpa, to warto wyposażyć się w tym celu w moduł gulp-babel.

Tak – większość nowinek ze specyfikacji ES2015 da się zapisać w formie kodu zgodnego z ES5, co udowadnia ta strona – swoją drogą stanowi ona niezłe kompendium wiedzy na temat składni ES5 🙂

Dla tych, którzy już trochę czasu z ES2015 spędzili, polecam świetny blog Alexa Rauschmayera, który skupia się często na bardzo subtelnych niuansach specyfikacji.

Aby być na bieżąco z nowinkami w specyfikacji ECMAScript, polecam zapisać się do tego newslettera – co tydzień otrzymasz 5 linków, dotyczących różnych ciekawostek i nowinek związanych z ECMAScript.

Swoją drogą o ile ES2015 wprowadził mnóstwo nowinek to kolejne wydania specyfikacji ECMAScript już nie będą tak obszerne i planowany jest dla nich roczny cykl wydawniczy.

Szablony w JavaScript z użyciem wp.template

Generowanie dużych ilości kodu HTML w JavaScript jest uciążliwe bez odpowiednich narzędzi. JavaScript dopiero niedawno wzbogacił się dzięki standardowi ES2015 (ES6) o wsparcie wielolinijkowych ciągów znaków. Jeżeli chcemy wspierać starsze przeglądarki to musimy skorzystać z innych rozwiązań. Handlebars czy Mustache wyglądają kusząco, ale warto pamiętać, że WordPress posiada już własny mechanizm szablonów dla JavaScript dostępny dzięki funkcji wp.template.

Jest to silnik szablonów wykorzystywany w bibliotece Underscore.js z własną składnią podobną do tej znanej z Mustache by uniknąć konfliktów z niektórymi konfiguracjami PHP. W tym wpisie przyjrzymy mu się bliżej 🙂 Czytaj dalej Szablony w JavaScript z użyciem wp.template

Awesomplete – proste tworzenie pól z podpowiedziami

Awesomplete

Powyższy skrypt można łatwo wykorzystać do stworzenia pola z podpowiedziami pojawiającymi się podczas wpisywania. W niektórych wypadkach nie wymaga on dodatkowego kodu JavaScript. Całość zajmuje po skompresowaniu 2kB i nie wymaga do działania dodatkowych bibliotek JavaScript.

conditioner.js – moduły JS wczytywane warunkowo i zależnie od środowiska

conditioner.js

Kolejna biblioteka korzystająca z dobroci atrybutów data-*. Możemy uzależnić wczytywanie modułów w JS od rozmiaru okna, elementu lub dostępności konkretnych funkcji np. obsługi gestów dotykowych.

intercooler.js – AJAX poprzez atrybuty HTML-a

intercooler.js – wykorzystanie atrybutów HTML-a do wykonywania zapytań AJAX-owych

Powyższa biblioteka prezentuje ciekawe podejście do wykonywania zapytań z użyciem AJAX-a. Informacje o typie zapytania, jego adresie oraz zachowaniu przeglądarki po wykonaniu zapytania, przechowywane są w postaci atrybutów linków. Ciekawe rozwiązanie do wykorzystania w mniejszych projektach, gdzie potrzeba w łatwy sposób zaimplementować podstawowe zapytania AJAX-owe.

Wewnętrzne linkowanie w ekranie personalizacji motywu

Ostatni pokazałem jak można stworzyć podpowiedzi z opisów kontrolek – w tym wpisie pokażę jak na bazie opisów paneli, sekcji oraz kontrolek stworzyć wewnętrzne linkowanie pomiędzy elementami ekranu personalizacji motywu. Wykorzystamy w tym celu kilka opisywanych wcześniej przeze mnie funkcji API oraz fakt, że opisy elementów mogą zawierać kod HTML. Czytaj dalej Wewnętrzne linkowanie w ekranie personalizacji motywu