Podrobné vysvětlení vlastních typů článků v WordPressu.

Čtení za 3 minuty.
2026-03-14
2026-06-04
2,720
Získávám provize, když nakupujete prostřednictvím níže uvedených odkazů, aniž by vás to něco stálo navíc.

Podrobné vysvětlení vlastních typů článků v WordPressu.

Výchozí typy článků v WordPressu:posta typu stránkypageJe to dostatečné pro správu většiny obsahu, ale pro komplexní weby, které vyžadují strukturované zobrazení konkrétních informací (jako jsou produkty, portfolio, akce, týmy atd.), jsou jeho funkce nedostatečné. Výskyt personalizovaných typů článků je právě určen k řešení tohoto základního problému – umožňuje vývojářům překonat hranice “článků” a “stránek” a vytvořit pro každý typ obsahu vlastní správní rozhraní, front-end zobrazení a logiku pro vyhledávání.

Díky vlastním typům článků můžete pro “produkty” vytvořit samostatné rozhraní pro jejich zveřejňování, pro “členy týmu” vytvořit speciální pole pro zadávání údajů a pro tyto prvky přiřadit jedinečnou strukturu URL adres, způsoby klasifikace a šablony. To nejen výrazně zvyšuje přehlednost a efektivitu správy obsahu, ale je také nezbytným technickým základem pro vytváření podnikových, vysoce přizpůsobitelných webových stránek na platformě WordPress.

Proč je potřeba vytvářet vlastní typy článků?

Použití vlastních typů článků umožňuje logické oddělení různých typů obsahu, což přináší mnoho významných výhod.

Doporučujeme k přečtení. Podrobné vysvětlení WooCommerce: kompletní návod k vytvoření efektivního e-commerce webu od nuly.

Umožnit jasné oddělení funkcí správy obsahu.

Když váš web obsahuje blog, prezentaci produktů, novinářské oznámení a příklady úspěchů a všechny tyto prvky jsou spravovány pomocí výchozího typu “Článek”, stane se administrace systému nepřehlednou. Různorodé typy obsahu jsou smíchány do jediného seznamu, což ztěžuje jejich editaci a vyhledávání.

UltaHost – hosting služby pro weby postavené na platformě WordPress
Záruka vrácení peněz do 30 dnů, neomezený šířka pásma a databáze, bezplatná ochrana proti DDoS útokům. Sleva 501 TP4T při nákupu na 3 roky.

Po vytvoření samostatných typů “Produktů” a “Příkladů” může administrátor v levém menu v administraci vidět samostatné položky pro správu produktů a příkladů. Po kliknutí na tyto položky se zobrazí rozhraní pro správu, které je podobné rozhraní pro správu článků, ale je zcela nezávislé a nepřekrývá funkce rozhraní pro správu článků. Toto oddělení umožňuje úhlednou organizaci obsahu a výrazně snižuje složitost správy.

Vytvoření vlastních polí a metadat

Výchozí typy článků obsahují obvykle následující pole: nadpis, text, abstrakt, kategorii a tagy. U článků o “produktech” mohou být potřeba další pole, jako je cena, specifikace a dostupnost zboží; u článků o “akcích” jsou pak důležitá data začátku a konce akce, místo konání atd.

Vlastní typy článků lze kombinovat s doplňky nebo kódem, jako jsou např. pokročilá vlastní pole, čímž lze snadno přidat specifická metadatová pole pro konkrétní typy obsahu. Tato pole jsou na straně serveru zobrazena ve formě formulářů a na straně klienta je lze flexibilně použít pomocí šablonovacích značek, což umožňuje hlubokou personalizaci struktury obsahu.

Vytvoření nezávislé struktury URL a systému šablon

U přizpůsobených typů článků je možné definovat vlastní URL přezdívky (tzv. „Slugs“). Například můžete nastavit fixní odkaz pro typ produktu tak, aby vypadal takto:/product/%postname%Nastavte akci na…/event/%postname%To nejenže činí URL smysluplnějšími a příznivějšími pro SEO, ale také usnadňuje uživatelům pochopení struktury webové stránky.

Doporučujeme k přečtení. Naučte se používat vlastní šablony stránek ve WooCommerce: praktický návod k vývoji od nuly až po hotový produkt.

Důležitější je, že systém úrovní šablon v WordPressu preferuje hledání šablonových souborů, které odpovídají zadanému typu článku. Například, pro článek s názvem…productPodle typu požadavku bude systém postupně hledat odpovídající řešení.single-product.phpsingle.phpsingular.phpAtd. To vám umožňuje navrhnout zcela odlišné styly předního zobrazení pro různé typy obsahu, aniž byste museli psát složitou logiku podmínek v jediném šabloně.

Dva způsoby vytvoření vlastního typu článku

V WordPressu existují dvě hlavní metody pro vytvoření vlastních typů článků: registrace pomocí kódu v souborech funkcí tématu (theme functions) a použití výkonných speciálních pluginů.

Rychlé vytvoření pomocí pluginů

