Custom Post Types WordPress

Custom post types, czyli własne typy wpisów i jak możesz je wykorzystać

W WordPress najczęściej używanym CPT jest segment "portfolio". Oprócz znanych wszystkim typowych rodzajów postów takich jak "strona główna" i "wpis", możesz tworzyć ich nowe warianty, dostosowując je do Twoich potrzeb. O co chodzi z CPT? Jak je zrobić? Co czyni je wyjątkowymi i jakie mogą być przykłady ich zastosowania? Wszystkiego co najważniejsze zostało opisane w tym tekście!

Co to jest WordPress custom post type (CPT)?

Myślisz o rozbudowie własnej witryny? Chcesz zapewnić swoim użytkownikom prosty dostęp do najnowszych informacji o Twojej firmie lub Twojego prywatnego bloga? Potrzebujesz więc czegoś więcej niż tylko "strony" i "postów na niej". Prosty przykład: chcesz wyświetlić przepisy na swojej stronie internetowej, stworzyć słowniczek w którym wyjaśnisz fachowe terminy, udostępnić pliki do pobrania, automatycznie wyświetlić profile pracowników lub organizować seminaria - to wszystko obok standardowych postów na blogu lub aktualnych wiadomości. Sama prezentacja produktu w sklepie online to również przykład zastosowania custom post type. Wyróżniamy dwa rodzaje własnych typów wpisów (CPT):

  • Custom Post Types uporządkowane w kolejności hierarchicznej
  • Custom Post Types w kolejności chronologicznej

Teraz przyjrzymy się dokładniej obu wariantom.

WordPress dashboard zawierający Custom Post Types oraz przepisy
WordPress dashboard zawierający Custom Post Types oraz przepisy

Custom Post Types uporządkowane w kolejności hierarchicznej

Ten wariant CPT w praktyce funkcjonuje identycznie jak "strony" (ang. pages). Podobnie jak one, wszystkie wpisy w panelu sterowania są posortowane alfabetycznie. Dodatkowo, do głównych wpisów można dodawać podpunkty. Tworzą się wtedy podstrony, a ich strony nadrzędne nazywane są odpowiednio "rodzicami" (od angielskiego słowa 'parents').

Ten rodzaj niestandardowych typów postów nadaje się na przykład do przygotowania słowniczka trudnych pojęć na wzór własnej wikipedii, listy sklepów, zaprezentowania kolekcji gitar, stworzenia listy pracowników - do czego tylko zapragniesz.

Custom Post Types w kolejności chronologicznej

Jak pewnie już udało Ci się odgadnąć: w praktyce można je porównać do standardowych wpisów. Publikacje są przechowywane i sortowane w kolejności chronologicznej, tak aby najnowsze z nich zawsze pojawiały się jako pierwsze - tak jak na blogu.

Klasyczne przykłady użycia chronologicznego ułożenia custom post types to przepisy kulinarne, portfolio lub wydarzenia (np. seminaria online). W takim przypadku kluczowe jest zadbanie o Custom Taxonomies (nazwa pochodzi od słowa "taksonomia" - jest bliskoznaczny z terminem „systematyka”)

Custom Taxonomies

Standardowo taksonomiami w kontekście WordPress są zakładki "kategorie" i "słowa kluczowe". Pomagają one w dalszej kategoryzacji zawartości danej strony i umożliwiają jej przeszukiwanie. Takie taksonomie dla niestandardowych typów postów. Na przykład taksonomia "Składniki" w odniesieniu do przepisów, "wokalista/zespół" w kontekście utworów muzycznych lub "wydawca", kiedy mówimy o książkach.

W ten sposób powstają automatycznie generowane strony archiwalne, na których można wyświetlać na przykład wyłącznie książki od konkretnego wydawcy lub tylko te przepisy, w których można użyć kiełków rzodkiewek.

Lista składników sporządzona w oparciu o Custom Taxonomie
Lista składników sporządzona w oparciu o Custom Taxonomie

W jaki sposób mogę stworzyć własny Custom Post Type?

Istnieje wiele różnych sposobów na stworzenie własnych typów wpisów, a co za tym idzie, wiele różnych podejść do ich tworzenia:

  • Wtyczka WordPress, która oferuje gotowe Custom Post Types
  • Szablon WordPress, który zawiera Custom Post Type
  • Wtyczka, za pomocą której można stworzyć własne typy wpisów (CPT)
  • Jeśli potrafisz, możesz samodzielnie stworzyć wtyczkę z autorskim Custom Post Type
  • Projektując szablon tworzysz w nim własny CPT

Jakie są różnicę między każdym z tych rozwiązań? Już tłumaczę:

Wtyczka Custom Post Type

Flagowcami w tym przypadku są wtyczki umożliwiające organizację wydarzenia, eventu-online lub prowadzenia kalendarza spotkań. Zaprogramowanie tego typu elementu nie jest najłatwiejszym zadaniem. Musi on wyświetlać eventy, które mają miejsce w przyszłości, a także tworzyć różne kompozycje ich wyświetlania. Ponadto, posiadają one wiele dodatkowych opcji i zmiennych, takich jak wyświetlanie organizatora, lokalizacji, czasu, mapy itp.

