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í.
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.php、single.php、singular.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.
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í.
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_relationships和wp_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.
Jaký je další krok? Co bych měl udělat dál?
Další čtení a praktické znalosti
Následující obsah souvisí s tématem tohoto článku a je vhodný k dalšímu prostudování. Obvykle je lepší začít čtením článku, který je nejblíže vašemu aktuálnímu problému, a poté postupně přecházet k souvisejícím tématům.
- Praktický průvodce: Jak postupně provádět efektivní optimalizaci webových stránek pro vyhledávače (SEO) a hodnotit její výsledky
- Průlom v problémech s provozním zatížením webových stránek: Praktický průvodce optimalizací pro SEO od začátku až po dosažení profesionální úrovně
- Zvládněte základní techniky optimalizace pro vyhledávače (SEO): Kompletní průvodce od strategie po realizaci
- Ovládněte základní a pokročilé techniky: Praktický průvodce SEO optimalizací od základů po pokročilé metody
- Základní principy a strategie SEO optimalizace