Nauka PHP dla rozwoju WordPress: kompleksowy przewodnik

Masz więc witrynę WordPress i poprawiłeś swój motyw, przeczytałeś trochę o tagach szablonów, a może nawet zmodyfikowałeś swoje funkcje.plik php we wbudowanym edytorze motywów.

A teraz chcesz przenieść swoje umiejętności na wyższy poziom i zagłębić się w Więcej kodu.

Na szczęście WordPress to świetne miejsce na początek. Dostępna jest cała masa dokumentacji, a kod jest – w przeważającej części-łatwy do odczytania, zrozumiały i nietrudny do zapamiętania.

W tym artykule przedstawię ci krótkie wprowadzenie do świata programowania WordPress. Chociaż ten post jest skierowany do początkujących, zakłada, że majstrowałeś już z WordPressem i znasz podstawowy HTML. Zakładam, że wiesz, jak edytować pliki WordPress i zajrzałeś do pliku motywu WordPress – nawet jeśli nie rozumiesz, co się dzieje.

Co omówimy w tym przewodniku:

Języki programowania używane w WordPress

WordPress używa wielu różnych języków programowania. Jeśli jeden język ma być wyróżniony jako” główny”, to będzie nim PHP. PHP jest językiem po stronie serwera, który zasila około 82 procent sieci.

WordPress wykorzystuje również HTML, CSS i Javascript. HTML jest używany do nadania twojej stronie struktury i jest wykorzystywany przez wszystkie strony internetowe. CSS pomaga stylizować strukturę HTML. CSS sprawia, że tło jest białe, tekst ciemnoszary i umieszcza pasek boczny po prawej stronie. Javascript dodaje zaawansowane funkcje, takie jak suwaki i inne funkcje interaktywne.

Wreszcie, WordPress korzysta również z MySQL, który jest odpowiedzialny za odpytywanie bazy danych. MySQL służy do pobierania ostatnich 10 postów lub wszystkich postów w danej kategorii z bazy danych.

Dobra, więc zła wiadomość jest taka, że jest to pokaźny zasób wiedzy. Dobrą wiadomością jest to, że nie musisz wiedzieć wszystkiego, aby zacząć; w rzeczywistości możesz poradzić sobie z bardzo małą ilością. Sam nauczyłem się programowania przez WordPress około osiem lat temu, kopiując i wklejając przykłady z dokumentacji.

Porady eksperta

Jak już wspomniałem, nauczyłem się poprzez samouczki, dokumentację, pracę innych-byłem tam, gdzie teraz jesteś i przeszedłem wszystkie fazy, które będziesz. Trudność z programowaniem nie nie pochodzą ze złożoności zaangażowanych języków. Wszystko, czego się nauczysz, po podziale na Komponenty, jest łatwe.

Uważam, że programowanie jest trudne z dwóch powodów. Musisz wiedzieć Nr serii prostych rzeczy i aby stworzyć udany produkt, musisz być w stanie myśleć w kategoriach systemów, co wymaga trochę praktyki.

Chciałem się upewnić, że wiesz, że podczas nauki kodowania dla WordPressa będziesz miał mnóstwo#$#%!! chwile. Na początku będziesz sfrustrowany swoim brakiem zrozumienia, to, co Twoim zdaniem jest doskonale uformowanym kodem, nie zadziała, spędzisz godziny walcząc z nim tylko po to, aby odkryć, że zapomniałeś średnika. To wszystko jest całkowicie normalne. Każdy odnoszący sukcesy programista to odczuł, to nie tylko Ty. Obiecuję, że jeśli będziesz się tym zajmował, będziesz w stanie kodować motyw w mgnieniu oka.

Nie ma czegoś takiego jak “kod WordPress”

Ważne jest, aby zdać sobie sprawę, że technicznie nie ma czegoś takiego jak “kodowanie WordPress” i “Kod WordPress.”WordPress to garść kodu napisanego w PHP. Joomla i Drupal (dwa inne systemy zarządzania treścią) are również napisany w PHP.

Analogia do ratunku! Powiedzenie ” kod WordPress “jest jak powiedzenie” samochód BMW.”BMW, Jaguar i Nissan to samochody-wszystkie są zbudowane z nakrętek, śrub i spawania. Różnica między nimi polega na tym, jak są zestawione, na filozofii projektowania i praktykach asamblażu.

WordPress, Joomla, Drupal i wszystkie inne systemy i frameworki są zbudowane z tych samych komponentów. Różnica między nimi polega na filozofii kodowania i metodologii, którą stosują.

