Naučte se vyvíjet témata pro WordPress: vytvořte profesionální webové téma od nuly do jedné.

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

Základní struktura a klíčové soubory při vývoji tem pro WordPress

Standardní WordPress téma dodržuje určitou strukturu adresářů a pravidla pro soubory. Porozumění těmto pravidlům je základem pro jakýkoli vývoj. Každé téma musí obsahovat soubor se šablonami (style sheet) a počáteční šablonu (initial template).

Klíčové soubory jsou základem tématu.style.cssSoubor nejenže definuje vzhled webové stránky, ale také prostřednictvím poznámek v hlavičce souboru (Header Comment) sděluje WordPressu metadata tématu, jako je název tématu, autor, popis a verze. Bez správného formátování…style.cssWordPress nebude schopen tento téma rozpoznat.

index.phpJedná se o nejzákladnější možnost návratu v hierarchii šablon – o soubor, který musí být přítomen v každém tématu. Kromě těchto dvou souborů patří mezi běžné základní šablonové soubory také…header.php(Náhlaví)footer.php(Podstrana)sidebar.php(Sidebar) Afunctions.php(Soubor s funkcemi.)functions.phpHraje speciální roli – není to tradiční šablonový soubor, ale “plug-inový” soubor určený k vylepšení funkcí tématu, registrace menu, přidání podpory pro speciální obrázky atd.

Doporučujeme k přečtení. Vývoj tem pro WordPress: Kompletní průvodce od základů po mistrovství – Vytváření vlastních webových stránek

Díky spolupráci s těmito soubory vytvořil WordPress dynamický obsah webových stránek. Například,header.phpV tom případě budete volat…wp_head()Funkce – to jsou klíčové „hooky“ v jádře WordPressu a při instalaci pluginů, které slouží k vložení potřebného kódu (např. CSS a JavaScript). Stejně tak…footer.phpBude použito v…wp_footer()Hák.

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.

Prohloubení se do úrovní šablon a mechanismů hlavního cyklu

Síla WordPressu spočívá v jeho inteligentním systému “úrovní šablon”. Při navštívení určité adresy (URL) vybere WordPress automaticky nejvhodnější šablonu podle typu požadované informace a na základě této šablony renderuje stránku. Například při návštěvě článku v blogu WordPress postupně hledá odpovídající šablonu…single-post.phpsingle.phpA nakonec se vrátit zpátky naindex.phpTato hierarchická struktura umožňuje vývojářům vytvářet personalizované rozložení pro různé typy obsahu (jako jsou stránky, kategorie, tagy, stránky autorů).

Porozumět způsobu fungování hlavního cyklu

Ústředním bodem všeho zobrazeného je “hlavní cyklus” (The Loop). Jedná se o strukturu kódu v PHP, která slouží k kontrole a zobrazení příspěvků (Posts) z aktuálního dotazu na stránce. Obvykle se používá…ifwhilePoužijte příkazy k procházení dat o příspěvcích.

Zde je příklad základní struktury cyklu:

<article id="post-<?php the_ID(); ?>" no numeric noise key 1005>
            <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>

V tomto cyklu…have_posts()the_post()Funkce řídí tok provádění kódu, zatímco šablony (template tags) slouží k určení struktury a vzhledu webových stránek.the_title()the_content()the_permalink()Takto se zobrazují konkrétní údaje o příspěvcích.

Doporučujeme k přečtení. Kompletní průvodce vývojem témat pro WordPress: Vytvořte profesionální webové téma od nuly do jedné

Implementace logického posuzování podmínek pomocí značek

“Podmínkové značky” jsou nástroje pro logické rozhodování, které doplňují strukturu šablon. Umožňují vám v souborech šablon spouštět různý kód v závislosti na různých podmínkách – např. na tom, zda se jedná o úvodní stránku, zda se jedná o jednotlivý článek, nebo zda je uživatel přihlášen. Můžete je například použít v šablonách bočních panelů.if ( ! is_page( ‘about’ ) )Pokud se nejedná o stránku typu “O”, zobrazí se určitá reklamní oblast. Podmínkové značky (condition tags) činí tematické šablony flexibilnějšími a inteligentnějšími.

Integrace funkcí a personalizace témat

Moderní WordPress témata nejsou pouze „pokožkami“ pro zobrazení obsahu, ale také nositeli různých funkcí. Díky tomu…functions.phpPřidáním kódu do daného prostoru lze bezpečně rozšiřovat a upravovat chování tématu, aniž by bylo nutné měnit základní soubory.