Pro uživatele, kteří nejsou obeznámeni s vývojem kódu nebo potřebují rychle spustit své webové stránky, je použití pluginů nejsnazším řešením. Custom Post Type UI a Toolset Types jsou dvě velmi populární pluginy. Poskytují intuitivní uživatelské rozhraní, které vám umožňuje definovat všechny parametry typu článku – název, tagy, ikonu, zda je článek veřejný, zda podporuje stránku s archivy – jednoduše vyplněním formuláře.

Shared hosting na hosting.com
Vysoký výkon, vybavený procesorem AMD EPYC, úložištěm NVMe SSD a LiteSpeedem, nepřetržitá interní podpora odborníků 24 hodin denně a 7 dní v týdnu, pokročilá bezpečnostní opatření včetně SSL, ochrany proti útokům hrubou silou, malwaru a DDoS, úspora až 731 TB/měsíc.

Výhodou tohoto způsobu je, že není potřeba psát žádný kód – nastavení je okamžitě aktivní a obvykle dobře integruje funkce pro správu metadat poskytované pluginy. Na druhou stranu jsou i nevýhody zřetelné: funkce jsou omezeny možnostmi, které plugin nabízí, a možnosti personalizace mohou být nedostatečné; kromě toho, pokud v budoucnu změníte téma nebo plugin deaktivujete, data zůstanou sice v databázi, ale funkce registrace mohou být ztracena, a bude potřeba dodatečný kód k jejich znovuaktivaci.

Registrování pomocí kódových funkcí (doporučeno)

Pro vývojáře, kteří hledají stabilitu, kontrolovatelnost a vysoký výkon, je registrace prostřednictvím kódu v tematech nebo vlastních pluginech profesionálnějším a doporučenějším postupem. Podstatou tohoto přístupu je využití funkcí, které poskytuje WordPress. register_post_type() Funkce.

Potřebujete umístit registrační kód do tématu.functions.phpVe souboru, nebo ještě lépe, vytvořte samostatný plugin pro funkce webové stránky. Výhodou tohoto přístupu je, že funkce jsou odděleny od tématu webové stránky, takže i po změně tématu budou vlastní typy článků a jejich data nadále fungovat bez problémů.

Doporučujeme k přečtení. Analýza celého procesu tvorby webových stránek: praktická technická příručka pro vytvoření profesionálních webových stránek od nuly.

Níže je ukázka základního kódu pro vytvoření vlastního typu článku “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'); // 在初始化时执行函数

Tento kód funguje tak, že…register_post_type()Funkce byla registrována pod názvem…productTyp článku byl určen a byly nastaveny jeho zobrazení, základní funkce a podporované moduly. Nyní jej lze přidat…functions.phpPoté stačí obnovit stránky v pozadí (refresh) a nový menu “Správa produktů” se zobrazí.

Shared hosting od InterServeru
Sdílený hosting za 1 TB + 5 TB měsíčně za 2,50 USD, slevový kód tryinterserver pro první měsíc za 1 TB + 5 TB za 0,1 USD, a 461 skriptů cloudových aplikací k jednoduché instalaci.

Pokročilá konfigurace a vlastní nastavení šablon

Registrování základního typu je pouze prvním krokem. Aby byl vlastní typ článku skutečně výkonný a snadno použitelný, je nutné provést pokročilé nastavení a vytvořit pro něj speciální šablonu.

Konfigurace speciálních parametrů a přidružených klasifikačních systémů

register_post_type()funkční$argsParametrický array poskytuje desítky konfiguračních položek. Mezi ně patří i některé klíčové, pokročilé možnosti, jako např.:
* ‘publicly_queryable’Lze přistup k jednotlivým článkům prostřednictvím URL adresy na straně klienta (frontendu)?
* ‘exclude_from_search’Zda má být tento typ článků vyloučen z výsledků vnitřního vyhledávání.
* ‘capability_type’Definuje schopnosti týkající se oprávnění tohoto typu, což umožňuje přesnější kontrolu přístupů.
* ‘taxonomies’Připojte existující nebo vlastní klasifikace. Například připojte vlastní “Klasifikaci produktů” ke “Produktům”.”product_cat„A tag“product_tagProdukty lze třídit stejným způsobem jako kategorie článků.

Vytvořit vlastní klasifikaci

Použití register_taxonomy() Funkce mohou vytvořit speciální kategorie nebo tagy pro vaše vlastní typy článků. Například pro články o “produktech” můžete vytvořit kategorii “Série produktů”.

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');

Vytvořit speciální šablonové soubory

Přizpůsobení šablon je jádrem vzhledu webových stránek na straně klienta („front end“). V závislosti na struktuře šablon WordPressu je nutné vytvořit odpovídající šablonové soubory pro dané téma. Například:
1. Šablona archivní stránky: Vytvořeníarchive-product.phpZ vlastního nastaveníyoursite.com/products/Tato stránka slouží k zobrazení všech produktů.
2. Šablona pro jednotlivé články: Vytvořenísingle-product.phpZ detailové stránky určitého produktu, například…yoursite.com/products/sample-product/
3. Archivační šablona pro klasifikační metody: Vytvořenítaxonomy-product_series.phpZobrazí se seznam všech produktů pod danou řadou produktů.