Jak działa PHP

Jak wspomniałem wcześniej, PHP jest językiem skryptowym po stronie serwera. Natomiast HTML jest językiem po stronie klienta. Przeanalizujmy najpierw HTML, aby zrozumieć, co to oznacza.

Sposób, w jaki przeglądarka interpretuje kod HTML, jest następujący: podczas odwiedzania strony HTML kod HTML jest wysyłany do przeglądarki. Twoja przeglądarka przetwarza informacje i wypluwa coś, co rozpoznajesz jako stronę internetową.

Gdy przeglądarka odwiedza stronę, która korzysta z PHP, wykorzystywany jest krok pośredni. Najpierw kod PHP jest przetwarzany przez serwer. Wynikiem tego przetwarzania jest strona HTML, która jest następnie wysyłana do przeglądarki i wyświetlana.

Dodatkowe przetwarzanie przez serwer wydaje się niepotrzebnym krokiem, ale dalekim od niego. Spójrzmy na praktyczny przykład z prawdziwym kodem PHP:

Bez żadnego zrozumienia kodu PHP, możemy już zebrać pewne informacje na jego temat. Po prostu czytając można dostrzec, że jeśli szczególny zestaw okoliczności jest prawdą, że wyświetlamy “Dobranoc”, w przeciwnym razie wyświetlamy “Dzień dobry”.”

Kiedy spojrzysz na źródło powstałej strony internetowej, nie będzie śladu tego kodu. Zobaczysz tylko ” Dzień dobry “lub ” dobranoc”.”Dzieje się tak dlatego, że serwer wykonuje przetwarzanie i wysyła tylko wynik.

W powyższym przykładzie użyłem funkcji daty, aby określić, która jest godzina. date (‘G’) Zwraca liczbę od 0 do 23, gdzie 0 oznacza północ, a 23 oznacza 23. Jeśli wartość tej funkcji jest większa niż 18 (jest później niż 18: 00) wyświetlamy good night. W przeciwnym razie pokażemy dobry dzień.

Teraz wiemy dwie rzeczy o PHP! Pozwala nam używać instrukcji if do wyświetlania treści w oparciu o nasze własne kryteria. Wiemy też, że ma funkcje, które nam pomagają. Funkcja date () zwraca bieżącą datę w podanym formacie. Funkcja strtolower () zmieni każdy tekst na małe litery. Wiele z tych funkcji umożliwia robienie wspaniałych rzeczy z PHP.

PHP w WordPress

Mając na uwadze ten ostatni akapit, możesz rozpoznać PHP wszędzie w WordPress. Otwórzmy zawartość.php z domyślnego motywu Twenty Fourteen i spójrz. Ten plik jest odpowiedzialny za wyświetlanie treści postów na blogu w temacie.

Porównajmy pierwszą linię tego pliku (odrzucając komentarz na górze)…

… z wyjściem generowanym podczas odwiedzania strony:

Z porównania możemy wywnioskować, że funkcja the_ID () jest zastępowana przez ID danego posta. Funkcja post_class () dodaje Nr serii klas do elementu HTML. Pomagają nam one w późniejszej stylizacji naszych postów. Na tym etapie nie ma znaczenia, dlaczego te konkretne klasy są dodawane, po prostu zapoznajemy się z funkcjami.

Dalej, patrząc na linie 24 do 28 możemy również zobaczyć oświadczenie if W Pracy:

Instrukcja if zawiera is_single (). Jest to funkcja, która będzie prawdziwa if patrzymy na pojedynczą stronę postu, w przeciwnym razie będzie ona fałszywa. Jeśli to prawda i znajdujemy się na jednej stronie, używamy funkcji the_title() do wypisania tytułu.

Jeśli jest to false, nadal używamy funkcji the_title (), ale upewniamy się, że jest to link do strony z pojedynczym postem.

Zauważ, że niektóre funkcje są “puste”, podczas gdy niektóre mają w sobie fragmenty. Na przykład, is_single() jest pustą funkcją, podczas gdy the_title () ma w nawiasach jakiś punkt.

Elementy w nawiasach nazywane są argumentami. Każda funkcja ma inne argumenty oddzielone przecinkami, o czym można się dowiedzieć w dokumentacji. Artykuł Kodeksu o the_title () pokazuje nam, że ta funkcja ma trzy argumenty:

  • Pierwszy argument pozwala nam dodać HTML przed tytułem,
  • Drugi pozwala nam dodać HTML po tytule, a
  • Trzeci parametr określa pogodę tytuł jest wyświetlany (echem) lub jest po prostu przechowywany do późniejszego użycia.