Přidání podpory temat a registračního navigačního menu

Mnoho funkcí jádra WordPressu vyžaduje, aby téma výslovně deklarovalo svou podporu. To se dosahuje pomocí…add_theme_support()Implementace funkcí. Například povolení využití speciálních obrázků u článků, vlastních logů nebo formátování článků. Pro registraci navigačního menu se použije…register_nav_menus()Funkce slouží k definování umístění nabídek (např. “hlavní menu v horní části stránky”, “menu v dolní části stránky”) a poté k jejich zobrazení.wp_nav_menu()Volat v šabloně.

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.

Níže je uveden příklad.functions.phpPříklad registrace menu a aktivace funkce speciálních obrázků:

function mytheme_setup() {
    // 注册菜单位置
    register_nav_menus( array(
        ‘primary’ => __( ‘主要导航菜单’, ‘mytheme’ ),
        ‘footer’  => __( ‘页脚菜单’, ‘mytheme’ ),
    ) );

// 为主题添加特色图片支持
    add_theme_support( ‘post-thumbnails’ );

// 添加HTML5标记支持
    add_theme_support( ‘html5’, array( ‘search-form’, ‘comment-form’, ‘comment-list’, ‘gallery’, ‘caption’ ) );
}
add_action( ‘after_setup_theme’, ‘mytheme_setup’ );

Správný způsob načítání šablon stylů a skriptů

Z důvodu výkonu a bezpečnosti by se nemělo přímo vkládat hardlinky na soubory CSS a JS do šablonových souborů. Mělo by se použít jiné řešení.wp_enqueue_style()wp_enqueue_script()Funkce. Tyto funkce zajišťují správu závislostí, zabránějí opakovanému načítání a umožňují interakci pluginů a dalšího kódu. Správné načítání kódu by mělo být propojeno s odpovídajícími mechanismy.wp_enqueue_scriptsV akci.

Vytvoření a použití vlastních možností tematického nastavení

Aby bylo možné uživatelům upravovat vzhled témat bez nutnosti měnit kód (např. měnit barvy, nahrávat logo), je potřeba vytvořit možnosti pro přizpůsobení tématu (tzv. “Customizer”) nebo nastavení webové stránky. API pro přizpůsobování WordPress témat to umožňuje.$wp_customize->add_setting()$wp_customize->add_control()Metody jako tyto vám umožňují přidávat různé ovládací prvky (výběrů barvy, nástroje pro nahrávání obrázků, rozebíratelné seznamy atd.) a zároveň zajistit jejich reálný, přehledný předváděcí efekt v reálném čase. To výrazně zvyšuje uživatelskou přívětivost a profesionalitu daného

Doporučujeme k přečtení. Kompletní průvodce vývojem témat WordPressu: vytvořte profesionální webové téma od nuly.

Pokročilé vývojové techniky a optimalizace výkonu

Vytvoření profesionálního tématu znamená nutnost zvážit kvalitu kódu, udržovatelnost, bezpečnost a výkon.

Zajištění bezpečné úpravy podtématu

Nikdy nepřímo upravujte kód třetích stran nebo mateřských témat, protože aktualizace přepsají vaše změny. Správný postup je vytvořit “dceřiná témata”. Dceřiná témata potřebují pouze…style.cssA s jedním…functions.phpPokud použijete tento soubor, můžete zdědit všechny funkce a styly základního tématu a poté bezpečně přepsat nebo přidat nové funkce. Jedná se o osvědčenou postup při přizpůsobování témat a jejich dlouhodobé údržbě.

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ření reaktivního rozvrhu

Se zvýšeným počtem návštěv z mobilních zařízení je nutné, aby byly webové stránky reaktivní (tj. aby se správně zobrazovaly na různých velikostech obrazovek). Toho je dosaženo především pomocí CSS media queries, které umožňují pružné přizpůsobování vzhledu stránek v závislosti na velikosti obrazovky. Samotné jádro WordPressu také generuje různé velikosti obrázků v závislosti na velikosti obrazovky. Můžete to využít k optimalizaci vzhledu vašich wesrcsetVlastnosti slouží k optimalizaci načítání obrázků.

Příprava na internacionalizaci a lokalizaci

