Szczegółowe informacje o niestandardowych typach postów w WordPressie.

3 minuty na przeczytanie.
2026-03-14
2026-06-04
2,719
Zarabiam prowizję, gdy robisz zakupy poprzez poniższe linki, bez żadnych dodatkowych kosztów dla Ciebie.

Szczegółowe informacje o niestandardowych typach postów w WordPressie.

Standardowe typy artykułów w WordPress:posti typu stronypageMoże wystarczyć do zarządzania większością treści, ale dla złożonych stron internetowych, które wymagają strukturalnego przedstawienia określonych elementów (np. produktów, portfolio, wydarzeń, zespołów itd.), jego funkcjonalność okazuje się niewystarczająca. Pojawiły się możliwości personalizacji typów artykułów, aby rozwiązać ten kluczowy problem – dzięki temu programiści mogą przekraczać ograniczenia typów “artykułów” i “stron”, tworząc dedykowane interfejsy administracyjne, elementy przedstawienia treści na stronie oraz logikę wyszukiwania dla każdego rodzaju informacji.

Dzięki dostosowaniu typów artykułów można stworzyć osobne interfejsy publikacji dla produktów, przygotować specjalne pola do wpisywania informacji o członkach zespołu, a także ustalić unikalną strukturę adresów URL, metody kategorizacji oraz pliki szablonów. To nie tylko znacznie poprawia wygodę i efektywność zarządzania treścią, ale także stanowi niezbędny element technologiczny przy budowaniu wysoko dostosowanych stron internetowych na platformie WordPress.

Czemu potrzebne są dostosowane typy artykułów?

Używanie własnych typów artykułów umożliwia logiczne oddzielenie różnych rodzajów treści, co przynosi wiele istotnych korzyści.

Polecamy lekturę. Szczegółowa analiza WooCommerce: kompletny przewodnik po tworzeniu skutecznej witryny e-commerce od podstaw.

Realizacja wyraźnego oddzielenia zadań związanych z zarządzaniem treścią

Gdy twoja witryna internetowa zawiera blog, prezentację produktów, ogłoszenia i przypadki sukcesu, a wszystkie te elementy są zarządzane za pomocą standardowego typu “artykuł”, stan systemu administracyjnego staje się chaotyczny. Różne rodzaje treści są mieszane w jednej liście, co utrudnia edycję i wyszukiwanie informacji.

UltaHost – hostingu dla stron WordPress
Gwarancja zwrotu pieniędzy w ciągu 30 dni, nieograniczony przepustowość sieci i dostęp do bazy danych, bezpłatna ochrona przed atakami typu DDoS. Promocja: 50% przy zakupie na 3 lata.

Po stworzeniu osobnych typów “produkty” i “przykłady” administrator może znaleźć ich w menu po lewej stronie interfejsu administracyjnego. Kliknięcie na odpowiedni element menu otworzy interfejs zarządzania, który przypomina interfejs zarządzania artykulami, ale jest zupełnie oddzielony i nie wpływa na działanie drugiego. Taka separacja sprawia, że treści są zorganizowane w sposób jasny i zrozumiały, co znacząco zmniejsza złożoność procesu zarządzania.

Dostosowanie specjalnych poli i metadanych

Standardowe typy artykułów zawierają takie pola jak nagłówek, tekst, opis, kategoria oraz tagi. W przypadku artykułów o produktach mogą być konieczne dodatkowe pola, np. cena, specyfikacje produktu, informacje o dostępności. Artykuły o eventach wymagają natomiast pola dotyczących daty rozpoczęcia i zakończenia wydarzenia, miejsca jego przeprowadzenia itp.

Można łatwo dodać specjalne pola metadanych do określonych typów artykułów za pomocą dodatków, takich jak pola dostosowanych na poziomie zaawansowanym, lub kodu. Te pola są prezentowane w postaci formularzy w tle serwera, a na stronie użytkownika można na nie zyskać dostęp za pomocą tagów szablonów, co umożliwia dogłębne dostosowanie struktury treści.

Stworzenie niezależnej struktury URL oraz systemu szablonów

Można definiować własne nazwy adresów internetowych („slugi”) dla określonych typów artykułów. Na przykład, można ustawić stały link dla artykułu o produkcie tak, aby wyglądał jak…/product/%postname%Ustaw aktywność na…/event/%postname%To nie tylko sprawia, że URL-y są bardziej zrozumiałe i przyjazne dla algorytmów SEO, ale także ułatwia użytkownikom poznawanie struktury witryny.

Polecamy lekturę. Poznaj niestandardowe szablony stron w WooCommerce: praktyczny przewodnik po rozwoju od zera do jednego.