Na tej podstawie rozumiemy teraz, co dzieje się w linii 25 treści.plik php:

Funkcja pokazuje tytuł, ale dodajemy do niego znacznik początkowy H1 i dołączamy znacznik końcowy.

Wynik tego kodu wygląda tak w przeglądarce:

Jak podnieść poziom w rozwoju WordPress

Są szanse, że nie chcesz spędzać tygodni brodząc w dokumentacji PHP i ucząc się wszystkiego od podstaw. Ty powinien zrób to, ale polecam również eksperymentować jak najwięcej.

Chcesz przenieść listę tagów z dołu artykułu na górę? Funkcja the_tags() na dole zawartości.plik php wygląda obiecująco.

Najpierw usuńmy to razem. Następnie, po zapisaniu i odświeżeniu strony, lista tagów zniknie. To jest świetne, oznacza to, że jest to rzeczywiście funkcja, która wyświetla tagi. Teraz po prostu skopiuj go i wklej do różnych części pliku, aby zobaczyć, gdzie kończy się.

jest prawdopodobne, że im wyżej w kodzie, tym wyżej będzie w artykule. Z pewnym doświadczeniem będziesz w stanie zidentyfikować rzeczy takie jak the_excerpt() i the_content (), które są odpowiedzialne za wyświetlanie treści, więc umieszczenie jej w dowolnym miejscu nad nimi spowoduje umieszczenie jej nad główną treścią.

Nauka kodowania dla WordPressa w ten sposób jest zabawna i zachęca do zapoznania się z dokumentacją, co zawsze jest dobrą rzeczą. Nie martw się, jeśli nie rozumiesz wszystkiego – wkrótce osiągniesz punkt, w którym to zrobisz.

Złe Praktyki

Jedną z wad tej metody jest to, że Wola stosuj złe praktyki. Podczas gdy moje zalecenie, aby skopiować i wkleić funkcję the_tags () do góry pliku gdzieś działa, HTML dla stopki, która używa znacznika stopki, będzie potrzebował pewnych modyfikacji, aby uczynić go dobrym kodem.

Jeszcze raz, zapomnij o tym na razie. Nie tworzysz profesjonalnego kodu gotowego do produkcji dla Google. Próbujesz nauczyć się podstaw i dowiedzieć się, jak wszystko działa. Nie jest to łatwe zadanie, a błędy są częścią procesu.

Gdy masz dobrą praktyczną wiedzę na temat kodu stojącego za WordPressem, możesz zacząć oduczyć się złych praktyk i zacząć studiować wzorce kodowania i zastanawiać się dlaczego robimy to tak, jak robimy.

Przegląd Ważnego Kodu WordPress

WordPress ma wiele “podsystemów”, takich jak pętla, która kontroluje wyświetlane posty, Hooki, które pozwalają modyfikować domyślną funkcjonalność, różne APIs i oczywiście motywy i wtyczki. Przedstawię krótkie wprowadzenie do niektórych większych systemów, które możesz napotkać.

Włączanie Debugowania

Domyślnie WordPress ukryje wszelkie błędy kodu. Jest to pożądane w środowisku produkcyjnym, ale może prowadzić do dwóch problemów podczas rozwoju. Jeśli popełnisz błąd inny niż krytyczny, nie otrzymasz żadnych komunikatów o błędach, a Twój kod albo nic nie zrobi, albo nie przyniesie oczekiwanego rezultatu.

Drugą kwestią jest biały ekran śmierci. Brak komunikatów o błędach, tylko biały ekran bez dostępu do przodu lub zaplecza. Aby upewnić się, że tak się nie stanie, należy włączyć debugowanie, które będzie wyświetlać komunikaty o błędach.

Można to zrobić edytując wp-config.plik php w katalogu głównym instalacji WordPress. Znajdź linię, która zawiera: define (‘WP_DEBUG’, false ); i zmień false na true. To wszystko.

Motywy Dziecięce

Motywy potomne są osobnymi motywami, które są oparte na motywie nadrzędnym. Dziedziczą wszystko z motywu nadrzędnego, o ile nie określono inaczej. To jest tylko bezpieczny sposób aby zmodyfikować motyw. Jak wspomniałem wcześniej, najprostszym sposobem na naukę jest zmodyfikowanie istniejącego motywu. Chciałbym dołączyć to do ” i za pomocą motywu potomnego.”

