Przewodnik dla początkujących po PHP w WordPress

Opublikowany: 2013-03-24

WordPress używa różnych typów kodu do uruchamiania oprogramowania.

PHP, CSS, HTML i JavaScript to 4 różne języki kodu, które znajdziesz w podstawowych plikach WordPress.

PHP to najpotężniejszy kod, który uruchamia podstawowe pliki WordPress, wszelkie zainstalowane wtyczki i aktywny motyw.

PHP to znacznie więcej niż funkcje niestandardowe, jednak funkcje niestandardowe są szeroko stosowane podczas dostosowywania i projektowania witryn WordPress.

Gdzie wstawić kod PHP

Możesz umieścić swój kod php bezpośrednio w plikach szablonów motywów podrzędnych lub w pliku functions.php motywów.

Innym rozwiązaniem jest zainstalowanie wtyczki hook, takiej jak Genesis Simple Hooks, która przydaje się, jeśli chcesz dodać tylko kilka małych linijek kodu HTML, Text lub PHP w określonej lokalizacji, w której twój motyw używa hooków.

Podczas dodawania kodu PHP do lokalizacji zaczepienia za pomocą wtyczki, upewnij się, że owijasz PHP w otwierające i zamykające znaczniki PHP. Przykład:

 <?php echo "Output Text Using PHP in a Themes Hook Locations"; ?>

Aby uniknąć nadużywania plików szablonów kodem i przechowywać cały kod w jednym miejscu, najlepszym rozwiązaniem jest utworzenie motywu podrzędnego i dodanie pliku funkcji dla całego kodu niestandardowego.

W ten sposób całe niestandardowe kodowanie nie zostanie utracone podczas aktualizacji struktury motywu nadrzędnego lub podstawowych plików WordPress.

Otwieranie i zamykanie tagów PHP

Kod PHP zawsze zaczyna się od <?php i kończy na ?>

Jeśli umieszczasz kod PHP w plikach szablonów, zawsze będziesz musiał dodać te otwierające i zamykające znaczniki PHP.

Biorąc pod uwagę, że dodawanie PHP bezpośrednio do plików nie jest najlepszą praktyką, nie musisz dodawać tych tagów do każdego bloku kodu, który piszesz w pliku funkcji. Powodem tego jest to, że plik funkcji będzie już zawierał otwierający tag PHP na początku, a czasami także na końcu pliku, w zależności od tego, jak zakodowany jest motyw.

Po prostu dodajesz kod PHP po otwierającym tagu PHP.

Gdzie dodać swój kod PHP?

Przykład pliku funkcji motywu nadrzędnego:

plik funkcji php

Powyższy zrzut ekranu pokazuje sekcję pliku funkcji motywu Woo, którego możesz użyć do dodania niestandardowego kodu php dla funkcji niestandardowych. Motywy Woo zawierają strukturę Woo w każdym motywie, podczas gdy motywy potomne StudioPress są budowane w oparciu o oddzielną strukturę o nazwie Genesis.

Motywy potomne, takie jak oferta StudioPress, zawierają plik functions.php do niestandardowego kodowania. W ten sposób nie musisz dodawać ani edytować kodu PHP w motywie nadrzędnym lub frameworku motywów, którym w tym przypadku jest Genesis.

Możesz także użyć wbudowanego edytora plików znajdującego się pod zakładką Wygląd na pulpicie nawigacyjnym, jednak nie jest to najlepsza praktyka.

Edycja kodu PHP

Wybierz swój ulubiony edytor tekstu/kodu i zawsze twórz kopie zapasowe plików, które edytujesz, na wypadek popełnienia błędu.

Wyświetlanie tekstu przy użyciu PHP

Jeśli chcesz po prostu wypisać tekst za pomocą kodu php, piszesz kod w ten sposób:

 <?php echo "Howdy Folks!"; ?>

echo jest używane, gdy chcesz wypisać tekst, a ten kod wypisze tekst Witaj ludzie!

Ale gdzie kod wyprowadzi tekst?

Jeśli umieścisz ten kod w swoich motywach functions.php, wyświetli on tekst na górze każdej strony w Twojej witrynie.

Jeśli umieścisz kod w określonej lokalizacji w określonym pliku szablonu, takim jak twój footer.php, wyświetli tekst w stopce. Mało tego, zawsze wyświetli ten tekst za każdym razem, gdy strona się ładuje.

Lepszym sposobem określenia, kiedy kod powinien zostać wykonany w celu wyprowadzenia tekstu, jest użycie funkcji.

