Od nuly k mistrovství: Kompletní průvodce vývojem WordPress temat a praktické tutoriály

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

Klíčové koncepty a základy vývoje temát pro WordPress

Než začnete psát jakýkoli kód, je zásadní pochopit základní koncepty WordPress témat. WordPress téma je v podstatě souborová kolekce, která definuje vzhled webové stránky – od uspořádání stránek, barev po styl písma. Dodržuje určitou strukturu adresářů a interaguje s jádrem systému WordPress, aby obsah byl dynamicky zobrazen.

Podstatou tohoto tématu jsou šablony. Tyto soubory založené na PHP určují způsob zobrazení různých typů obsahu. Například…index.phpJedná se o hlavní šablonový soubor, který se používá, když WordPress nenajde konkrétnější šablonu. Úvodní stránka (hlavní stránka) je obvykle vytvořena na základě této hlavní šablony.home.phpfront-page.phpOvládání: Jednotlivé články jsou…single.phpOvládání je zajištěno… Zatímco stránka je…page.phpOvládání.

Dalším klíčovým souborem jestyle.cssNení to pouze soubor se všemi styly tématu, ale také slouží jako “občanský průkaz” tohoto tématu. Blok s poznámkami v hlavě tohoto souboru obsahuje důležité metadaty, jako je název tématu, autor, popis, verze a další. Bez správných informací…style.cssWordPress nebude schopen rozpoznat váš téma. Jeho základní struktura je následující:

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

/*
Theme Name: 我的第一个主题
Theme URI: https://example.com/my-first-theme
Author: 开发者名称
Author URI: https://example.com
Description: 这是一个为学习而创建的WordPress主题。
Version: 1.0.0
License: GPL v2 or later
Text Domain: my-first-theme
*/

Vytvoření struktury vašeho prvního tematického souboru

Vytvoření funkčně kompletní a strukturálně jasné tematiky vyžaduje dodržování standardních adresářových a souborových organizačních pravidel. Základní, ale kompletní tematika může být vybudována z několika klíčových souborů.

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.

Kromě výše uvedeného…index.phpstyle.cssKromě toho obsahuje robustní téma obvykle následující klíčové soubory:
1. functions.phpToto je “mozek” tématu – slouží k přidávání funkcí daného tématu, registračnímu menu, bočnímu panelu (oblasti pro widgety), načítání skriptů a stylů atd. Není to sám o sobě šablonový soubor, ale každé téma by ho mělo obsahovat.
2. header.phpHTML struktura obsahující hlavičku webových dokumentů, navigační menu a začátek stránky.
3. footer.phpObsahuje informace o autorských právech, skripty a závěrečné značky (end tags) umístěné na spodní část stránky.
4. sidebar.phpDefinice HTML struktury pro boční panel.
5. page.phpsingle.phpJsou použity k renderování statických stránek a jednotlivých článků.

Efektivní vývojový pracovní postup zahrnuje vytvoření hlavní šablonové souborové struktury.index.phpChcete-li načíst tyto části souborů, použijte vestavěné funkce šablon WordPress:

<?php get_header(); ?>