Jeśli utworzysz motyw potomny na podstawie dwudziestu czternastu, nadal możesz dostosować go do własnych upodobań, ale możesz również zaktualizować motyw bez utraty wszystkich zmian. Jest to coś, o czym należy również pamiętać podczas pracy z klientami. Zawsze – zawsze – Użyj motywu potomnego.

Tworzenie motywu potomnego to pestka. Utwórz nowy folder w katalogu themes i nadaj mu dowolną nazwę. Dla naszego przykładu nazwijmy go “child-theme”. Wewnątrz tego folderu Utwórz styl.funkcje css i A.plik php. Otwórz arkusz stylów i użyj następujących czynności, aby utworzyć motyw potomny:

W powyższym przykładzie możesz użyć wszystkiego, co ci się podoba, jedynym ograniczeniem jest linia zaczynająca się od ” Template.”Musi zawierać nazwę katalogu tematu nadrzędnego.

Podczas korzystania z motywów potomnych reguła jest następująca: za każdym razem, gdy plik jest ładowany, WordPress najpierw szuka go w motywie potomnym. Jeśli nie istnieje, ładowany jest ten sam plik z motywu nadrzędnego. Jedynym wyjątkiem są funkcje.php. Pliki funkcyjne obu motywów są ładowane, najpierw motywu podrzędnego, a następnie motywu nadrzędnego.

W tym momencie możesz przełączyć się na motyw potomny, ale gdy zobaczysz swoją witrynę, będzie ona pozbawiona żadnych stylów. Opierając się na naszej powyższej zasadzie, łatwo jest zrozumieć, dlaczego. Arkusz stylów jest ładowany z motywu podrzędnego, od stylu.css istnieje w szablonie potomnym,ale nie zawiera żadnych informacji o stylu.

Następnym krokiem jest załadowanie stylów motywu nadrzędnego. Można to zrobić, pytając rodzica o arkusz stylów. Nie przejmuj się tym. Możesz skopiować i wkleić poniższy kod do funkcji motywu dziecka.php. Należy tylko pamiętać, że ładuje to style rodzica.

W tym momencie motyw dziecka jest dokładnie taki sam jak motyw rodzica. Możesz teraz zacząć modyfikować rzeczy! Arkusz stylów służy do nadpisywania stylów lub dodawania dodatkowych reguł. Jeśli na przykład chcesz zmodyfikować plik indeksu, wystarczy go utworzyć.

Jeśli utworzysz pusty plik indeksu, każda strona, która będzie go używać, będzie pusta. Wszystkie inne strony będą nadal działać dobrze, ponieważ będą korzystać z motywu nadrzędnego. Możesz albo gwiazdat pisząc własny kod do pliku indeksu lub możesz skopiować i wkleić kod z rodzica i zmodyfikować go.

Wynik tego powinien być następujący: możesz zmodyfikować istniejący motyw do własnych potrzeb, ale nadal możesz zaktualizować motyw nadrzędny lub przełączyć się z powrotem na motyw nadrzędny w dowolnym momencie.

Zapytanie i pętla

Zapytanie to system, który “wie”, które posty pokazać na stronie, a pętla jest częścią, która faktycznie przechodzi przez każdy post i wyświetla je. Na przykład na stronie głównej zapytanie wyszukuje 10 ostatnich postów. Na stronie Archiwum kategorii zapytanie wyszukuje 10 ostatnich postów z danej kategorii. Zapytanie jest nawet używane na pojedynczych stronach, gdzie wyszukuje pojedynczy wpis w bazie danych.

Zapytanie jest coś, co can modyfikuj i używaj do własnych potrzeb, ale na razie skupimy się na domyślnym użyciu, które jest za kulisami. Użyjemy wyniku poprzez pętlę.

Pętla pobiera wszystkie posty zwrócone przez zapytanie i przechodzi przez każdy z nich jeden po drugim. Na niektórych stronach – takich jak pojedyncze strony-jest tylko jeden post. To nadal liczy się jako “zbiór” postów – w tym przypadku zbiór składa się z jednego postu.

Spójrzmy na podstawowy kod pętli i przejdźmy przez nią linia po linii:

Pierwsza linia używa instrukcji if połączonej z funkcją have_posts (), aby dowiedzieć się, czy są jakieś posty zwracane przez zapytanie. Jeśli nie ma żadnych postów, uruchamiamy kod po sekcji else, która powiadamia użytkownika, że nie ma postów.