A lepszym sposobem określenia lokalizacji, w której wyświetlany jest tekst, jest użycie haczyków WordPress, a jeszcze lepiej, haczyków motywów.

Biorąc pod uwagę fakt, że dodanie kodu PHP do plików szablonów nie jest wydajnym sposobem wykorzystania kodu PHP do dostosowywania, musisz dodać ten kod do funkcji i dołączyć zaczep, aby określić dokładną lokalizację, w której treść wyświetla się w motywie.

Przyjrzyjmy się najpierw użyciu podstawowych funkcji niestandardowych, a następnie przyjrzyjmy się, których zaczepów użyć do określenia lokalizacji wyświetlania tekstu.

Funkcje

Napiszemy bardzo podstawową funkcję niestandardową, która wykona kod, który wypisuje tekst, gdy strona ładuje się w przeglądarce, tylko wtedy, gdy zostanie wywołana za pomocą funkcji.

Pierwszym krokiem jest utworzenie własnej funkcji i nadanie jej nazwy, która opisuje, co będzie robić.

 function your_custom_function_name() { echo "Howdy Folks!"; }

Nazwa funkcji

 function display_welcome_text() { echo "Howdy Folks!"; }

Teraz, gdy nazwaliśmy funkcję niestandardową, chcemy wybrać lokalizację, w której będzie wyświetlany (wyprowadzany) tekst powitalny w naszym motywie.

Możesz wykonać kod PHP w dowolnym miejscu swojego motywu za pomocą zaczepów.

Po pierwsze, dodamy hak WordPress, który działa w dowolnym motywie, aby wyświetlić nasz tekst powitalny w stopce.

Hak, którego WordPress używa do stopki to wp_hook, więc wszystko, co musimy teraz zrobić, to dodać go do kodu.

Aby dodać podpięcie do kodu, używamy add_action.

 add_action( 'wp_footer', 'display_welcome_text' ); function display_welcome_text() { echo "Howdy Folks!"; }

Ten kod będzie działał w każdym motywie, ponieważ używa haka WordPress. Ale co, jeśli twój motyw używa własnych haków, takich jak Genesis lub Woo?

Co zrobić, jeśli nie chcesz, aby tekst był wyświetlany w stopce?

Co zrobić, jeśli chcesz, aby wyświetlał tekst przed lub po zawartości Twoich postów?

Następnie musisz użyć odpowiednich haczyków, które oferuje twój motyw.

Ten kod wyświetla tekst powitalny przed treścią posta podczas korzystania z motywu Woo

 add_action( 'woo_post_before', 'display_welcome_text' ); function display_welcome_text() { echo "Howdy Folks!"; }

Ten kod wyświetla tekst powitalny po treści podczas korzystania z motywu potomnego Genesis ze StudioPress.

 function display_welcome_text() { echo "Howdy Folks!"; } add_action( 'genesis_after_content', 'display_welcome_text' );

Ok, ale tekst wyświetla się również na stronach archiwum, takich jak strona główna lub blog, więc jak to odfiltrować?

Dodajemy tag warunkowy.

Możesz wyświetlić przykłady kodu za pomocą tagów warunkowych dla użytkowników Woo Theme i Genesis dla użytkowników motywów potomnych.

Oto jeden przykład:

 add_action( 'genesis_after_content', 'display_welcome_text' ); function display_welcome_text() { if (is_single() && is_active_sidebar( 'after-post' ) ) { echo "Howdy Folks!"; }}

Ten kod wyświetli Twoją zwykłą wiadomość tekstową we wszystkich pojedynczych postach po treści posta.

Dlaczego używamy 2 zamykających nawiasów klamrowych?

Ponieważ musimy zakończyć zarówno funkcję niestandardową, jak i instrukcję warunkową.

Rozwój kodu lokalnego

Zainstaluj WordPress lokalnie, używając instantwp dla Windows lub MAMP dla użytkowników Mac.

W ten sposób możesz popełnić tyle błędów, ile potrzeba, aby nauczyć się pisać kod PHP, dopóki nie zadziała.

Wyświetlanie kodu PHP w WordPress

Z mojego doświadczenia wynika, że ​​najlepszym sposobem wyświetlania i przechowywania fragmentów kodu PHP jest skorzystanie z bezpłatnej usługi online, takiej jak Github Gists.

Przeczytaj więcej o wyświetlaniu kodu PHP w WordPressie.