WordPress daje możliwość łatwego dodawania niestandardowych typów postów i taksonomii za pomocą prostego kodu w funkcjach.plik php, lub za pomocą wtyczki jak CustomPress. Oznacza to, że możesz szybko zmienić swoją witrynę WordPress w dość dobrze funkcjonalny CMS.

Jedynym problemem jest to, po wyjęciu z pudełka, WordPress nie automatycznie pobiera nowo utworzone niestandardowe typy postów i dodaje je do stron archiwalnych dla istniejących taksonomii “kategorie” lub ” tagi.’

Oznacza to, że jeśli utworzyłeś niestandardowy typ postu o nazwie “filmy” i użyłeś rodzimej taksonomii WordPress “kategoria” do kategoryzacji i zamówienia tego niestandardowego typu postu, po prostu przejście do archiwum dla tej kategorii nie pokaże niestandardowego typu postu na liście postów dla tego archiwum.

Na przykład utworzyłeś witrynę z recenzjami filmów i użyłeś standardowych kategorii i tagów WordPress z tym niestandardowym typem postu, dzięki czemu możesz powiązać te recenzje z innymi postami lub stronami. Powiedzmy, że zdecydowałeś się użyć kategorii ” dramat.”Przejście do archiwum kategorii dla dramat, czyli http://yoursite.com/category/drama nie pokaże niestandardowego typu postu, który właśnie dodałeś-nawet jeśli wybrałeś kategorię dramatu.

Jest to frustrujące dla tych, którzy zadają sobie trud, aby dodać niestandardowy typ postu, taksonomie, dodać treść, a następnie dowiedzieć się, że nie wyświetla się poprawnie.

Niektórzy nazwaliby to błędem, ale programiści w WordPress utrzymują, że sortowanie archiwów dotyczy zwykłych typów postów, dla których utworzono WordPress, a dodanie tej funkcjonalności dla niestandardowych typów postów wymaga niestandardowego kodu. I rzeczywiście tak jest.

Tak więc, jeśli chcesz, aby Twoje niestandardowe typy postów pojawiały się w aukcjach archiwalnych dla standardowych tagów i kategorii witryny, możesz dodać następujący kod do swoich funkcji.plik php:

function add_custom_types_to_tax ($query ) {
if (is_category () / / is_tag () & & empty( $query->query_vars['suppress_filters'])) {

// Pobierz wszystkie typy postów
$post_types = get_post_types();

$query- > set ('post_type', $post_types );
return $ query;
}
}
add_filter ('pre_get_posts', 'add_custom_types_to_tax');

Jeśli chcesz dodać tylko określone typy postów do listy tagów i kategorii, możesz zastąpić linię:

$post_types = get_post_types();

z:

$post_types = array( 'post', 'your_custom_type');

Jeśli chcesz przeczytać więcej o różnicy między niestandardowymi typami postów, niestandardowymi polami i niestandardowymi taksonomiami, zainteresuje cię ta seria postów tutaj WPMU.org.

Tagi:

You May Also Like

Jak naprawić nieprawidłowy błąd JSON w WordPress (Przewodnik dla początkujących)

W artykule: Co powoduje błąd “nieprawidłowa odpowiedź JSON” w WordPress?1. Sprawdź adresy…

Jak naprawić błąd krytyczny w WordPress (krok po kroku)

W artykule: Co To jest błąd krytyczny w WordPress?Co powoduje krytyczny błąd…

Jak zmienić kolor linku w WordPress (poradnik dla początkujących)

W artykule: Dlaczego Linki Są Ważne?Jak dodawać linki w postach i stronach…

9 Najlepsze Darmowe Wtyczki WordPress Author Bio Box

W artykule: 1. Simple Author Box2. Branda3. Autor postu WP4. Author Bio…