Kompletní průvodce vývojem WordPressových šablon: od začátků až po pokročilé techniky.

Čtení za 3 minuty.
2026-03-14
2026-06-04
2,818
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.

Připravenost vstoupit do světa vývoje temat pro WordPress znamená, že budete mít možnost budovat personalizované webové stránky od nuly. Jde nejen o kód, ale také o pochopení toho, jak WordPress funguje, a o to, jak své designové koncepty převést do interaktivních, dynamických webových stránek. Na rozdíl od použití hotových temat vám vývoj vlastních temat umožňuje plně ovládat každý pixel a každý datový požadavek na stránkách – a to ať už je to pro unikátní prezentaci vaší značky, nebo pro splnění složitých požadavků vaší podnikové logiky.

Základní struktura témat pro WordPress

Standardní téma WordPressu je adresář, který obsahuje určité soubory a složky. Porozumění této struktuře je základem pro vývoj webových stránek.

Povinné soubory pro dané téma

Každé téma vyžaduje alespoň dva soubory:style.cssindex.phpMezi nimi jestyle.cssFunkce tohoto souboru daleko přesahuje pouhé použití jako šablona stylů – obsahuje také část hlavy šablony, která definuje metadata tématu. Tato metadata jsou klíčová pro to, aby WordPress rozpoznal konkrétní téma.

Doporučujeme k přečtení. Podrobné vysvětlení vývoje témat WordPressu: kompletní průvodce od začátku až po pokročilé techniky.

/*
Theme Name: 我的自定义主题
Theme URI: https://example.com/my-theme
Author: 你的名字
Author URI: https://example.com
Description: 这是一个用于学习的自定义WordPress主题。
Version: 1.0
License: GPL v2 or later
Text Domain: my-custom-theme
*/

index.phpJde o hlavní šablonový soubor tématu, který slouží jako výchozí záložní šablona pro všechny stránky. Je to výchozí bod hierarchie šablon.

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.

Hierarchie šablon

Hierarchie šablon je jednou z nejsilnějších vlastností WordPressu. Určuje, který soubor šablony WordPress použije k zobrazení na základě typu požadavku na stránku. Například při návštěvě blogového článku WordPress postupně hledá:single-post-{id}.php > single-post.php > single.php > singular.php > index.phpPokud pochopíte tuto hierarchii, budete schopni vytvořit konkrétní šablonové soubory (např.…)page-about.phparchive.phpsingle.phpSlouží k přesnému ovládání způsobu zobrazení různých obsahů.

Organizovat tematické zdroje informací