Możesz chcieć wyświetlać różne widoki, np. listę miesięczną lub rzeczywisty kalendarz. Szybko staje się to tak skomplikowane, że nie chce się tego programować samemu, bo zajmuje to zbyt wiele czasu (wierz mi, próbowałem). W ten sam sposób istnieją tysiące wtyczek do przepisów, książek, płyt itp. Warto więc rozejrzeć się, czy nie ma czegoś, co dokładnie spełnia twoje potrzeby i wymagania.

Często tego rodzaju pluginy są wersjami "lite". Korzystając z ich płatnych wersji można rozszerzyć ich zakres funkcji. Przykładem może być użycie wtyczki PayPal, kiedy dokonujesz opłaty za lekcje yogi lub możliwość zmiany jednostki wagi, kiedy korzystasz ze znalezionego w Internecie przepisu. Planując użycie takiej wtyczki, upewnij się czy wersja lite zawiera wszystko to, czego potrzebujesz. Inwestycja w rozszerzoną wersję może być konieczna, jeśli nie chcesz lub nie możesz samodzielnie zaprogramować rozszerzenia.

Właściwa strona WordPress Plugin

Czym byłaby strona WordPress bez Plugins? W oficjalnym katalogu jest ich ponad 50.000. Ale to jest jak przysłowiowe szukanie igły w stogu siana, aby znaleźć te właściwe w tym gąszczu rozszerzeń. Ten artykuł z Torsten Landsiedel pomoże Ci w wyborze.

Motyw Custom Post Type

W tym przypadku najczęściej mamy do czynienia z portfolio, funkcją niezbędną w pracy fotografów, projektantów, agencji, artystów czy copywriterów.

Uważam to za nieco problematyczne: funkcja portfolio jest oczywiście bardzo przydatna, jeśli wiesz, że potrzebujesz dokładnie tego. Warto wziąć pod uwagę jednak to, co się stanie, jeśli za trzy lata zechcesz zmienić wygląd strony? W najgorszym wypadku, wraz ze zmianą motywu, Twój skrupulatnie wypełnione Custom Post Types znikną ze strony - a wszystkie wpisy będziesz mógł/a przenieść do oddrębnego portfolio. Tylko doświadczeni programiści są w stanie korzystać z zaprogramowanej wtyczki w celu pobrania wpisów. W takiej sytuacji należy od początku zaprojektować również archiwum itd.

Zastanowiłbym się więc dwa razy przed podjęciem decyzji o korzystaniu z CPT przez motyw, czy może lepszym wyjściem nie byłoby zainstalowanie dodatkowej wtyczki, która tak naprawdę potrafi to samo. W takie sytuacji nawet po zmianie szablonu możesz zainstalować tę samą wtyczkę, łącznie z zawartością.

Wtyczka, za pomocą której można stworzyć własne typy wpisów (CPT)

Tak, istnieje również takie rozwiązanie. Za pomocą niektórych narzędzi można bez większego wysiłku tworzyć własne typy wpisów, a następnie uzupełnić je o swój tekst. Jeśli więc dokładnie wiesz, czego szukasz, ale Twoje umiejętności programistyczne nie są na tyle zaawansowane, aby samodzielnie napisać kod, instalacja dodatkowej wtyczki to bardzo dobre rozwiązanie.  Za jej pomocą możesz stworzyć listę partnerów, czy mapę sklepów należących do tej samej sieci.

Ponadto można - w połączeniu np. z Advanced Custom Fields - tworzyć najróżniejsze aplikacje. Jak to działa bardzo dobrze opisuje Michael Hörnlimann w swoim artykule Czym są Advanced Custom Fields (ACF) w WordPress . Tak wygląda backend interfejsu użytkownika Plugins Custom Post Type UI:

WordPress Plugin custom post type UI
WordPress Plugin custom post type UI

Stwórz samodzielnie wtyczkę Custom Post Type

Najlepsze rozwiązania są często właśnie najbardziej skomplikowane. Przy tworzeniu własnej wtyczki dla custom post type występują dwa główne problemy: "Jak zaprogramować wtyczkę?" oraz "Jak zaprogramować custom post type?". W uniwersum WordPress istnieje jednak wiele przystępnych instrukcji wyjaśniających kwestie samodzielnego majsterkowania w tym obszarze. Jeśli poświęcisz się temu zadaniu i zrobisz odpowiedni reasearch, będziesz w stanie odnaleźć precyzyjną odpowiedź na Twoje pytanie.

Kiedy już poznasz dostępne ustawienia, możesz stworzyć custom post type wedle własnego pomysłu. Jeśli potrafisz również tworzyć szablony z uwzględnieniem custom post type, to Twoje możliwości są nieograniczone. W połączeniu z kreatorem Gutenberg będziesz w stanie tworzyć wyjątkowe i atrakcyjne publikacje.

Programowanie custom post types
Programowanie custom post types

Utwórz CPT projektując szablon

