Co to jest typ artykułu dostosowany?
Artykuły (Post) i strony (Page) stanowią dwie wewnętrzne typy treści w WordPressie, ale w przypadku potrzeb związanych z prezentacją produktów, opisem członków zespołu, przypadkami realizowanych projektów itd., te typy często okazują się niewystarczające. Aby tego uniknąć, został stworzony funkcjonalny rozszerzony moduł – typy artykułów dostosowane (Custom Post Type, CPT). Dzięki niemu programiści mogą definiować nowe typy treści z określonymi polami, własnymi kategoriami oraz specjalnymi interfejsami zarządzania, co umożliwia przekształcenie WordPressa z standardowego systemu blogowego w potężny system do zarządzania treściami.
W odróżnieniu od standardowych artykułów, które są rozszerzane za pomocą własnych polów, CPT (Custom Post Types) tworzą całościowo logicznie niezależne elementy treści. Na przykład post typu “Produkt” może mieć własny proces publikacji, stronę archiwacji oraz stronę z szczegółowymi informacjami; struktura danych i interfejs administracyjny mogą być dostosowane specjalnie do potrzeb tego typu posta. To znacznie poprawia jasność i profesjonalność zarządzania treścią, a także stanowi solidną podstawę dla realizacji złożonych struktur witryny internetowej.
Jak stworzyć własny typ artykułu?
W WordPressie istnieją dwa głównego sposoby na stworzenie własnych typów artykułów: poprzez rejestrację kodu oraz z użyciem wizualnych pluginów. Dla programistów, którzy szukają najlepszych wyników działania systemu i pełnej kontroli, napisanie kodu jest preferowanym rozwiązaniem.
Polecamy lekturę. Pełny przewodnik po optymalizacji wydajności WordPress: od podstawowych ustawień do zaawansowanych metod szybkiego ładowania stron。
Rejestracja CPT za pomocą kodu
Najważniejszym sposobem jest użycie… register_post_type Funkcje. Programiści muszą je uwzględnić w opracowaniu tematu (tema projektu lub rozwiązania). functions.php Tę funkcję można wywołać w pliku lub w odrębnym modułu rozszerzającym (pluginie). Poprzez przekazanie unikalnego identyfikatora („slug”) oraz arraya zawierającego różne parametry, można określić wszystkie atryuty nowego typu artykułu: etykety, ustawienia dostępności, dostępne funkcje, ikony w menu itd.
Poniżej znajduje się klasyczny przykład tworzenia własnego typu artykułu “Produkt”:
function create_product_post_type() {
$labels = array(
'name' => '产品',
'singular_name' => '产品',
'add_new' => '添加新产品',
'add_new_item' => '添加新产品',
'edit_item' => '编辑产品',
'new_item' => '新产品',
'view_item' => '查看产品',
'search_items' => '搜索产品',
'not_found' => '未找到产品',
'not_found_in_trash' => '回收站中没有产品',
'menu_name' => '产品',
);
$args = array(
'labels' => $labels,
'public' => true,
'publicly_queryable' => true,
'show_ui' => true,
'show_in_menu' => true,
'query_var' => true,
'rewrite' => array( 'slug' => 'product' ),
'capability_type' => 'post',
'has_archive' => true,
'hierarchical' => false,
'menu_position' => 5,
'menu_icon' => 'dashicons-cart',
'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt', 'custom-fields' ),
);
register_post_type( 'product', $args );
}
add_action( 'init', 'create_product_post_type' ); Używanie wtyczek do tworzenia CPT (Content Production Templates).
Dla osób nieznających się na programowaniu istnieją plagiary, takie jak “Custom Post Type UI” lub “Toolset Types”, które oferują interfejs graficzny do tworzenia i zarządzania typami postów (CPT – Custom Post Types). Wystarczy tylko wypełnić formularz w panelu administracyjnym i ustawić odpowiednie opcje, a plagiary automatycznie wygenerują i zainstalują niezbędny kod rejestracyjny. Ten sposób jest wydajny i szybki, ale może doprowadzić do pojawienia się dodatkowych zależności oraz negatywnego wpływu na wydajność systemu. Podczas wyboru plagiara należy uwzględnić jego stan utrzymania oraz długofalowe wymagania projektu.
Tworzenie własnych szablonów archiwów i jednostronicowych dla CPT (Custom Post Type).
Po zarejestrowaniu własnego typu artykułu WordPress próbuje użyć odpowiedniej pliki szablonu zdefiniowanej w temacie, aby wyświetlić jej zawartość. Poprzez stosowanie zasad hierarchii szablonów w WordPressie można tworzyć specjalne szablony, które umożliwiają dokładne kontrolowanie wyglądu artykułów tego typu.
Szablon strony archiwów dostosowany do potrzeb użytkownika
Aby stworzyć stronę archiwu produktów typu CPT (Product Catalog Page), czyli listę wszystkich produktów, musisz utworzyć plik o nazwie … w katalogu tematycznym (theme directory). archive-product.php To plik zawierający informacje o produktach, gdzie “product” to nazwa identyfikująca produkt używana podczas rejestracji w systemie CPT (Content Publishing Type). W tym pliku możesz użyć standardowych mechanizmów cyklicznego wyświetlania (loopów) dostępnych w WordPress, aby uzyskać i wyświetlić wszystkie artykuły z kategorii “produkty”.
Polecamy lekturę. Święty tekst o optymalizacji wydajności witryn WordPress: od szybszego ładowania do praktycznego stosowania mechanizmów cache’owania。
// archive-product.php 示例片段
<header class="page-header">
<h1 class="page-title">Nasze produkty</h1>
</header>
<div class="products-grid">
<?php while ( have_posts() ) : the_post(); ?>
<article id="post-<?php the_ID(); ?>" no numeric noise key 1008>
<a href="/pl/</?php the_permalink(); ?>">
<?php the_post_thumbnail( 'medium' ); ?>
<h2><?php the_title(); ?></h2>
</a>
<div class="entry-excerpt">
<?php the_excerpt(); ?>
</div>
</article>
<?php endwhile; ?>
</div>
<p>Nie ma dostępnych produktów.</p>
<?php endif; ?> Dyplomatyczny szablon dla pojednego artykułu
Podobnie, aby stworzyć szablon strony z informacjami o pojedynczym “produkcie”, należy najpierw stworzyć odpowiedni element struktury. single-product.php Plik. Ten szablon służy do prezentacji pełnego zawartości pojednego artykułu o “produkcie”; możesz tu umieścić wszystkie ustawione przez ciebie pola dostępne w edytorze artykułów.
// single-product.php 示例片段
<article id="post-<?php the_ID(); ?>" no numeric noise key 1005>
<header class="entry-header">
<h1 class="entry-title"><?php the_title(); ?></h1>
<div class="product-meta">
<span>价格:</span>
<span>SKU:</span>
</div>
</header>
<div class="entry-content">
<p><strong>Treść artykułu</strong>: <p><strong>Dzięki za komentarz!</strong></p>
</div>
</article>
<?php endwhile; ?> Zastosowania zaawansowane CPT oraz optymalizacja wydajności
Gdy twoja witryna internetowa zawiera wiele własnych typów artykułów oraz dużą ilość danych, staje się kluczowe zwrócić uwagę na jej zaawansowane możliwości i wydajność. To obejmuje tworzenie zaawansowanych zapytań, łączenie różnych danych oraz stosowanie technik optymalizacji.
Używanie WP_Query do realizacji własnych zapytań
Choć główny cyklus WordPress automatycznie obsługuje żądania dotyczące typu CPT (Custom Post Type), to w nagłówkach, blokach specjalnych itp. często konieczne jest wykonywanie własnych, dostosowanych zapytań. W takich przypadkach należy używać odpowiednich funkcji lub metod dostępnych w frameworku WordPress. WP_Query Klasa, i poprzez nią… post_type Parametry określają CPT (Cost Per Transaction), który ma zostać wyszukany.
// 查询最新 3 个“产品”
$product_query = new WP_Query( array(
'post_type' => 'product',
'posts_per_page' => 3,
'orderby' => 'date',
'order' => 'DESC',
) );
if ( $product_query->have_posts() ) {
while ( $product_query->have_posts() ) {
$product_query->the_post();
// 输出产品信息
}
wp_reset_postdata(); // 重置查询数据
} Przypisanie kodu CPT (Current Procedural Terminology) do udefiniowanej kategorii
Aby zorganizować treść zawartą w CPT (Cost and Price Table) w sposób bardziej szczegółowy, można stworzyć własną klasifikację. Na przykład dla kategorii CPT “Produkty” można utworzyć podkategorie “Kategorie produktów” i “Tagi produktów”. Do tego potrzebny jest odpowiedni narzędzie lub procedura. register_taxonomy Funkcja, która jest aktywna podczas rejestracji. object_type Parametry umożliwiają powiązanie produktów z kategoriami typu “CPT” (Product Category Terms). Dzięki temu można klasifikować produkty w kilku wymiarach, podobnie jak artykuły według kategorii i tagów, a następnie tworzyć specjalne strony zawierające archiwum tych kategorii.
Optymalizacja wydajności CPT
Wraz z rosnącą ilością danych wyszukiwania realizowane za pomocą CPT (Content Protection Technology) mogą wpływać na szybkość działania witryny. Kluczowe działania zmierzające do optymalizacji to:
1. Rozsądne używanie API Transients do ułatwienia szybkiego uzyskiwania wyników zapytań: W przypadku list produktów CPT (np. najpopularniejszych produktów), które nie zmieniają się często, można zapisywać wyniki tych zapytań do cache.
2. Upewnij się, że indeksy w bazie danych są wdrożone: dla poli wykorzystywanych w częstych zapytaniach dotyczących CPT (np. …) post_type, meta_value Utworzenie indeksów (itd.) może znacząco poprawić efektywność wyszukiwań.
3. Używaj paginacji i opóźnionego ładowania: Na stronach archiwów zawierających dużą ilość danych konieczne jest włączenie funkcji paginacji. W przypadku zasobów takich jak zdjęcia rozważaj zastosowanie techniki opóźnionego ładowania (lazy loading).
4. Unikaj wielokrotnych zapytań do bazy danych w ramach cyklu: szczególnie należy unikać ich wykonywania wewnątrz cyklu. get_post_meta Aby funkcje typu „get” uzyskały duże ilość udefiniowanych polów, należy starać się przygotować całą potrzebną metadanę jednorazowo.
Podsumowanie.
Dzielnice artykułów dostosowane w WordPress są kluczowym elementem budowania profesjonalnych, złożonych stron internetowych. Pozwalają przezwyciężyć ograniczenia standardowych artykułów i stron, umożliwiając tworzenie niezależnych, pełnowartościowych systemów zarządzania i prezentacji różnych typów treści – produktów, przypadków studiów, członków zespołu itd. register_post_type Funkcje lub plugi są tworzone na podstawie określonych wzorów (szablonów), a potem przygotowuje się wersje specjalnie dostosowane do konkretnych wymagań i poziomów struktury aplikacji. archive-{slug}.php 和 single-{slug}.php Szablon, a potem jego użycie. WP_Query Możliwość wykonywania zaawansowanych zapytań oraz powiązania ich z własnymi klasifikacjami daje programistom szerokie możliwości modelowania treści. Dodatkowo wdrożenie mechanizmów cache’owania, indeksowania i optymalizacji zapytań gwarantuje dobrą wydajność nawet przy budowaniu dużych stron internetowych za pomocą CPT. Znajomość CPT oznacza, że otworzyłeś potencjał WordPress jako zaawansowanego systemu zarządzania treścią.
Polecamy lekturę. Zacznij od podstaw: kompletny przewodnik i najlepsze praktyki dotyczące tworzenia osobistego bloga za pomocą WordPressa.。
FAQ – najczęściej zadawane pytania.
W jaki sposób różnią się typy artykułów dostosowane do potrzeb użytkownika (custom article types) od polów dostosowanych do potrzeb użytkownika (custom fields)?
Autorskie typy artykułów (Custom Post Types, CPT) to zupełnie nowe rodzaje treści, posiadające własne menu w administracji, tabele danych oraz strukturę logiczną. Idealne są do definiowania kluczowych elementów, takich jak “produkty” lub “eventy”.
Pola dostosowane (ang. Custom Fields lub Meta Boxes) to narzędzia umożliwiające dodawanie dodatkowych atrybutów lub informacji do istniejących typów treści, takich jak artykuły, strony lub elementy typu CPT (Content Type Parameters). Na przykład do elementu typu CPT “Produkt” można dodać pola takie jak “Cena” lub “Kolor”. Definicja elementu typu CPT określa, “co to jest”, natomiast pola dostosowane opisują, “jakie atryuty posiada dany element”.
Który sposób jest lepszy: rejestracja CPT w pliku functions.php tematu czy w osobnym pluginie?
Kodów specyficznych dla projektu, które są silnie powiązane z aktualnym designem tematu, należy umieścić w samym temacie. functions.php To jest realizowalne.
Jednakże najlepszą praktyką jest stworzenie osobnego modułu funkcjonalnego, w którym umieszczony zostanie kod rejestracji CPT (Custom Post Type). Taka metoda ma następujące zalety: przy zmianie tematu CPT wraz z jego danymi nie zostanie utracony, co gwarantuje trwałość i niezależność treści na stronie internetowej, a także spełnia zasadę rozdzielania zadań („separation of concerns”).
Jak dodać nowe funkcje obsługi do istniejącego typu artykułu dostosowanego do potrzeb użytkownika?
Możesz użyć add_post_type_support Można stworzyć funkcję, która umożliwi dodanie wsparcia dla funkcji dla zarejestrowanych typów produktów (CPT – Custom Product Types). Na przykład, jeśli chcesz dodać funkcję “opis” do typu produktu “product”, który wcześniej jej nie obsługiwał, możesz to zrobić w temacie (templecie) używając odpowiednich kodów. functions.php Lub dodaj następujący kod do wtyczki:
add_action( 'init', 'add_excerpt_support_for_product' );
function add_excerpt_support_for_product() {
add_post_type_support( 'product', 'excerpt' );
} Jak funkcjonuje link permanentny (permalink) do artykułu zdefiniowanego w sposób indywidualny?
Podczas rejestracji CPT należy przejść przez… („During the CPT registration process, you need to go through…”). rewrite Można ustawić strukturę linków dla parametrów. Na przykład: 'rewrite' => array( 'slug' => 'product' ) To sprawi, że link do twojej strony produktu będzie wyglądać w następujący sposób: yourdomain.com/product/some-product/Link do ich strony archiwów to zwykle… yourdomain.com/product/。
Po zarejestrowaniu CPT koniecznie odwiedź stronę “Ustawienia” -> “Niezmienne linki” w panelu administracyjnym WordPress. Nie trzeba nic robić – po prostu kliknij na przycisk “Zapisz zmiany”. To aktualizuje zasady przekierowania i zapewni, że twoje ustawione linki będą dostępne.
Jak wyszukać treści z kilku udefiniowanych typów artykułów?
W czasie używania WP_Query Podczas wykonywania wyszukiwania… post_type Aby jednocześnie wyszukać kilka elementów typu CPT, wystarczy ustawić parametry jako array.
$multi_cpt_query = new WP_Query( array(
'post_type' => array( 'post', 'product', 'portfolio' ),
'posts_per_page' => 10,
) ); To jest bardzo przydatne dla tworzenia sekcji “Najnowsze informacje” na główniej stronie, która połącza artykuły z blogu, informacje o produktach oraz przypadki zastosowania tych produktów.
Następny krok, co dalej?
Dalsze lektury i praktyczna wiedza.
Poniższe treści są powiązane z tematem tego artykułu i warto je przeczytać. Zwykle lepiej zacząć od artykułu, który najbardziej odpowiada aktualnemu problemowi, a potem stopniowo przechodzić do tematów pokrewnych.
- Kluczowe kroki w optymalizacji SEO: kompletny przewodnik strategii
- Niezbędne elementy współczesnych stron internetowych: od zera poznaj kluczowe strategie i praktyczne techniki optymalizacji SEO
- Świetny przewodnik po tworzeniu stron internetowych z pomocą platformy WooCommerce: jak stworzyć profesjonalną stronę e-handlu od zera.
- Znaczenie i wartość WordPressa
- Pełny przewodnik po uruchomieniu sklepu online w WooCommerce (w języku chińskim): jak stworzyć swoje pierwsze sklep internetowe od zera