Co więcej, system poziomów szablonów w WordPressu preferuje wyszukiwanie plików szablonów, które pasują do określonego typu artykułu. Na przykład, w przypadku artykułu o nazwie…productW zależności od typu wymaganych danych system będzie je szukać w kolejności.single-product.phpsingle.phpsingular.phpIto umożliwia tworzenie zupełnie różnych stylów prezentacji dla różnych typów treści, bez konieczności pisania złożonej logiki warunkowej w jednym szablonie.

Dwa sposoby na stworzenie własnego typu artykułu

W WordPressie istnieją dwa głównie popularne sposoby na tworzenie własnych typów artykułów: pierwszy polega na rejestracji tych typów za pomocą kodu w plikach funkcji tematów (theme functions), a drugi na użyciu wydajnych, specjalnych pluginów.

Tworzenie szybko za pomocą wtyczek

Dla osób, które nie znają się na programowaniu lub potrzebują szybkiego uruchomienia witryny, najwygodniejszym rozwiązaniem jest używanie wtyczek. Custom Post Type UI i Toolset Types to dwa popularne narzędzia tego typu. Oferują intuicyjne interfejsy użytkownika, które umożliwiają definiowanie nazw typów artykułów, tagów, ikon, ustawienia ich dostępności (publicznej lub nie), a także parametrów dotyczących funkcji archiwacji w prostym sposób – poprzez wypełnienie formularzy.

hosting.com Hosting współdzielony
Wysoka wydajność dzięki procesorom AMD EPYC, pamięci masowej NVMe SSD i LiteSpeed, wewnętrzne wsparcie ekspertów 24/7, zaawansowane środki bezpieczeństwa, w tym SSL, brute force, ochrona przed złośliwym oprogramowaniem i DDoS, oszczędność do 73%

Wady tego sposobu są takie same jak zalety: nie trzeba pisania kodu, ustawienia są natychmiast stosowane, a integracja z funkcjami zarządzania metadanami dostępnymi w pluginach jest zwykle dobra. Natomiast ograniczenia wynikają z dostępnych opcji w pluginach, co może ograniczać możliwości personalizacji; ponadto, jeśli w przyszłości zmienisz temat lub wyłączysz plugin, dane pozostaną w bazie danych, ale funkcja rejestracji może utrać się, wymagając dodatkowego kodu do jej przywrócenia.

Rejestracja za pomocą funkcji kodu (zalecana)

Dla programistów, którzy szukają stabilności, kontroli i wysokiej wydajności, rejestracja elementów w tematach lub wtyczkach dostępnych w WordPress jest bardziej profesjonalnym i zalecanym sposobem. Kluczowym elementem tego podejścia jest wykorzystanie funkcji dostępnych w samym WordPress. register_post_type() Funkcja.

Musisz umieścić kod rejestracji w temacie.functions.phpW pliku można umieścić kod, albo – co jest jeszcze lepsze – stworzyć niezależny moduł do funkcji witryny. Taka rozwiązanie ma kilka zalet: funkcja jest oddzielona od tematu, więc nawet gdy zmienisz temat, dostosowane typy artykułów oraz ich dane będą nadal funkcjonować bez problemów.

Polecamy lekturę. Szczegółowa analiza całego procesu tworzenia witryny internetowej: praktyczny przewodnik po technikach, które pozwolą stworzyć profesjonalną witrynę od podstaw.

Poniżej znajduje się przykład podstawowego kodu do tworzenia własnego typu artykułu “Produkt”:

function create_product_post_type() {
    $labels = array(
        'name'               => '产品',
        'singular_name'      => '产品',
        'menu_name'          => '产品管理',
        'add_new'            => '添加新产品',
        'add_new_item'       => '添加新产品',
        'edit_item'          => '编辑产品',
        'new_item'           => '新产品',
        'view_item'          => '查看产品',
        'search_items'       => '搜索产品',
        'not_found'          => '未找到产品',
        'not_found_in_trash' => '回收站中无产品',
    );

    $args = array(
        'labels'              => $labels,
        'public'              => true, // 是否公开
        'has_archive'         => true, // 是否有归档页
        'menu_icon'           => 'dashicons-cart', // 后台菜单图标
        'menu_position'       => 5, // 菜单位置
        'supports'            => array('title', 'editor', 'thumbnail', 'excerpt', 'custom-fields'), // 支持的功能
        'rewrite'             => array('slug' => 'products'), // URL别名
        'show_in_rest'        => true, // 是否在古腾堡编辑器和REST API中启用
    );

    register_post_type('product', $args); // 注册,'product'为内部标识符
}
add_action('init', 'create_product_post_type'); // 在初始化时执行函数