Dla jasności: custom post type może stanowić również część motywu strony WP. Jednak nie polecam tego rozwiązania, ponieważ w momencie zmiany szablonu, Twój CPT zostanie usunięty wraz z nim. Jeśli Twoje umiejętności Ci na to pozwolą możesz oczywiście manualnie dołączyć je do nowego wyglądu strony. Możesz również zaoszczędzić swój czas i użyć wtyczki.

W witrynie Theme można zaprojektować widoki archiwum CPT i pojedynczego widoku CPT, jeśli w ogóle wymagają dostosowania. W przypadku Plugin jest to o wiele bardziej skomplikowane. Ale dzięki Gutenberg możesz przynajmniej w dużym stopniu dostosować swoje pojedyncze widoki. Za pomocą prostego Plugin jak Duplicate Post możesz zduplikować swoje wpisy i dostosować je do nowego wpisu.

Przykłady Custom Post Types

Słowniczek dla celów SEO

Nie kłóć się ze mną, czy tworzenie takiej kolekcji ma sens z punktu widzenia SEO. Nie wiem, czy to ma sens, czy nie, bo nie jestem ekspertem od SEO.

Ideą przyświecającą powstaniu tej listy było umieszczenie na stronie jak największej liczy tematycznie związanych z nią terminów, tak aby pojawiały się one w wynikach wyszukiwania, a także zwiększały ich trafność poprzez zamieszczone linki wewnętrzne.

Wdrożyłem ten wymóg z zastosowaniem hierarchicznego ułożenia CPT dla poszczególnych haseł. Dodatkowo, zaprogramowałem listę w ten sposób, aby między poszczególnymi literami alfabetu występował 'podtytuł'. Jest to przykład, który może mieć wiele zastosowań:

'Słowniczek' w WordPress
'Słowniczek' w WordPress

Kalendarz terminów dla szkoły dla psów

Klasyczny przykład palnnera, w którym nanosimy terminy zajazdów i warsztatów, które odbędą się w najbliższej przyszłości. Opiekunowie psów mogą wybrać dogodny dla siebie termin i zarezerwować miejsce na konkretnym spotkaniu.

Przekonałem się o tym dzięki Plugin Events Manager. Daje to wiele możliwości - właściwie trochę za dużo jak na tak "proste" zadanie. Ale programowanie go samodzielnie byłoby w tym przypadku zbyt pracochłonne.

Terminarz WordPress
Terminarz WordPress

Osobisty zbiór przepisów

Sam całkiem niedawno stworzyłem dla siebie chronologiczny, CPT z myślą o stworzeniu własnej 'książki kulinarnej'. Istnieją taksonomie do rozpisania składników, resztę stworzyłem przy użyciu Gutenberga . Projektując mój blog zdecydowałem się na widok strony archiwalnej.

Oczywiście, równie dobrze mógłbym pokusić się o użycie wtyczek, ale robiąc ten projekt, chciałem zrealizować go dokładnie tak, jak wyobrażam sobie moją wymarzoną stronę z przepisami. Sądzę, że gdybym zdecydował się na założenie bloga podróżniczego lub poświęconego fotografii, wyglądałby on podobnie do mojej e-książki kucharskiej.

przepis na niestandardowy typ postu
Przepiśnik WP

Obszar pobierania w WordPress

W tym zleceniu klient potrzebował prostego narzędzia do chronologicznego zamieszczania plików do pobrania w backendzie. Wgrywanie plików PDF odbywa się w tym przypadku poprzez Advanced Custom Fields, a ja musiałem zająć się tym, aby WordPress do automatycznie wyświetlał pierwszą stronę każdego pliku jako zrzutu ekranu. Za pomocą taksonomii "obszary" i "słowa kluczowe" użytkownicy mogą dodatkowo filtrować pobrane pliki.

Obszar pobierania w WordPress
Obszar pobierania w WordPress

Moje wnioski na temat Custom Post Types

Własne typy wpisów pozwalają na użytkowanie WordPressa na wiele sposobów i wprowadzanie ulepszeń na Twojej stronie. Za pomocą odpowiednich narzędzi można szybko i samodzielnie tworzyć własne typy postów. Ważna dla użytkowników zawartość może być prezentowana w postaci atrakcyjnych stron archiwalnych lub finezyjnie zaprojektowanych pojedynczych stron.

Automatycznie tworzone strony archiwum umożliwiają filtrowanie i wyszukiwanie według typu postu. Taksonomie rozszerzają funkcje CPT, tworząc automatycznie strony archiwalne dla odpowiednich terminów taksonomii. Masz więcej fajnych przykładów? Daj mi znać w komentarzach.

Twoje pytania dotyczące Custom Post Types

Czy masz pytania do Filipa? Albo o możliwościach Custom Post Types? Czekamy na Twój komentarz. Chcesz być informowany o nowych wpisach w WordPressie? Obserwuj Raidboxes na TwitterzeFacebooku lub poprzez nasz Newsletter.

Spodobał Ci się ten artykuł?

Zostawiając opinię pomożesz nam udoskonalać publikowane przez nas treści.

Napisz komentarz

Twój adres e-mail nie zostanie opublikowany. Pola wymagane oznaczone są *.