Jeśli tam are posty używamy pętli PHP. Istnieje kilka typów pętli w PHP. Aby odświeżyć składnię i kilka innych przykładów, zapoznaj się z samouczkiem typów pętli PHP.

W powyższym kodzie używamy pętli while, która ponownie zawiera funkcję have_posts (). Ta funkcja zwraca false, gdy w pętli nie ma żadnych postów lub nie ma więcej posty w pętli, ponieważ wyświetliliśmy je wszystkie.

Wszystko wewnątrz pętli while zostanie wykonane, gdy wartość tej funkcji jest prawdziwa. Tego właśnie potrzebujemy. Gdy tylko wyświetlimy Ostatni post, wartość have_posts () będzie false, więc pętla się kończy.

Wewnątrz pętli stworzyłem bardzo prymitywne wyświetlanie posta za pomocą znaczników szablonów, o których dowiedzieliśmy się wcześniej.

Pętla powinna być używana w dowolnym pliku szablonu motywu, który zawiera listę postów. Szukaj stron, stron pojedynczych postów, stron archiwalnych, pliku indeksu-za każdym razem, gdy wystawiasz posty, użyj pętli!

Zapytania Niestandardowe

Mniej powszechne jest poznawanie niestandardowych zapytań tak wcześnie, ale z mojego doświadczenia wynika, że jest to jedna z najbardziej poszukiwanych funkcji w WordPress. W powyższej sekcji dowiedzieliśmy się, jak możesz wyświetlać posty za pomocą pętli, ale jesteś ograniczony przez to, co jest zwracane domyślnie. Co zrobić, jeśli chcesz wyświetlić nadchodzące powiązane posty w tej samej kategorii pod pojedynczy post? Jest to łatwe dzięki niestandardowemu zapytaniu i pętli.

Możesz utworzyć niestandardowe zapytanie za pomocą klasy WP_Query. Zajęcia są teraz ponad naszymi głowami, ale korzystanie z nich jest dość proste. Oto przykład, który pokazuje zaplanowane posty z określonej kategorii. Możesz użyć tego, aby wyświetlić sekcję “wkrótce w tej kategorii”.

Jak widać, jest to dość proste. Aby to zmodyfikować, możesz dostosować zawartość tablicy $args. Istnieje mnóstwo parametrów, których możesz użyć do ograniczenia postów na podstawie ich publidaty kationów, na podstawie ich autorów, kategorii, pól niestandardowych i innych! Zapoznaj się z dokumentacją WP_Query, aby uzyskać pełną listę.

Teraz, gdy mamy niestandardowe zapytanie, możemy użyć niestandardowej pętli do wyświetlenia zawartości. Wszystko, co musimy zrobić, to przedrostek funkcji have_posts() i the_post() nazwą zmiennej, która zawiera zapytanie i “strzałką”:

Oprócz używania odwołując się do naszego niestandardowego zapytania przy użyciu formatu, o którym wspomniałem powyżej, zauważ, że pominąłem pozostałą część pętli i użyłem listy HTML zamiast div. Ponieważ ta pętla ma na celu wyświetlanie postów pod kompletnym pojedynczym postem, pomyślałem, że najlepiej byłoby nie pokazywać niczego, jeśli nie ma żadnych postów. Ponadto prosta lista z linkami powinna wystarczyć tutaj, aby użytkownicy mogli kliknąć.

Haki

WordPress wykorzystuje pomysłowy system, który pozwala modyfikować podstawowe funkcje. Jeśli jeszcze tego nie wiesz, pozwól mi podkreślić to tak mocno, jak Mogę: pod żadnym pozorem nie powinieneś modyfikować plików core. Oznacza to, że nie można edytować dowolny plik, który jest domyślnie dostarczany z WordPress.

Wiem, że czasami wydaje się, że jest to jedyny sposób, ale nigdy tak nie jest. Wszystko, czego możesz potrzebować, można zrobić za pomocą hooków lub innych metod. Modyfikowanie plików podstawowych jest nie tylko niebezpieczne, ale wszystko, co robisz, zostanie nadpisane przez zaktualizowaną wersję WordPress.

Hooki pozwalają modyfikować sposób działania WordPressa. Występują w dwóch smakach: akcji i filtrach. Akcje pozwalają na uruchomienie własnej funkcji w określonych miejscach w kodzie WordPress. Na przykład za pomocą haka możesz wykonać jedną z własnych funkcji, gdy WordPress publikuje post. Pozwala to na przykład na powiadomienie autora.

