Organizowanie treści w twoim WordPressie jest łatwe dzięki kategoriom i tagom. Czasami jednak nie są one wystarczające, aby zorganizować wszystko tak, jak chcesz. W tym miejscu z pomocą przychodzą własne taksonomie.
Dzięki konfiguratorom taksonomicznym możesz tworzyć własne sposoby sortowania i grupowania treści. Daje to większą kontrolę i elastyczność nad sposobem kategoryzacji twoich wpisów, produktów lub innych treści.
W tym przewodniku przeprowadzimy Cię przez proces tworzenia własnych taksonomii w WordPressie, niezależnie od tego, czy korzystasz z wtyczki, czy wolisz zrobić to ręcznie.
Czym jest taksonomia WordPress?
Taksonomia WordPress to sposób na organizowanie grup wpisów i własnych typów treści.
Domyślnie WordPress zawiera 2 taksonomie zwane kategoriami i tagami. Możesz ich używać do organizowania twoich wpisów na blogu.
Jeśli jednak używasz niestandardowego typu treści, kategorie i tagi mogą nie wyglądać odpowiednio dla wszystkich treści.
Można na przykład utworzyć niestandardowy typ treści o nazwie „Książki” i posortować go za pomocą dostosowanej taksonomii o nazwie „Tematy”. Następnie możesz dodać taksonomie tematyczne, takie jak „Przygoda”, „Romans”, „Horror” i inne tematy książek, które chcesz.
Pozwoliłoby to tobie i twoim czytelnikom na łatwe sortowanie i filtrowanie książek według każdego tematu.
Taksonomie mogą być również hierarchiczne, co oznacza, że można mieć główne lub nadrzędne tematy, takie jak „Fikcja” i „Literatura faktu”. Następnie w ramach każdej kategorii można utworzyć podtematy lub kategorie podrzędne.
Na przykład nadrzędna kategoria „Fikcja” może mieć jako kategorie podrzędne kategorie „Przygoda”, „Romans” i „Horror”.
Teraz, gdy już wiesz, czym jest dostosowana taksonomia, dowiedzmy się, jak tworzyć własne taksonomie w WordPress.
Chociaż tworzenie własnych taksonomii jest potężne, jest wiele do omówienia. Aby pomóc w prawidłowej konfiguracji, stworzyliśmy łatwy spis treści poniżej:
Gotowy? Zaczynamy!
Tworzenie własnych taksonomii za pomocą wtyczki (łatwy sposób)
Pierwszą rzeczą, którą musisz zrobić, to zainstalować i włączyć wtyczkę Custom Post Type UI. Aby uzyskać szczegółowe informacje, zapoznaj się z naszym przewodnikiem na temat instalacji wtyczki WordPress.
W tym poradniku utworzyliśmy już własny typ treści i nazwaliśmy go „Książki”. Upewnij się więc, że masz utworzony własny typ treści, zanim zaczniesz tworzyć taksonomie.
Następnie przejdźmy do CPT UI ” Add/Edit Taxonomies w obszarze administracyjnym WordPress, aby utworzyć twoją pierwszą taksonomię.
Na tym ekranie należy wykonać następujące czynności:
- Utwórz uproszczoną nazwę twojej taksonomii (zostanie ona umieszczona w adresie URL).
- Utwórz etykietę w liczbie mnogiej
- Utwórz pojedynczą etykietę
- Automatyczne wypełnianie etykiet
Twoim pierwszym krokiem jest utworzenie uproszczonej nazwy dla taksonomii, która będzie używana w adresie URL i w zapytaniach wyszukiwania WordPress. Należy pamiętać, że uproszczona nazwa może zawierać tylko litery i cyfry i zostanie automatycznie przekonwertowana na małe litery.
Następnie wypełnisz nazwy w liczbie mnogiej i pojedynczej dla twojej dostosowanej taksonomii.
Stamtąd możesz kliknąć odnośnik „Wypełnij dodatkowe etykiety na podstawie wybranych etykiet”. Jeśli to zrobisz, wtyczka automatycznie wypełni pozostałe pola etykiet.
Teraz możesz przewinąć w dół do sekcji „Dodatkowe etykiety”.
W tym obszarze możesz podać opis twojego typu treści.
Etykiety te są używane w Twoim kokpicie WordPress podczas edycji i zarządzania treścią dla danej dostosowanej taksonomii.
Następnie mamy opcję ustawień. W tym obszarze można skonfigurować różne atrybuty dla każdej tworzonej taksonomii. Każda opcja ma opis szczegółowo opisujący jej działanie.
Na powyższym zrzucie ekranu widać, że zdecydowaliśmy się uczynić tę taksonomię hierarchiczną.
Oznacza to, że nasza taksonomia „Tematy” może mieć podtematy. Na przykład temat o nazwie „Fikcja” może mieć podtematy takie jak „Fantastyka”, „Thriller”, „Tajemnica” i inne.
Istnieje wiele innych ustawień w dalszej części twojego ekranu w kokpicie WordPress, ale możesz pozostawić je bez zmian na potrzeby tego poradnika.
Możesz teraz kliknąć przycisk „Dodaj taksonomię” na dole, aby zapisać twoją dostosowaną taksonomię.
Następnie możesz edytować typ treści powiązany z tą taksonomią w edytorze treści WordPress, aby zacząć z niej korzystać.
Ręczne tworzenie własnych taksonomii (z kodem)
Ta metoda wymaga dodania kodu do twojej witryny internetowej WordPress. Jeśli nie zrobiłeś tego wcześniej, zalecamy przeczytanie naszego przewodnika na temat łatwego dodawania fragmentów kodu w WordPress.
Nie zalecamy bezpośredniej edycji twoich plików WordPress, ponieważ każdy drobny błąd może zepsuć całą witrynę. Dlatego zalecamy wszystkim korzystanie z WPCode, najłatwiejszej i najbezpieczniejszej dostępnej wtyczki do fragmentów kodu.
Aby rozpocząć, należy zainstalować i włączyć bezpłatną wtyczkę WPCode. Aby uzyskać szczegółowe instrukcje, zobacz nasz przewodnik krok po kroku, jak zainstalować wtyczkę WordPress.
1. Tworzenie hierarchicznej taksonomii
Zacznijmy od hierarchicznej taksonomii, która działa jak kategorie i może mieć nadrzędne i podrzędne taksonomie.
Po zainstalowaniu i włączaniu WPCode, możesz przejść do Code Snippets ” Add Snippet w twoim kokpicie WordPress.
Z tego miejsca możesz najechać kursorem myszy na „Add Your Custom Code (New Snippet)” i kliknąć „Use Snippet”.
Następnie zostaniesz przeniesiony na stronę „Utwórz fragment kodu własnego”.
Po prostu nazwij swój nowy fragment kodu i wklej poniższy kod do obszaru tekstowego:
//hook into the init action and call create_book_taxonomies when it fires
add_action( 'init', 'create_subjects_hierarchical_taxonomy', 0 );
//create a custom taxonomy name it subjects for your posts
function create_subjects_hierarchical_taxonomy() {
// Add new taxonomy, make it hierarchical like categories
//first do the translations part for GUI
$labels = array(
'name' => _x( 'Subjects', 'taxonomy general name' ),
'singular_name' => _x( 'Subject', 'taxonomy singular name' ),
'search_items' => __( 'Search Subjects' ),
'all_items' => __( 'All Subjects' ),
'parent_item' => __( 'Parent Subject' ),
'parent_item_colon' => __( 'Parent Subject:' ),
'edit_item' => __( 'Edit Subject' ),
'update_item' => __( 'Update Subject' ),
'add_new_item' => __( 'Add New Subject' ),
'new_item_name' => __( 'New Subject Name' ),
'menu_name' => __( 'Subjects' ),
);
// Now register the taxonomy
register_taxonomy('subjects',array('books'), array(
'hierarchical' => true,
'labels' => $labels,
'show_ui' => true,
'show_in_rest' => true,
'show_admin_column' => true,
'query_var' => true,
'rewrite' => array( 'slug' => 'subject' ),
));
}
Pamiętaj, aby zmienić „Rodzaj kodu” na „Fragment kodu PHP” i przełączyć przełącznik na „Aktywny”.
Następnie możesz kliknąć przycisk „Zapisz fragment kodu”.
Nie zapomnij zastąpić nazwy taksonomii i etykiet w fragmencie kodu twoimi własnymi etykietami taksonomii. Zauważysz również, że ta taksonomia jest powiązana z typem treści Książki. Będziesz musiał zmienić to na dowolny typ treści, z którym chcesz go używać.
Następnie należy przewinąć w dół i upewnić się, że opcje „Automatyczne wstawianie” i „Uruchamiaj wszędzie” są wybrane w polu Wstawianie.
Gdy to zrobisz, możesz przewinąć z powrotem do góry i kliknąć przycisk „Aktualizuj”, aby wprowadzić twoje zmiany na żywo.
2. Tworzenie niehierarchicznej taksonomii
Aby utworzyć niehierarchiczny konfigurator taksonomii, taki jak tagi, należy użyć WPCode i wykonać dokładnie te same kroki, co powyżej.
Zamiast tego można użyć tego kodu:
//hook into the init action and call create_topics_nonhierarchical_taxonomy when it fires
add_action( 'init', 'create_topics_nonhierarchical_taxonomy', 0 );
function create_topics_nonhierarchical_taxonomy() {
// Labels part for the GUI
$labels = array(
'name' => _x( 'Topics', 'taxonomy general name' ),
'singular_name' => _x( 'Topic', 'taxonomy singular name' ),
'search_items' => __( 'Search Topics' ),
'popular_items' => __( 'Popular Topics' ),
'all_items' => __( 'All Topics' ),
'parent_item' => null,
'parent_item_colon' => null,
'edit_item' => __( 'Edit Topic' ),
'update_item' => __( 'Update Topic' ),
'add_new_item' => __( 'Add New Topic' ),
'new_item_name' => __( 'New Topic Name' ),
'separate_items_with_commas' => __( 'Separate topics with commas' ),
'add_or_remove_items' => __( 'Add or remove topics' ),
'choose_from_most_used' => __( 'Choose from the most used topics' ),
'menu_name' => __( 'Topics' ),
);
// Now register the non-hierarchical taxonomy like tag
register_taxonomy('topics','books',array(
'hierarchical' => false,
'labels' => $labels,
'show_ui' => true,
'show_in_rest' => true,
'show_admin_column' => true,
'update_count_callback' => '_update_post_term_count',
'query_var' => true,
'rewrite' => array( 'slug' => 'topic' ),
));
}
Powiadomienie o różnicy między tymi dwoma fragmentami kodu. W funkcji register_taxonomy(
) wartość argumentu hierarchical
jest ustawiona na true
dla taksonomii podobnych do kategorii i false
dla taksonomii podobnych do tagów.
Ponadto w tablicy etykiet dla niehierarchicznych taksonomii dodaliśmy wartość null
dla argumentów parent_item
i parent_item_colon
, co oznacza, że nic nie będzie wyświetlane w interfejsie użytkownika, aby utworzyć element nadrzędny lub taksonomię, która może mieć podtematy.
Ponownie, pamiętaj, aby edytować kod, aby dołączyć własne etykiety taksonomii.
Wyświetlanie własnych taksonomii
Teraz, gdy utworzyliśmy własne taksonomie i dodaliśmy kilka taksonomii, twój motyw WordPress nadal nie będzie ich wyświetlał.
Aby je wyświetlić, musisz dodać kod do twojego motywu WordPress lub motywu potomnego. W szczególności kod ten należy dodać do plików szablonów, w których mają być wyświetlane taksonomie.
Możesz ręcznie dodać ten fragment kodu do plików twojego motywu, takich jak single.php
, content.php
, archive.php
lub index.php
. Aby dowiedzieć się, który plik należy edytować, możesz zapoznać się z naszym przewodnikiem po hierarchii szablonów WordPress, aby uzyskać instrukcje krok po kroku.
Jeśli jednak nie zostanie to zrobione poprawnie, może to zepsuć twoją witrynę, dlatego ponownie zalecamy korzystanie z bezpłatnej wtyczki WPCode.
Będziesz musiał dodać następujący kod w miejscu, w którym chcesz wyświetlać taksonomie:
<?php the_terms( $post->ID, 'topics', 'Topics: ', ', ', ' ' ); ?>
Następnie wystarczy wykonać powyższe kroki, aby wkleić fragment kodu do WPCode.
Natomiast w sekcji Wstawianie należy kliknąć listę rozwijaną obok opcji „Lokalizacja” i wybrać miejsce wyświetlania taksonomii, np. przed wpisem, po nim lub nawet między akapitami.
Na potrzeby tego poradnika wybierzemy opcję „Wstaw po wpisie”.
Na poniższym obrazku możesz zobaczyć, jak będzie wyglądać Twoja witryna na żywo.
Dodawanie taksonomii dla własnych wpisów
Teraz, gdy wiesz już, jak tworzyć własne taksonomie, wykorzystajmy je na przykładzie.
Utworzymy taksonomię i nazwiemy ją „Non-fiction”. Ponieważ mamy własny typ treści o nazwie „Książki”, jest to podobne do tworzenia zwykłego wpisu na blogu.
W twoim kokpicie WordPress możesz przejść do zakładki Książki ” Tematy, aby dodać taksonomię lub temat.
Na tym ekranie widoczne są 4 obszary:
- Nazwa
- Uproszczona nazwa
- Nadrzędny
- Opis
W polu nazwy wpisz taksonomię, którą chcesz dodać. Możesz pominąć uproszczoną nazwę i podać opis tego konkretnego terminu.
Na koniec kliknij przycisk „Dodaj nowy temat”, aby utworzyć twoją nową taksonomię.
Twoja nowo dodana taksonomia powinna pojawić się w prawej kolumnie.
Teraz masz nową taksonomię, której możesz używać w swoich wpisach na blogu. Możesz również dodawać taksonomie bezpośrednio podczas edycji lub pisania treści w ramach danego typu treści.
Wystarczy przejść do zakładki Książki ” Utwórz wpis.
W edytorze wpisów, w prawej kolumnie znajduje się opcja wyboru lub tworzenia nowych taksonomii.
Po dodaniu taksonomii można przystąpić do publikowania treści.
Wszystkie twoje wpisy wpisane pod taksonomią będą dostępne na twojej witrynie internetowej pod ich własnym adresem URL. Na przykład, wpisy wpisane w temacie „Fikcja” pojawią się pod następującym adresem URL:
https://example.com/subject/fiction/
Dodawanie własnych taksonomii do menu nawigacji
Teraz, gdy utworzyłeś własne taksonomie, możesz chcieć wyświetlić je w menu nawigacyjnym twojej witryny internetowej.
Przejdź do sekcji Wygląd ” Menu i wybierz taksonomie, które chcesz dodać w karcie konfiguratora, która pojawi się po lewej stronie ekranu.
Nie zapomnij kliknąć przycisku „Zapisz menu”, aby zapisać twoje ustawienia.
Możesz teraz przejść na Twoją witrynę internetową, aby zobaczyć Twoje menu w działaniu.
Aby uzyskać więcej informacji, możesz zapoznać się z naszym przewodnikiem krok po kroku, jak utworzyć menu rozwijane w WordPress.
Film instruktażowy
Jeśli wolisz obejrzeć i dowiedzieć się, jak tworzyć własne taksonomie, zapoznaj się z naszym filmem instruktażowym:
Bonus: Rozwiń taksonomie WordPressa
Własne taksonomie pozwalają na wiele rzeczy. Możesz na przykład wyświetlać je w widżecie na panelu bocznym lub dodawać ikonki obrazków dla każdej taksonomii.
Możesz także tworzyć własne taksonomie i pozwolić klientom na subskrybowanie poszczególnych taksonomii. W ten sposób twoi czytelnicy będą otrzymywać tylko aktualizacje dotyczące konkretnych treści, które są dla nich ważne.
Jeśli chcesz dostosować układ twoich własnych stron taksonomii, możesz sprawdzić SeedProd. Jest to najlepszy kreator stron i motywów WordPress typu „przeciągnij i upuść”, który umożliwia tworzenie własnych układów bez konieczności kodowania.
Aby dowiedzieć się więcej, możesz zapoznać się z naszym artykułem na temat tworzenia własnej strony w WordPress.
Mamy nadzieję, że ten artykuł pomógł ci dowiedzieć się, jak tworzyć własne taksonomie w WordPress. Warto również zapoznać się z naszymi przewodnikami na temat dodawania obrazków taksonomii (ikonek kategorii) w WordPressie oraz prawidłowego zmieniania, przenoszenia i usunięcia kategorii WordPress.
If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.
Jiří Vaněk
Thank you for the clear instructions. I would like to make my own taxonomy for tutorials on the site. This tutorial is great and clear, thanks.
WPBeginner Support
Glad it was helpful
Administrator
Kira
Hello.
I don’t understand this part:
ID, 'topics’, 'Topics: ’, ’, ’, ’ ’ ); ?>
I mean, should I paste exactly that part into my loop-single.php?
I’m using a taxonomy called „writer”
WPBeginner Support
It would depend on where you want to display the terms, normally it would be added to the single.php.
Administrator
Wolfgang
Hi,
I used your article to create a CPT with a hierarchical and a non-hierarchical taxonomy attached to it. I created a few entries and it all seems to be working fine. Both taxonomies display fine in their respective archive pages. One thing I noticed though when I tried to add the taxonomies to the menu was that the non-hierarchical taxonomy was available in the „Add menu item” column but the hierarchical taxonomy was NOT.
Is that an expected behavior? If not what could be going wrong?
Thanks
WPBeginner Support
The most common issues you could check would be that you have published content in the taxonomy and you may want to test adding a different content type to test if it is an issue with the taxonomy or something else.
Administrator
mb
what does this line do
'menu_name’ => __( 'Subjects’ ),
is this in order to add taxonomies to the menu
aditya
hii i try everything but i taxonomy not showing in product. please help me.
WPBeginner Support
You would want to check under your preferences to ensure it is not hidden for your user.
Administrator
Gina Wilson
This tutorial and specifically the part of how to display the custom taxonomy was a lifesaver! I’m very much a beginner and this was very helpful in understanding where I went wrong in my coding.
Thank you!!!
WPBeginner Support
Glad our guide was helpful
Administrator
fengquanli
this is very confident with the custom post ui, thanks very much ,it’s very useful for get them.
WPBeginner Support
Glad our guide was helpful
Administrator
Bruno Oliveira
Awesome tutorial! i have one question. how do i use my new taxonomy slug as permalink like category (/%category%/%year%/%monthnum%/%day%/%postname%/)
I want something like /%custom_taxonomy%/%year%/%monthnum%/%day%/%postname%/
i keep getting 404 error
WPBeginner Support
That is not something WordPress would allow by default and would require some custom coding to set up.
Administrator
vikas
i tried the plugin method , it sucessfully created a new category in custom post type but it is not showing on my posts like tags and other categoties. can you help me with that?
WPBeginner Support
You would want to reach out to the support for your specific theme for customizing the display to include your taxonomy.
Administrator
Richard
I am creating a podcast network where I have multiple podcasts on a single site with episodes under each individual podcast. Would something like this work for that? I really don’t want to go the multi site route.
WPBeginner Support
You can certainly use this should you want or another option would be to create a custom post type depending on your preference.
Administrator
Maria
Hello is possible add the custom taxonomies to a custom product type?
I create a custom product call drinks and i have several taxonomies like country, material and etc
I want when the user click in drinks then only apperas those taxonomies, is this posiible?
WPBeginner Support
You should be able to using the plugin method.
Administrator
Parveen Kaushik
Hi,
Thanks for this article, I am getting 404 page after using this code, can you help me
WPBeginner Support
If you haven’t done so yet, resave your permalinks for the most common solution
Administrator
Mike Smith
this code works great on my site for work. Can you tell me how to add the custom taxonomy into the site’s rss feed?
WPBeginner Support
It would depend on what you are looking for, for a starting point you would want to take a look at our article below:
https://www.wpbeginner.com/wp-tutorials/how-to-make-a-separate-rss-feed-for-each-custom-post-type-in-wordpress/
Administrator
angela
thank you for taking the time to post this, this was the first site that actually explained this and it made sense, haha. im a happy camper now
WPBeginner Support
You’re welcome, glad our guide could help simplify the process
Administrator
Jem
How to show custom taxonomy (checkbox list) in Post editor page like category and tag?
WPBeginner Support
It would depend on which method you used to create the custom taxonomy, if you’re using the plugin you would want to reach out to the plugin’s support to make sure they have show_in_rest set to true for seeing it in the block editor.
Administrator
Jem
No, I am not using any plugin. I have just copy paste your snippet. Its create new taxonomy. But it is not display in post editor page like category, tags display on rightside panel.
Can you please guide me how can I show custom taxonomy in post editor page?
WPBeginner Support
In the register_taxonomy array, you would want to first try adding a new line with the code below:
'show_in_rest’ => true,
Jim Gersetich
The first half of this post is completely useless. the Simple Taxonomy plugin doesn’t work with the current WordPress version, and it hasn’t been updated in four years.
Please try to find another plugin and change that section to go with the new one.
WPBeginner Support
Thank you for letting us know, we’ll certainly take a look at updating this article.
Administrator