<main id="main">
    &lt;?php
    if ( have_posts() ) :
        while ( have_posts() ) : the_post();
            // 显示内容
            the_title( &#039;<h1>', '</h1>' );
            the_content();
        endwhile;
    else :
        echo '<p>没有找到内容。</p>';
    endif;
    ?&gt;
</main>

functions.phpV tomto dokumentu můžete použít následující způsoby:add_actionFunkce pro registraci pomocí „hooků“ – např. přidání podpory pro zobrazení přehledných obrázků („feature images“) k článkům:

<?php
// 为主题添加基本支持
function mytheme_setup() {
    // 启用文章和页面上的“特色图像”功能
    add_theme_support( 'post-thumbnails' );
    // 添加对HTML5标记的支持
    add_theme_support( 'html5', array( 'search-form', 'comment-form', 'comment-list', 'gallery', 'caption' ) );
    // 注册一个主导航菜单
    register_nav_menus( array(
        'primary' => __( '主导航菜单', 'my-first-theme' ),
    ) );
}
add_action( 'after_setup_theme', 'mytheme_setup' );

Využití hierarchie šablon a systému cyklů

Systém úrovní šablon v WordPressu je soubor pravidel, které určují, který soubor šablony se má použít pro konkrétní požadavek na stránku. Porozumění tomuto uspořádání úrovní je klíčové pro vývoj pokročilých temát (témů), neboť vám umožňuje vytvářet velmi přizpůsobené rozložení různých částí webové stránky.

Doporučujeme k přečtení. Naučte se vývoj WordPress témat od nuly: vytvořte si personalizovanou webovou stránku.

Když uživatel navštíví vaše webové stránky, WordPress vyhledá odpovídající šablonové soubory na základě aktuálního typu obsahu (např. blogový článek, stránka, archiv kategorií atd.). Pořadí vyhledávání sleduje princip od nejkonkrétnějšího k nejobecnějšímu. Například pro stránku s ID 5 bude WordPress vyhledávat postupně:
1. page-5.php (Vytvořeno speciálně pro tento ID stránky)
2. page-sample-page.php (Použít alternativní název stránky)
3. page.php (Všeobecný šablonový formulář)
4. singular.php (Všeobecný jednotný obsahový šablon)
5. index.php (Konečné zpětné nastavení)

Ústředním prvkem zobrazení všech obsahů je “WordPress Loop”. Jedná se o blok kódu v PHP, který slouží k procházení výsledného souboru základů aktuálního dotazu a zobrazení každého článku nebo stránky. Základní struktura tohoto cyklu je v podstatě stejná ve všech šablonových souborech:

&lt;?php
if ( have_posts() ) :
    while ( have_posts() ) : the_post();
        // 当前文章/页面的内容在这里输出
        the_title( &#039;<h2 class="entry-title"><a href="/cs/' . esc_url( get_permalink() ) . '/">', '</a></h2>' );
        the_excerpt(); // 或使用 the_content()
    endwhile;
    the_posts_navigation(); // 文章导航链接
else :
    // 如果没有找到任何内容
    _e( '抱歉,没有找到符合您要求的内容。', 'textdomain' );
endif;
?&gt;

Pro zvýšení modulárnosti a udržovatelnosti šablon doporučuje WordPress používání…get_template_part()Funkce. To vám umožňuje oddělit společný zobrazení kódu (např. shrnutí článku, metadata článku) do samostatných souborů a používat je opakovaně.

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.
// 在 archive.php 或 index.php 中
while ( have_posts() ) : the_post();
    get_template_part( 'template-parts/content', get_post_format() );
endwhile;

Tento kód se pokusí načíst…template-parts/content-{post-format}.php(Například)content-video.phpPokud neexistuje, pak se načte.template-parts/content.php

Pokročilé funkce: Nástroj pro vytváření tematických nastavení a vlastních polí

Vývoj moderních WordPress temat se nezaměřuje pouze na vzhled, ale také na poskytnutí uživatelům intuitivních možností přizpůsobení. Nástroj pro přizpůsobování WordPress temat (WordPress Customizer) nabízí rozhraní s možností přímého náhledu, které umožňuje uživatelům měnit nastavení temat bez nutnosti editování kódu.

functions.phpV tom můžete použít…$wp_customizeK objektu lze přidávat nastavení, ovládací prvky a bloky. Například lze přidat možnost pro zobrazení textu s autorskými právy v podnímkové části stránky.

Doporučujeme k přečtení. Od nuly k jedné: základní dovednosti a praktické pokyny pro vývoj moderních WordPressových témat.

function mytheme_customize_register( $wp_customize ) {
    // 添加一个新的设置
    $wp_customize->add_setting( 'mytheme_footer_text', array(
        'default'           => '© 2026 我的网站。保留所有权利。',
        'sanitize_callback' => 'sanitize_text_field',
        'transport'         => 'postMessage', // 实现实时预览
    ) );

// 添加一个控件来编辑这个设置
    $wp_customize->add_control( 'mytheme_footer_text', array(
        'label'    => __( '页脚版权文本', 'my-first-theme' ),
        'section'  => 'title_tagline', // 放在“站点身份”区域
        'type'     => 'text',
    ) );
}
add_action( 'customize_register', 'mytheme_customize_register' );

A poté,footer.phpV tomto dokumentu můžete použít následující způsoby:get_theme_mod()Funkce vypisuje tento hodnotu:

echo esc_html( get_theme_mod( 'mytheme_footer_text', '默认版权文本' ) );

Pro složitější strukturu obsahu jsou metadata článků (vlastní pole) a rozšíření klasifikací velmi užitečné nástroje. Můžete je implementovat pomocí pluginů pro pokročilá vlastní pole (Advanced Custom Fields – ACF) nebo nativních funkcí WordPressu. Například můžete článku přidat pole “Délka čtení”.

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.
// 在 single.php 中显示自定义字段
$reading_time = get_post_meta( get_the_ID(), 'reading_time_minutes', true );
if ( $reading_time ) {
    echo '<span class="reading-time">Doba čtení: '. intval($reading_time).' minut</span>';
}

Pro vytvoření dynamičtějších stránek je běžným trikem vytvoření vlastních šablon stránek. Stačí přidat konkrétní blok komentářů na začátek PHP souboru a tyto šablony se pak zobrazí v rozbalovacím menu určeném k výběru šablon stránek.

<?php
/*
Template Name: 全宽页面模板
*/
get_header();
?>
<!-- 你的全宽内容布局代码 -->
<?php get_footer(); ?>

Závěr

Vývoj tem pro WordPress je komplexní dovednost, která kombinuje design, front-end technologie a back-end logiku. Začínáme pochopením těch nejzákladnějších principů…style.cssindex.phpZačněte s čtením souboru a postupně si osvojte pravidla hierarchie šablon a systém cyklů – to je základ pro vytváření funkčních temat. Modulární struktura temat a jejich efektivní využití vám pomohou při jejich vývoji.functions.phpget_template_part()Funkce mohou výrazně zlepšit udržovatelnost a znovupoužitelnost kódu.

V pokročilé fázi vývoje může hluboké integrování personalizátorů témat poskytnout uživatelům přívětivý a v reálném čase fungující zážitek při nastavování. Pružné využívání vlastních polí a šablon stránek umožňuje vytvořit obsahové uspořádání, které splňuje složité požadavky. Dodržování oficiálních kódovacích standardů a osvědčených postupů WordPressu je klíčové pro zajištění bezpečnosti, efektivity vašeho tématu a jeho kompatibilitě s celým WordPress ekosystémem. Právě to umožní vaše vývojářské dovednosti posunout z úrovně “fungujících” na úroveň “odborných”.

Časté dotazy

Jaký je rozdíl mezi tematikami (templates) a doplňky (plugins) pro WordPress?

Témata ovládají především vzhled webové stránky a její vzhledovou prezentaci na straně uživatele – určují rozložení obsahu, barevné schéma, sazbu a další vizuální aspekty. Interagují přímo s hierarchií šablon v WordPressu prostřednictvím souborů šablon.

Pluginy slouží k rozšíření funkcí webové stránky – mohou přidat nové vlastnosti, jako jsou kontaktní formuláře, nástroje pro optimalizaci vyhledávačů nebo funkce pro elektronický obchod, aniž by se změnil vzhled stránky. Na jedné webové stránce může být aktivováno pouze jedno téma, ale lze nainstalovat a aktivovat více pluginů.

Jaký je správný způsob registrace stylů a skriptů v souboru functions.php?

Správný způsob je použít…wp_enqueue_scripts„Hooky“ – to zajišťuje správné zpracování závislostí mezi jednotlivými komponentami a předchází jejich duplicitnímu načítání. Zde je standardní příklad:

function mytheme_enqueue_assets() {
    // 注册并排队主样式表
    wp_enqueue_style( 'mytheme-main-style', get_stylesheet_uri(), array(), '1.0.0' );
    // 注册并排队一个自定义JavaScript文件
    wp_enqueue_script( 'mytheme-custom-script', get_template_directory_uri() . '/js/custom.js', array('jquery'), '1.0.0', true );
}
add_action( 'wp_enqueue_scripts', 'mytheme_enqueue_assets' );

Absolutně nepoužívejte žádné prvky přímo v souborech šablon.linkscriptHardkódování značek (tagů) pro načítání zdrojových souborů není v souladu s osvědčenými postupy používání WordPressu a může vést k konfliktům nebo problémům s výkonem.

Co je to podtémata (subtopics), proč je používat a jak s nimi pracovat?

Podtémata jsou témata, která závisí na jiném tématu (nazývaném mateřským tématem). Umožňují vám upravovat nebo rozšiřovat funkce a vzhled mateřského tématu, aniž byste museli přímo měnit soubory tohoto mateřského tématu. Výhodou tohoto přístupu je, že pokud dojde k aktualizaci mateřského tématu, vaše vlastní úpravy (uváděné v podtématech) nebudou přepsány, což zajišťuje bezpečnost a usnadňuje údržbu.

Vytvoření podtématu je velmi jednoduché. Nejprve…/wp-content/themes/V adresáři vytvořte novou složku (například…)mytheme-childPoté v něm vytvoříte něco nového.style.cssSoubor – jeho počáteční poznámky („header comments“) musí obsahovat…Template:Zadejte název adresáře s hlavním tématem.

/*
Theme Name: 我的主题子主题
Template: my-first-theme
*/

Poté můžete v rámci podtémat…style.cssPřidejte pravidla stylů do daného souboru, nebo vytvořte šablonový soubor se stejným názvem, který překryje odpovídající šablonový soubor základní (rodičovské) tematiky.

Jak zajistit, aby mé téma podporovalo vícejazyčné překlady?

Umožnit vašemu projektu podporu internacionalizace (i18n) a lokalizace je důležitým krokem na cestě k profesionálnímu vývoji. Je nutné používat funkce pro lokalizaci poskytované WordPressem k obalení všech textových řetězců, které se zobrazují uživatelům na straně klienta.

Nejprve použijte to na všech stránkách, které lze přeložit.__()(Použito pro návratové hodnoty) nebo_e()(Funkce slouží k přímému zobrazení výstupu) a nastaví se textové pole (Text Domain).functions.phpV čínštině se používáload_theme_textdomain()Funkce načítá soubor s překladovými daty.

// 在 functions.php 中
function mytheme_load_textdomain() {
    load_theme_textdomain( 'my-first-theme', get_template_directory() . '/languages' );
}
add_action( 'after_setup_theme', 'mytheme_load_textdomain' );

// 在模板文件中使用
_e( '阅读更多', 'my-first-theme' );
$heading = __( '最新文章', 'my-first-theme' );

Poté můžete použít nástroje, jako je Poedit, k prohledání řetězců v souborech temat a jejich generování..potSoubory a vytvoření verzí pro různé jazyky..po.moSoubor by měl být umístěn do tématu./languages/V adresáři.