V těchto šablonových souborech můžete používat standardní cykly WordPressu, ale obvykle je potřeba je kombinovat s vlastními dotazy na údaje, abyste zobrazili ceny produktů, specifikace a další specifické informace.

Použití funkce `pre_get_posts` k úpravě hlavního dotazu

Někdy možná budete potřebovat upravit výchozí parametry vyhledávání na stránce s archivem produktů – například změnit počet zobrazených položek na stránce nebo způsob řazení. V takových případech byste neměli přímo měnit kódy vyhledávání v souborech šablon, ale měli byste použít vhodné nástroje nebo funk pre_get_posts Tento „Action Hook“ slouží k úpravě hlavního dotazu (main query), což je osvědčená praktika při vývoji pro 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');

Závěr

Vlastní typy článků jsou jednou z klíčových funkcí, které umožnily WordPressu vyvinout se z běžného blogovacího systému na výkonný systém pro správu obsahu. Díky logickému oddělení jednotlivých částí, možnostem přizpůsobení polí a specializovaným šablonám poskytují elegantní řešení pro správu a zobrazení složitějšího obsahu. Ať už jde o rychlé vytvoření nových typů článků pomocí pluginů, nebo o další vylepšení systému…register_post_type()Funkce umožňují hlubokou kontrolu kódu, takže vývojáři mohou snadno najít vhodný způsob implementace podle požadavků projektu. V kombinaci s vlastními klasifikacemi, pokročilými funkcemi a tematickým vývojem podle struktury šablon můžete vytvořit profesionální webové stránky s jasnou strukturou, silnými funkcemi a vynikajícím uživatelským zážitkem. Ovládnutí a efektivní využití této funkce je nezbytnou součástí pokroku každého WordPress vývojáře.

Časté dotazy

Kde budou data o vlastních typech článků uložena v databázi?

Všechny články typu „Custom Article Type“ (jejich obsah) jsou uloženy hlavně na…wp_postsV tabulce dat…post_typeHodnota tohoto pole je identifikátor, který jste definovali při registraci (například…).productInformace o klasifikacích spojených s těmito články jsou uloženy v…wp_term_relationshipswp_term_taxonomyV tabulce. Informace přidané pomocí vlastních polí (metadat) jsou uloženy…wp_postmetaV tabulce dat.

Pokud zakážu plugin pro vytváření vlastních typů článků, ztratí se obsah?

Samotný obsah článků se obvykle neztratí, protože je již uložen.wp_posts„Uvnitř i zvenčí…“ Avšak protože kód určený k registraci tohoto typu článků (poskytovaný pluginem) již není platný, WordPress tento typ článků již nebudete moci rozpoznat. V důsledku toho zmizí menu pro správu v administraci a nebudete moci tyto články sledovat a spravovat z pohledu administrátora; navíc odkazy na tyto články na stránce pro uživatele také nemusí fungovat správně. Aby se tomuto problému předešlo, doporučujeme přesunout klíčový registrační kód do podtemu (subtheme).functions.phpNebo v příslušných pluginech pro vlastní funkce.

Jak změnit fixní strukturu odkazů u stávajících vlastních typů článků?

Pro změnu struktury fixního odkazu (permalinku) je nutné aktualizovat údaje zadané při registraci.rewriteParametry. Můžete je upravit podle potřeb, stejně jako to bylo možné při původní registraci.register_post_type()within the function‘rewrite’ => array(‘slug’ => ‘new-slug’)Po provedení změn je nutné přejít do administrace WordPressu na stránku “Nastavení” -> “Fixní odkazy”. Bez provedení žádných dalších úprav klikněte přímo na tlačítko “Uložit změny”. Tímto krokem budou aktualizovány pravidla přepisování odkazů a nová struktura odkazů nabídne svůj efekt.

Lze vytvořit samostatné šablony editátorů bloků pro vlastní typy článků?

Ano, to je zcela možné. Od verze WordPress 5.0, kdy byl zaveden Gutenberg Editor a podpora pro celosálové úpravy (Full Site Editing – FSE), můžete vytvářet vlastní blokové šablony nebo komponenty pro přizpůsobené typy článků. To je obvykle snazší při použití blokových témat, která podporují FSE (např. Twenty Twenty-Three). Můžete to provést v nastaveních daného tématu…templatesV podadru create (vytvořte) něco jako…single-product.htmlTakové soubory šablon bloků mohou být buď přímo vytvořeny, nebo pomocí tematických nastavení (tj. nastavení určených k určitému typu obsahu).theme.jsonV souborech a registračních parametrech‘template’‘template_lock’Nastavte možnosti tak, abyste definovali jednotný rozvrh bloků pro všechny články tohoto typu.