Filtry umożliwiają modyfikowanie danych przed ich użyciem. Na przykład, możesz użyć filtra, aby zmodyfikować tekst wyświetlany użytkownikowi, gdy post jest zapisywany. Zamiast “Opublikuj wersję roboczą zaktualizowaną”, możesz zmodyfikować ją, aby powiedzieć ” twoja wersja robocza została zapisana.”

Doskonałym przykładem Hooka akcji jest wp_footer. Ta czynność jest wykonywana tuż przed zamknięciem tagu body tematu. Pozwala na dodawanie własnych rzeczy do dolnej części motywu bez konieczności modyfikowania samego pliku stopki motywu. W funkcjach twojego motywu.php możesz użyć następujących sposobów, aby dodać kod śledzenia do swojej witryny:

Pierwsza linia mówi WordPress, że chcielibyśmy dodać naszą funkcję my_tracking_code () do Hooka wp_footer. Kiedy WordPress ładuje stronę i widzi hak wp_footer, wyszukuje wszystkie powiązane z nim funkcje i wykonuje je. Nasza funkcja dodaje następnie kod śledzenia Google Analytics do stopki.

Stanowi to podstawę działania wtyczek. Jeśli chcesz utworzyć wtyczkę i wkleić tam ten sam kod, nie musisz w ogóle modyfikować swojego motywu. Oznacza to, że nawet jeśli zmienisz swój motyw, kod Google Analytics będzie nadal działał bezproblemowo.

Aby pokazać, jak działają filtry, zmodyfikuj zawartość postu za pomocą jednego. Filtr the_content () jest uruchamiany przed wyświetlaniem treści postu. Jeśli użyjemy Hooka, aby powiązać z nim funkcję, możemy ją zmodyfikować.

Poniższy kod dodaje tekst “sprawdzony” automatycznie po każdym poście (lub dokładniej, za każdym razem, gdy wyświetlana jest pełna treść postu).

Zauważ, że tym razem funkcja otrzymała parametr. Każdy filtr i akcja mogą mieć jeden lub więcej parametrów. Musisz sprawdzić dokumentację, aby zobaczyć, co może zrobić konkretny hook, którego używasz. Na listę działania i filtry polecam odniesienie do działań i odniesienie do filtra lub odniesienie do Haków WordPress Adama Browna.

Czytaj Dalej

Istnieje wiele można dowiedzieć się o WordPress i ogromną wiedzę dostępną za darmo. Zebrałem dla Ciebie kilka zasobów i skategoryzowałem je. Mam nadzieję, że ci się przydadzą. Jeśli natkniesz się na szczególnie świetną stronę internetową, podziel się poniższymi komentarzami.

Dokumentacja WordPress

Pełne Kursy

  • Codecademy-Codecademy ma interaktywne zajęcia dla wielu języków
  • Treehouse-niesamowite filmy na różne tematy związane z kodowaniem
  • Tuts+ – świetne kursy na wiele różnych tematów

Nauka o PHP

  • Podręcznik PHP-oficjalna dokumentacja PHP
  • Codecademy – interaktywny pełny Tutorial PHP
  • W3Schools-świetny kompletny poradnik PHP
  • Tizag-kolejny obszerny poradnik PHP
  • Książki PHP-świetne książki PHP, szczególnie polecam książki O ‘ Reilly i Apress

HTML, CSS i Javascript

  • W3Schools-W3Schools ma pełne samouczki do wszystkich tych języków oraz wiele więcej
  • Amazon Books-Amazon ma mnóstwo książek na każdy język lub wszystkie trzy na raz
  • HTML 5 Doctor-świetne miejsce, aby dowiedzieć się o nowych tagach i subtelnościach HTML5

Uzyskiwanie Pomocy

Zaawansowane Tematy

  • Sass-CSS z supermocami
  • LESS-CSS z obsługą zmiennych i funkcji
  • OOP PHP-obiektowe PHP
  • Samouczek SQL-dowiedz się, jak samodzielnie odpytywać bazę danych
  • Laracasts-nowoczesne tutoriale PHP i Laravel
  • Koala-darmowy, wieloplatformowy kompilator kodu
  • Prepros-Premium, wieloplatformowy kompilator kodu
  • CodeKit – mój ulubiony kompilator kodu OSX
  • Grunt-darmowy, oparty na terminalu kompilator kodu

Strony do śledzenia

 

Zdjęcie kredyt: James Cridland.