Wtyczki WordPressa to narzędzia, pozwalające zrobić z tym systemem dosłownie wszystko. Dzięki nim możesz dodać dowolną funkcję, rozszerzającą podstawowe zasady działania Twojej witryny. Istnieje jednak jedno pytania, które powinieneś sobie zadać przed rozpoczęciem tworzenia własnego, wymyślnego pluginu.
Czy w bogatym i ogólnodostępnym repozytorium WordPressa nie ma wtyczki, która jest mi potrzebna?
Jest wielce prawdopodobne, że właśnie w tym miejscu możesz zakończyć czytanie niniejszego wpisu. ;-)
Twoja pierwsza wtyczka do WordPressa
W zasadzie, abyś mógł cieszyć się swoją pierwszą, działającą wtyczką, wystarczy dokładnie jeden plik. Warto nazwać go tak, aby dla jego potencjalnego użytkownika (także Ciebie) był łatwy do odnalezienia w katalogu wp_content/plugins.
Opis wtyczki
Utwórz katalog o nazwie hello_webroad, a w nim plik hello_webroad.php.
Aby WordPress wiedział, że ma do czynienia z wtyczką, główny jej plik musisz odpowiednio opisać za pomocą specjalnego komentarza. Wygląda on w następujący sposób:
1 2 3 4 5 6 7 8 9 10 | <?php /* Plugin Name: Hello WEBroad Plugin URI: https://webroad.pl/cms/5847-tworzenie-wtyczki-wordpress-1 Description: Moja pierwsza wtyczka przygotowana dla WordPressa! Version: 1.0 Author: Michal Kortas Author URI: https://webroad.pl */ ?> |
Jedynym wymaganym polem jest Plugin Name, pozostałe możesz pominąć, jednak zalecam Ci dokładne opisywanie każdej wtyczki.
Licencja wtyczki
Drugim, równie ważnym elementem, jest określenie licencji, na jakiej udostępniasz plugin w sieci. Jeśli chcesz tworzyć je w zgodzie z GPL, dopisz w komentarzu dwie dodatkowe linie.
1 2 3 4 5 6 | <?php /* License: GPLv3 License URI: http://www.gnu.org/licenses/gpl-3.0.html */ ?> |
Włączanie wtyczki
Tak w zasadzie, jeśli tylko przekopiujesz katalog do wp_content/plugins, możesz uruchomić swoją wtyczkę.
Oczywiście Twoja wtyczka nie robi jeszcze nic poza tym, że istnieje.
Tworzenie pierwszej funkcji
Tworzony dzisiaj plugin nie będzie jak na razie zmieniał Świata. Ma wyświetlić tylko i wyłącznie krótki tekst. Przygotuj zatem odpowiedzialną za to funkcję.
1 2 3 4 5 | <?php function show_hello() { echo 'Hello WEBroad! :-)'; } ?> |
Używanie haków
Dzięki tzw. hakom możemy doczepiać się ze swoją akcją do zdefiniowanych wcześniej miejsc.
W chwili obecnej nie będę rozwlekać tego tematu, dlatego musisz mi zaufać. :-)
Nad stworzoną przed chwilą funkcją wywołaj funkcję dopinającą add_action().
1 2 3 | <?php add_action('the_content', 'show_hello'); ?> |
Po odświeżeniu strony zobaczysz, że wszystkie teksty wpisów zostały zamienione na Twój własny.
Stworzyłeś więc mało użyteczną, ale jednak swoją własną wtyczkę, która działa!
O wtyczkach słów kilka
Nie zawracałem Ci głowy opisując możliwości wtyczek na samym początku, gdyż lepiej podchodzić do tematu praktycznie. Jeżeli jednak chciałbyś dowiedzieć się czegoś więcej, poświęć chwilę na przeczytanie poniższych informacji.
Rodzaje wtyczek
W ekosystemie WordPressa rozróżniamy trzy rodzaje wtyczek.
Zwykłe wtyczki
To te, których używasz praktycznie na co dzień. Zwykłą wtyczką jest również stworzona przez Ciebie Hello WEBroad. Jeśli usystematyzujemy wiedzę, wychodzi na to, że takie dodatki służą głównie do rozszerzania możliwości WordPressa poprzez dodawanie nowych funkcji.
Wtyczki dla rdzenia
Zajmują się nadpisywaniem rdzennych funkcji WordPressa. Należy obchodzić się z nimi nadzwyczaj ostrożnie. Jakakolwiek ingerencja w nie może spowodować błędy w działaniu Twojej witryny. Aby nadpisać rdzenną funkcję, należy w głównym katalogu wp-content umieścić plik PHP, który przejmie rolę domyślnego.
Jedną z bezpieczniejszych wtyczek tego rodzaju jest maintenance.php, dzięki której możesz w prosty sposób podmienić domyślny komunikat o przerwie technicznej, związanej z aktualizacją systemu lub jego składowych.
Wtyczki wymagane
Trzecim rodzajem są wtyczki wymagane, które możesz przechowywać w katalogu wp-content/mu-plugins. Charakteryzują się tym, że w żaden sposób nie można ich wyłączyć z poziomu panelu administracyjnego WordPressa. Jedyną opcją, która wyłączy wtyczkę, jest jej fizyczne skasowanie z serwera.
Zastępowanie wtyczek plikiem functions.php
Tworząc nową wtyczkę powinieneś zastanowić się, czy nie warto będzie użyć pliku functions.php zamiast osobnego pliku pluginu.
Zasada jest prosta. Jeśli wiesz na pewno, że dana funkcjonalność będzie stricte związana z jednym, konkretnym szablonem, możesz śmiało wykorzystać plik functions.php. Natomiast jeżeli zależy Ci na takim przywiązywaniu się i chciałbyś swojemu pluginowi zapewnić pewną, łatwiejszą przenaszalność, dobrą drogą jest właśnie wtyczka.
Twórz wtyczki również wtedy, kiedy chcesz pozwolić użytkownikowi na korzystanie z ustawień. Ustawienia takie możesz stworzyć w prosty sposób, lecz dzięki temu zwiększysz wygodę obsługi swojego pluginu.
Widżety do wtyczek
Twoja wtyczka może również dostarczać użytkownikowi możliwość umieszczania na stronie widżetów. Taki widżet możesz wstawić w specjalnie przeznaczonych do tego miejscach w szablonie (sidebary itp.). Przygotowywania ich z pewnością Cię nauczę.
Typy wpisów i taksonomie
Standardowym przykładem taksonomii są tagi i kategorie. W prosty jednak sposób możesz rozszerzyć ich dziedzinę. To samo dotyczy rodzajów wpisów. Zamiast standardowych wpisów możesz zechcieć umieszczać inne rodzaje treści, na przykład linki w blogrollu czy pojedyncze strony pomocy w tworzonej bazie wiedzy.
Taksonomie i typy wpisów dobrze jest wpiąć do systemu pluginem. Zwiększy to ich zdolność migracji pomiędzy szablonami jak i witrynami, bez konieczności przeszukiwania i kopiowania kodu źródłowego.
Zakończenie
Na dzisiaj to już wszystko. Kolejny wpis pojawi się za kilka dni. Poniżej wstawiłem przycisk, który pozwoli Ci pobrać niewielkie źródło przygotowane powyżej. Do usłyszenia!
Tagi: plugin • wtyczka wordpress
No to czekam na kolejny.;)
Napisane bardzo przystępnym językiem, czekam na ciąg dalszy :)
Dziękuję:) Kolejna część już wkrótce. Planuję opublikować wpis w przyszłą środę.
Lekkie opóźnienie spowodowało, że wpis pojawi się jutro rano. Pozdrawiam!
Wszystko prosto i jaśnie! Dziękuję!
Dzięki za to, już wszystko wiem :)
Dzięki
Jest sporo tych wtyczek, samemu staram się zawsze wybierać tylko te absolutnie niezbędne, bo im więcej to strona staje się coraz bardziej toporna. Polecam też zawsze testowanie nowych wtyczek najpierw na localhost komputera to pozwala uniknąć wielu problemów w przyszłości. Localhost przez jakiegoś xampa na przykład postawić jako lustrzane odbicie strony.