Strukturovaný adresář témat obvykle zahrnuje:/assetsSložka (obsahující)/css/js/imagesPodadresář slouží k uložení statických zdrojů./template-partsSoubory složky slouží k ukládání znovupoužitelných fragmentů šablon, např. záhlaví stránek.header.php) a zápatí (footer.php) a boční lišta (sidebar.phpProstřednictvím…get_header()get_footer()get_sidebar()Funkce můžete snadno začlenit do hlavní šablony.

Tematické funkce a základní API (Core APIs)

Funkce této tématiky jsou…functions.phpTento soubor slouží k implementaci vašeho tématu “Řídicí centrum” a je určen k přidávání nových funkcí, registraci vlastností a integraci s jádrem WordPress API.

inicializace tématu a styly skriptů

functions.phpV tomto případě byste měli použít…wp_enqueue_style()wp_enqueue_script()Funkce slouží k správnému načtení souborů CSS a JavaScript. Nejlepší praxí je provádět tyto operace pomocí vhodných nástrojů nebo metod.wp_enqueue_scriptsNa tomhle háčku.

Doporučujeme k přečtení. Kompletní průvodce vývojem WordPress temat: Od základů až po pokročilé techniky

function my_theme_scripts() {
    // 引入主样式表
    wp_enqueue_style( 'my-theme-style', get_stylesheet_uri() );
    // 引入自定义JavaScript文件
    wp_enqueue_script( 'my-theme-navigation', get_template_directory_uri() . '/assets/js/navigation.js', array(), '1.0', true );
}
add_action( 'wp_enqueue_scripts', 'my_theme_scripts' );

Registrování funkcí tématu

WordPress nabízí řadu “vlastností temat” (theme features), které můžete využít k personalizaci vzhledu a funkcí své webové stránky.add_theme_support()Funkce slouží k deklaraci toho, že váš téma podporuje určité funkce. Toto je způsob, jakým téma komunikuje s editorem WordPress a dalšími funkcemi.

function my_theme_setup() {
    // 支持文章和页面的特色图像
    add_theme_support( 'post-thumbnails' );
    // 支持自定义Logo
    add_theme_support( 'custom-logo' );
    // 支持HTML5标记(用于搜索表单、评论表单等)
    add_theme_support( 'html5', array( 'search-form', 'comment-form', 'comment-list', 'gallery', 'caption' ) );
    // 支持全站编辑器的样式
    add_theme_support( 'wp-block-styles' );
}
add_action( 'after_setup_theme', 'my_theme_setup' );

Menu a boční panel

projít (účtem, kontrolou atd.)register_nav_menus()Funkce umožňuje definovat umístění navigačních prvků v tématu, např. “hlavní navigace” a “navigace v podobě patice”. Následně mohou uživatelé tyto menu spravovat v administraci pod položkou “Vzhled” -> “Menu” a na straně klienta je zobrazovat podle potřeb.wp_nav_menu()Volání funkce.

Oblast nástrojů (boková lišta) je zobrazena pomocí…register_sidebar()Registrování funkcí. To umožňuje uživatelům dynamicky přidávat obsah do těchto oblastí prostřednictvím rozhraní nástrojů v pozadí.

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.

Šablony a cykly

Šablony v WordPressu využívají vestavěné PHP funkce, které umožňují dynamické vytváření obsahu v souborech šablon. “Cykly” jsou naopak struktury PHP kódu, které slouží k načítání a zobrazování článků z databáze.

Porozumění hlavnímu cyklu

Cykly jsou jádrem WordPress temat. Jejich základní struktura je následující:

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
    <article id="post-<?php the_ID(); ?>" no numeric noise key 1006>
        <h2><a href="/cs/</?php the_permalink(); ?>"><p><strong> Řekněte mi něco o sobě.</strong></p></a></h2>
        <div class="entry-content">
            <?php the_content(); ?>
        </div>
    </article>
<?php endwhile; else : ?>
    <p><?php esc_html_e( '抱歉,没有找到任何内容。', 'my-custom-theme' ); ?></p>
<?php endif; ?>

V tomto cyklu…the_title()the_content()the_permalink()Všechny tyto značky jsou šablonové značky, které vypíšou data odpovídající aktuálnímu článku.

Doporučujeme k přečtení. Podrobný rozbor jádra vývoje temat: Kompletní průvodce vytvářením efektivních WordPress temat od nuly

Podmínkové značky

Podmínkové značky (jako např.)is_home()is_single()is_page()is_archive()Umožňovat vám provádět různý kód v závislosti na typu aktuálně zobrazované stránky je klíčem k realizaci kontroly logiky šablon.

<?php if ( is_front_page() && is_home() ) : ?>
    <!-- 这是博客文章索引页,同时被设置为首页 -->
<?php elseif ( is_front_page() ) : ?>
    <!-- 这是静态首页 -->
<?php elseif ( is_home() ) : ?>
    <!-- 这是博客文章索引页(非首页) -->
<?php endif; ?>

Pokročilý vývoj a úprava celé webové stránky

Se zrálím Gutenbergového editoru v WordPressu vstoupil vývoj temat do éry “celostátního editování” („full-site editing“). To vyžaduje, aby vývojáři znali nejen PHP, ale také byli obeznámeni s blokovým editorem, blokovými tematy a webovými technologiemi.

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.

Vytvořit tematický blok

Témata typu „block“ jsou témata vytvořená především pomocí HTML blokových šablon a souborů s komponentami šablon, která jsou hluboce integrována s editorem Gutenberg. Každé téma typu „block“ obsahuje alespoň:theme.jsonSoubory (používané pro globální styly a nastavení)templatesSložka (obsahující)index.htmlBlock-based templates (…)partsSložka (obsahující)header.htmlTyto soubory využívají HTML a blokové značky (jako např.)

LikaCloud

Strukturu je definována pomocí…

Používání souboru `theme.json` k správě globálních stylů

theme.jsonSoubory jsou ústředním prvkem funkce „block themes“. Umožňují vám centrálně definovat nastavení jako jsou palety barev, písma, mezery atd., která se poté automaticky synchronizují s editorem bloků, čímž se zajišťuje uživateli konzistentní zážitek při editování.

{
    "version": 2,
    "settings": {
        "color": {
            "palette": [
                { "name": "主色", "slug": "primary", "color": "#1e73be" },
                { "name": "次要色", "slug": "secondary", "color": "#81d742" }
            ]
        }
    }
}

Vytvoření vlastních bloků

Pro poskytnutí jedinečných funkcí může být nutné vytvořit vlastní bloky. To obvykle zahrnuje inicializaci projektu pluginu pomocí nástroje @wordpress/create-block a následně psaní logiky pro editaci bloku a jeho přední stranu (frontend) pomocí moderního JavaScriptu (např. React). Ačkoli to přibližuje vývoj pluginů, stává se to stále důležitějším pro komerční témata, která chtějí poskytovat hlubokou personalizaci.

Závěr

Vývoj tem pro WordPress je cesta, která začíná pochopením základní struktury souborů, postupně se zaměřuje na jádro API a systém šablon a nakonec přijímá moderní technologie blokového editování. Začátečníci by měli začít vytvářením klasických PHP tem a důkladně si osvojit hierarchii šablon, cykly a další základní prvky.functions.phpVyužití těchto dovedností. S postupem zlepšování svých schopností se rozšiřují možnosti pro další výzkum a objevování.theme.jsonTemata typu „block“ se stanou nezbytností, což vám umožní vytvářet webové stránky, které jsou silnější a lépe odpovídají budoucím standardům. Pamatujte, že kvalitní temata zahrnují nejen vzhled, ale také kombinaci kvality kódu, výkonu, přístupnosti a uživatelského zážitku. Neustálé studium oficiálních příruček a vývojářských zdrojů je klíčem k tomu, abyste své dovednosti drželi v souladu s nejnovějšími trendy.

Časté dotazy

Jaké předpokládané znalosti jsou potřebné k naučení se vývoji temát pro WordPress?

Potřebujete mít základní znalosti HTML a CSS, které jsou základem pro vytváření vizuální struktury webových stránek. Stejně tak je důležité mít základní povědomí o PHP, protože jádro WordPressu a tradiční tematika jsou převážně naprogramována v PHP. Čím větší je vaše znalost JavaScriptu (zejména ES6+), tím lépe, zejména při vývoji vlastních bloků nebo při hluboké interakci s editorem Gutenberg.

Jak ladit WordPress téma, které právě vyvíjím?

Nejprve se ujistěte, že…wp-config.phpAktivováno v souboru.WP_DEBUGWP_DEBUG_LOGTímto způsobem budou chyby a varování PHP zaznamenány do souboru protokolů (log file), místo aby byly zobrazeny na stránce. Dále můžete použít nástroje pro vývojáře v prohlížeči (např. Chrome DevTools nebo Firefox Developer Tools) k kontrole struktury HTML, stylů CSS a chyb v JavaScriptu. U složitější logiky lze využít další nástroje nebo metody k účinnějšímu ladění kódu.error_log()Funkce vypíše hodnoty proměnných do PHP chybového logu za účelem jejich analýzy.

Jaký je rozdíl mezi podtématy (subtopics) a hlavními tématy (parent topics)? Které z nich bych měl použít?

Příspěvek „Parent Theme“ označuje samostatný, plně funkční téma. Dceřiné téma („Subtopic“) dědí všechny funkce, styly a šablony z rodičovského tématu a umožňuje vám bezpečně přepsat některé soubory rodičovského tématu.style.cssfunctions.phpNebo konkrétní šablony souborů), aniž by to ovlivnilo základní soubory mateřského tématu. Toto je osvědčená praxe pro zachování vašich vlastních úprav při aktualizaci mateřského tématu. Pro začátečníky je bezpečným a efektivním způsobem učení začít úpravami podtematů již existujícího mateřského tématu (např. série Twenty Twenty). Až budete potřebovat mít plnou kontrolu nad celým designem, pak můžete vytvořit samostatné mateřské téma.

Jak mohu zajistit, aby můj blog nebo web byl příznivý pro SEO (Search Engine Optimization)?

Ujistěte se, že vaše tematický obsah obsahuje sémantické HTML5 značky (používejte je).add_theme_support( 'html5' )Pro přidání obrázku:altAtributy, a vytvořte jasnou, hierarchickou strukturu nadpisů (h1, h2, h3). Téma by mělo podporovat základní funkce SEO, např. prostřednictvím…add_theme_support( 'title-tag' )Nechte WordPress automaticky spravovat nadpisy stránek a ujistěte se, že webové stránky plně reagují na mobilní zařízení. Kromě toho udržujte kód stručný a optimalizujte rychlost načítání obrázků a skriptů, protože rychlost načítání stránek je důležitým faktorem při rankování webových stránek v vyhledávačích.