Ten kod działa poprzez…register_post_type()Funkcja zarejestrowała element o nazwie…productUdokumentowano typ artykułu, a także konfigurowano jego metody wyświetlania, podstawowe funkcje oraz moduły, które są dostępne. Dodaj to do…functions.phpPo tym należy odnowić stronę w serwerze, a wtedy pojawi się nowy menu “Używanie produktów”.

Hosting współdzielony InterServer
Hosting współdzielony $2.50 USD miesięcznie, pierwszy miesiąc $0.1 USD kod promocyjny tryinterserver, 461 skryptów aplikacji w chmurze, instalacja jednym kliknięciem.

Dostosowanie zaawansowanych ustawień i personalizacja szablonów

Rejestracja typu podstawowego to tylko pierwszy krok. Aby typ artykułu dostosowanego był naprawdę potężny i łatwy w użyciu, konieczne jest dokonanie zaawansowanych konfiguracji oraz stworzenie dla niego specjalnego szablonu.

Konfiguracja specjalnych parametrów i powiązanych klasifikacji

register_post_type()funkcyjny$argsMożliwości konfiguracji obejmują dziesiątki parametrów. Najważniejsze z nich to następujące opcje zaawansowane:
* ‘publicly_queryable’Czy można dostać się do pojednego artykułu poprzez adres URL na stronie frontend?
* ‘exclude_from_search’Czy należy wykluczyć tego typu artykuły z wyników wyszukiwania wewnętrznego?
* ‘capability_type’Definiuje możliwości uprawnień tego typu, co umożliwia dokładną kontrolę dostępu.
* ‘taxonomies’Powiązanie istniejących lub dostosowanych klasifikacji. Na przykład: powiązanie kategorii “Produkty” z dostosowaną kategorią “Klasyfikacja produktów”.”product_catI etykiety.product_tagMożna klasifikować produkty podobnie jak kategorizuje się artykuły.

Tworzenie własnej klasifikacji

Użyj register_taxonomy() Funkcje umożliwiają tworzenie specjalnych kategorii lub tagów dla Twoich własnych typów artykułów. Na przykład, dla artykułów o “produkcie” można stworzyć kategorię “Seria produktów”.

function create_product_taxonomy() {
    register_taxonomy(
        'product_series', // 分类法标识符
        'product', // 绑定的文章类型
        array(
            'label' => '产品系列',
            'rewrite' => array('slug' => 'product-series'),
            'hierarchical' => true, // 是否为层级式(类似分类)
            'show_in_rest' => true,
        )
    );
}
add_action('init', 'create_product_taxonomy');

Rozwinąć specjalne pliki z szablonami

Dostosowanie szablonów stanowi element kluczowy w prezentacji na stronie internetowej. Zgodnie z strukturą szablonów w WordPressie należy stworzyć odpowiednie pliki szablonów dla danej tematy. Na przykład:
1. Szablon strony archiwów: stworzeniearchive-product.phpZ dowolnej definicjiyoursite.com/products/Ta strona służy do wyświetlania listy wszystkich produktów.
2. Szablon artykułu: tworzeniesingle-product.phpZ witryny szczegółów produktu dostosowanego indywidualnie, np.yoursite.com/products/sample-product/
3. Szablon archiwacji według klasyfikacji: tworzenietaxonomy-product_series.phpZobrazuje listę wszystkich produktów w danej linii produktowej.

W tych plikach szablonowych możesz używać standardowych nawyków programowania stosowanych w WordPress, ale zwykle konieczne jest łączenie ich z wyszukiwaniem informacji w zdefiniowanych wcześniej polach, aby wyświetlić ceny produktów, ich specyfikacje oraz inne specjalne dane.

Użyj funkcji pre_get_posts, by modyfikować zapytanie główne.

Czasami może być konieczne dostosować ustawione parametry wyszukiwania na stronie archiwów produktów – na przykład zmienić liczbę elementów wyświetlanych na jednej stronie lub sposób sortowania. W takich przypadkach nie należy modyfikować bezpośrednio zapisów dotyczących wyszukiwania w plikach szablonów, lecz zamiast tego należy skorzystać z dostępnych narzędzi lub funkcji. pre_get_posts Ten „hook” do działania służy do modyfikacji głównego zapytania (main query) – to najlepsza praktyka w rozwoju aplikacji na platformie WordPress.

function modify_product_archive_query($query) {
    if (!is_admin() && $query->is_main_query() && is_post_type_archive('product')) {
        $query->set('posts_per_page', 12); // 每页显示12个产品
        $query->set('orderby', 'date'); // 按日期排序
        $query->set('order', 'DESC'); // 降序排列
    }
}
add_action('pre_get_posts', 'modify_product_archive_query');