Aby bylo možné téma používat uživateli po celém světě, je nutné provést jeho “ internacionalizaci” (i18n). To znamená, že všechny textové stránky určené pro uživatele musí být obaleny pomocí funkcí pro překlad v WordPressu.__( ‘Read More’, ‘mytheme’ )esc_html_e( ‘Hello World’, ‘mytheme’ )Mezi nimimythemeJedná se o textové pole, které musí odpovídat názvu tématu („slug“). Poté může překladatel tento text použít k dalším účelům..potByly vytvořeny soubory v různých jazycích..moPřekládání dokumentů.

Optimalizace výkonnosti tématu

Výkon je zásadní. Mezi opatření ke zlepšení výkonu patří: sloučování a kompresování souborů CSS/JavaScript, využívání WordPressového cache API, zajištění efektivních databázových dotazů (vyhýbání se jejich provádění v cyklech) a využití vestavěných skriptů a stylů WordPressu ke snížení počtu HTTP požadavků. Během vývojové fáze je třeba vždy dodržovat standardy kódování WordPressu a pro SQL dotazy, výstup šablon a uživatelské vstupy používat vhodné funkce na čištění, ověřování a escape.wp_kses(), esc_attr(), prepare()), aby se zabránilo bezpečnostním zranitelnostem.

Závěr

Zvládnutí vývoje temát pro WordPress je postupný proces, který začíná pochopením základní struktury souborů a hierarchie šablon, pokračuje prozkoumáváním mechanismů cyklic a integrace funkcí a nakonec vede ke zlepšení výkonu a zvýšení bezpečnosti. Klíčem k vytvoření profesionálního temátu je dodržování osvědčených postupů: využívání „hooků“ a funkcí k rozšíření funkcionalit, aktivace přizpůsobitelných možností pro uživatele a neustálé dbání na responzivní design, podporu internacionalizace a výkonnost kódu. Vytvořením podtemátů zajistíte, že vaše práce bude připravena na budoucí aktualizace a údržbu, což zaručí její dlouhodobou životaschopnost. Neustálé učení a dodržování kódovacích standardů doporučovaných komunitou je jediným způsobem, jak se stát skvělým vývojářem temát pro WordPress.

Časté dotazy

K vývoji temat pro WordPress jsou potřebné následující základní znalosti:

Pro vývoj tem pro WordPress je nutné ovládat základy HTML, CSS a PHP. Stejně tak je přínosné mít určité znalosti JavaScriptu, zejména v oblasti zpracování interaktivních a dynamických obsahů. Pochopení základních konceptů WordPressu, jako jsou hierarchie šablon, hlavní cyklus (The Loop) a háčky (Hooks), je klíčové pro úspěšný vývoj tem.

Jaký je hlavní rozdíl mezi tematickými soubory a soubory pluginů?

Tematický soubor (nachází se v)/wp-content/themes/Hlavní funkcí je řízení způsobu zobrazení obsahu webové stránky, tedy vzhledu a uspořádání stránky. Soubory plug-inů (umístěné na…)/wp-content/plugins/Slouží k přidávání nových funkcí na webové stránky, které mohou existovat nezávisle na aktuálně používaném tématu. Jednoduché pravidlo pro rozhodování je následující: Změny ovlivňující vzhled se obvykle provádějí v rámci tématu, zatímco kód určený k přidání nových funkcí je vhodnější umístit do pluginů.

Proč se moje vlastní styly po aktualizaci ztratily?

To je obvykle způsobeno tím, že jste přímo upravili mateřské téma nebo téma třetí strany.style.cssPokud používáte standardní téma a provádíte změny v jeho kódu, tyto změny budou při vydání nové aktualizace tohoto tématu přepsány. Pro trvalé a bezpečné použití vlastních stylů doporučujeme vytvořit podtéma. V podtématu můžete mít své vlastní styly a nastavení, které nebudou ovlivněny aktualizacemi hlstyle.cssSvé stylové pravidla napište do souboru, takže i když se aktualizuje mateřská tematika, vaše vlastní styly nezmizí.

Jak zajistit, aby můj webový design („témata“) podporovalo více jazyků?

Musíte zajistit internacionalizaci svého projektu. Konkrétně to znamená, že ve vašich PHP šablonách musíte všechny textové stránky určené pro uživatele obalit do speciálních funkcí pro překlad. Například:esc_html_e(‘Hello’, ‘my-theme’)Poté použijte nástroj (např. Poedit) k vytvoření….potPřeložte šablonový soubor. Překladatelé mohou na základě této šablony vytvořit překlady do různých jazyků (např.zh_CN.po.moVytvořte soubor s překladem textu. Nakonec načtěte tento soubor do textového pole ve svém tématu a tak dosáhnete přepínání jazyků.