Podsumowanie.

Możliwość tworzenia własnych typów artykułów jest jedną z kluczowych funkcji, które sprawiły, że WordPress rozwinął się z prostego systemu do blogów w potężny system do zarządzania treścią. Dzięki rozdzieleniu elementów według logiki, możliwościom dostosowania polów oraz specjalizacji szablonów zapewnia się eleganckie rozwiązanie problemów związanych z zarządzaniem i prezentacją złożonych treści. Można to zrobić szybko za pomocą dodatków (pluginów) lub w inny sposób.register_post_type()Funkcje umożliwiają głębokie kontrolowanie kodu, więc programiści mogą znaleźć rozwiązania odpowiadające wymaganiom projektu. Poprzez połączenie własnych kategorii, zaawansowanych polów oraz tematów zgodnych z hierarchią szablonów, można stworzyć różnorakie profesjonalne witryny o jasnej strukturze, potężnych funkcjach i wyjątkowym użytkowniczym doświadczeniu. Opanowanie i skuteczne wykorzystanie tej funkcji jest koniecznym krokiem na drodze do postępów każdego programisty pracującego z WordPressem.

FAQ – najczęściej zadawane pytania.

Gdzie w bazie danych przechowywane są dane dotyczące niestandardowych typów artykułów?

Wszystkie artykuły zdefiniowane jako typy artykułów kustomowych (ich treści) są przechowywane głównie w…wp_postsW tabeli danych…post_typeWartość pola to identyfikator, który określiłeś podczas rejestracji (na przykład…).productInformacje o klasifikacjach powiązanych z tymi artykulami są przechowywane w…wp_term_relationshipswp_term_taxonomyW tabeli. Informacje dodane za pomocą pola dostosowanego (metadanych) są zapisywane w…wp_postmetaW tabeli danych.

Jeśli wyłączę plugin umożliwiający tworzenie własnych typów artykułów, czy to doprowadzi do utraty zawartego w nich tekstu?

Zawartość artykułów sama w sobie zwykle nie ginie, ponieważ jest już zapisana.wp_postsWewnętrznie i z zewnątrz. Jednakże ponieważ kod odpowiedzialny za rejestrację tego typu artykułów (dostępny w formie pluginu) utracił swoją skuteczność, WordPress już nie rozpoznaje tego typu artykułów. To może doprowadzić do wymazania menu zarządzania w panelu administracyjnym, co uniemożliwi oglądanie i edycję tych artykułów, a linki do nich na stronie internetowej mogą też przestać funkcjonować poprawnie. Aby uniknąć tego problemu, zaleca się przenieść kluczowy kod rejestracyjny do subtematu.functions.phpLub w dodatkach z dostosowanymi funkcjami.

Jak zmienić strukturę stałych linków w istniejącym typie artykułu dostosowanym do potrzeb użytkownika?

Aby zmienić strukturę stałego linku (permalinku), konieczne jest aktualizowanie informacji podanej podczas rejestracji.rewriteParametry. Możesz je zmienić w porównaniu z danymi podanymi podczas rejestracji.register_post_type()w funkcji‘rewrite’ => array(‘slug’ => ‘new-slug’)Po wprowadzeniu zmian konieczne jest wejście do panelu administracyjnego WordPressa, wybrać opcję “Ustawienia” → “Niezmiennie odnoszące się linki” (“Settings” → „Fixed Links”), nie robić żadnych modyfikacji i nacisnąć przycisk „Zapisz zmiany” („Save Changes”). Dzięki temu zostaną aktualizowane zasady przekierowania linków, a nowa struktura linków wejdzie w życie.

Czy można stworzyć oddzielne szablony edytora bloków dla typów artykułów dostosowanych pod potrzeby użytkownika?

Tak, zupełnie możliwe. Od wersji WordPress 5.0, gdy został wprowadzony edytor Gutenberg i wsparcie dla funkcji edycji całego bloga (Full Site Editing – FSE), można tworzyć specjalne szablony bloków lub elementy szablonów dla określonych typów artykułów. To jest szczególnie łatwe w przypadku tematów, które obsługują FSE (np. Twenty Twenty-Three). Możesz to zrobić w zasobach tematu (tema settings).templatesUtworzyć w folderze pliki takie jak…single-product.htmlTakie pliki z szablonami bloków można tworzyć za pomocą tematów (tematów).theme.jsonW plikach oraz parametrach rejestracji‘template’‘template_lock’Można konfigurować opcje, aby ustalić jednolity rozkład bloków dla wszystkich artykułów tego typu.