Jak vytvořit personalizovaný WordPress téma: Průvodce od začátku až po pokročilou úroveň

Čtení za 3 minuty.
2026-03-19
2026-06-04
2,747
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říprava vývojového prostředí a nástrojů

Než začnete vyvíjet vlastní temu pro WordPress, je velmi důležité vytvořit efektivní lokální vývojové prostředí. To nejenže izoluje váš vývojový proces od webové stránky online, ale také usnadňuje ladění a testování.

Nejprve potřebujete lokální serverové prostředí. Můžete zvolit integrované balíčky, jako jsou XAMPP, MAMP nebo Laragon, které umožňují jednoduchou instalaci Apache, MySQL/MariaDB a PHP. Pro možnosti bližší moderním vývojovým postupům můžete zvážit použití Dockeru nebo Local by Flywheel – posledně jmenovaný nástroj je speciálně optimalizovaný pro vývoj webových stránek s WordPressem a nabízí pohodlné funkce, jako je kopírování stránek nebo jednoduchá aktivace SSL certifikátů.

Za druhé, editor kódu je vaším hlavním nástrojem. Visual Studio Code je v současné době velmi populární volbou a nabízí širokou škálu doplňků určených k vývoji pro WordPress, jako jsou PHP Intelephense, WordPress Snippet a další. Sublime Text a PhpStorm jsou také silnými alternativami.

Doporučujeme k přečtení. Od nuly ke jedničce: Průvodce celým procesem vývoje WordPress temat a praktické tipy

Na závěr je správa verzí pomocí systémů pro správu verzí standardní součástí profesionálního vývoje. Nainstalujte Git a seznámte se s jeho základními příkazy (např. git init, git add, git commitVytvořte si účet na GitHubu, GitLabu nebo Bitbucketu, abyste mohli uložit svůj kód. To vám pomůže sledovat všechny změny a usnadní týmovou spolupráci.

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.

Základní struktura tématu a klíčové soubory

Nejzákladnější WordPress téma potřebuje ke svému fungování pouze dvě soubory. Avšak pro vytvoření funkčního a standardního tématu je nutné porozumět jeho základní struktuře souborů. Pochopení účelu těchto souborů je základem pro vývoj témat.

Povinné soubory se šablonami a funkcemi

WordPress čte soubory ze složky obsahující tematiku (témata). style.css Informace v hlavičce souboru slouží k identifikaci tématu. Tento soubor obsahuje nejen CSS styly, ale co je ještě důležitější, je blok komentářů na začátku souboru – konkrétně informace o hlavičce tématu. Níže je uveden jeden z nejzákladnějších příkladů:

/*
Theme Name: My Custom Theme
Theme URI: https://example.com/my-custom-theme
Author: Your Name
Author URI: https://example.com
Description: 这是一个全定制化的 WordPress 主题。
Version: 1.0.0
License: GPL v2 or later
Text Domain: my-custom-theme
*/

Text Domain Používá se pro internacionalizaci a jedná se o pole, která musí být správně nastavena. Dalším klíčovým souborem je… functions.phpNení to soubor “funkcí” z jádra WordPressu, ale soubor “funkcí” vašeho tématu. Zde jsou registrovány všechny funkce související s tématem, skripty pro úpravu vzhledu, registrace menu, definice bočních panelů atd. Bude automaticky načten při inicializaci tématu.

Hierarchie souborů šablon

WordPress využívá hierarchii šablon (Template Hierarchy) k určení toho, který soubor šablony má být načten pro konkrétní stránku. Jedná se o jednu z jeho nejsilnějších vlastností. Nejzákladnějším souborem šablony je… index.phpJedná se o finální zpětný vzor („fallback template“) pro všechny stránky. Pro úvodní stránku můžete vytvořit… front-page.phpPro jednotlivé stránky článků lze vytvořit… single.phpPro stránky lze vytvořit… page.php

Doporučujeme k přečtení. Kompletní průvodce pro začátečníky v vývoji WordPress temat: Postavte si své první téma od nuly

Přesnější kontrolu lze dosáhnout vytvořením šablon pro konkrétní stránky nebo kategorie. Například můžete vytvořit šablonu pro stránku s ID 4 s názvem… page-4.php WordPress automaticky použije předdefinované šablony. Také můžete v záložce “Šablony” v editoru stránek vybrat vlastní šablonu, což vyžaduje, abyste na začátek souboru přidali specifické poznámky týkající se šablony.

Vytvoření šablon témat a cyklů

Šablony sestávají z HTML struktury a PHP značek specifických pro WordPress a společně určují způsob zobrazení obsahu webové stránky.

Pochopení hlavního cyklu WordPressu.

Téměř veškeré zobrazení obsahu je založeno na principu “cyklu” (The Loop). Jedná se o základní strukturu kódu v PHP, která slouží k ověření, zda existují články (nebo jakékoli další typy položek), které je třeba zobrazit, a v případě jejich dostupnosti prochází jednotlivé články v cyklu. Typická struktura cyklu vypadá následovně:

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.
<article id="post-<?php the_ID(); ?>" no numeric noise key 1006>
            <header class="entry-header">
                <h2 class="entry-title"><p><strong> Řekněte mi něco o sobě.</strong></p></h2>
            </header>
            <div class="entry-content">
                <?php the_content(); ?>
            </div>
        </article>
    <p>
    <p><?php _e( 'Sorry, no posts matched your criteria.', 'my-custom-theme' ); ?></p>
<?php endif; ?>

V tomto cyklu jsme použili několik klíčových šablonových značek:the_title() Titul článku:the_content() Výstupní text: „You are a professional translation engine. Translate the following Chinese text into Czech: ‘You are a professional translation engine.’“post_class() CSS třídy generované dynamicky na základě obsahu článku:the_ID() Výstupní část obsahuje ID článku, které je zobrazeno jako nápis „Article ID“._e() Je to funkce pro překlad, která slouží k převodu textu z jednoho jazyka do druhého. Text Domain Používejte společně.

Rozdělení šablony a načtení komponent

Aby bylo možné dodržovat zásadu DRY (Don’t Repeat Yourself – Nepoužívejte stejné kódy vícekrát), poskytuje WordPress funkce pro rozdělení a načítání šablon. Dva nejčastěji používané soubory jsou… header.phpfooter.phpMůžete to použít v jakémkoli šabloně. get_header();get_footer(); Představme je zde. Stejně tak lze i boční panel rozdělit na části. sidebar.phpA prostřednictvím… get_sidebar(); Zavedení.

Pro menší, znovupoužitelné komponenty (např. metadata článků, navigační menu) lze použít… get_template_part() Funkce. Například můžete vytvořit jednu funkci. template-parts/content.php Soubor slouží k uložení obecné struktury obsahu v cyklu článků, a poté… index.php V čínštině se to volá takto:get_template_part( 'template-parts/content' );To činí správu a aktualizaci kódu velmi efektivními.

Doporučujeme k přečtení. Ultimátní průvodce vývojem WordPress temat: Vytvoření vlastních šablon od nuly

Vylepšení funkcí témat a možnosti jejich personalizace

Po vytvoření základní struktury tématu je dalším krokem přidání funkcí a jejich přizpůsobitelnosti. To se hlavně dosahuje prostřednictvím… functions.php Kód je napsán v souboru a slouží k realizaci požadovaných funkcí.

Registrování navigačního menu a bočního panelu

WordPress umožňuje temám deklarovat, která umístění navigačních prvků podporují. register_nav_menus() Funkce slouží k registraci. Například:

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.
function my_custom_theme_setup() {
    register_nav_menus(
        array(
            'primary' => __( 'Primary Menu', 'my-custom-theme' ),
            'footer'  => __( 'Footer Menu', 'my-custom-theme' ),
        )
    );
}
add_action( 'after_setup_theme', 'my_custom_theme_setup' );

Následně, ve šablonovém souboru (např. header.phpPoužívá se v…) wp_nav_menu( array( 'theme_location' => 'primary' ) ); Pro zobrazení menu se používá boční panel (v WordPressu označovaný jako “oblast nástrojů”). register_sidebar() Registrování funkce. Je potřeba definovat její název, ID a popis, a poté… sidebar.php Použijte to v čínštině. dynamic_sidebar() Zobrazit to.

Přidání podpory pro tematické nastavení a zavádění zdrojových souborů

Jádro WordPressu a mnoho pluginů poskytují bohaté funkce, avšak je nutné, aby témata (templates) výslovně deklarovala svou podporu pro tyto funkce. To se dosahuje prostřednictvím… add_theme_support() Funkce byla dokončena. Například umožňuje aktivovat speciální obrázky k článkům, vlastní loga, formátování článků atd.:

add_theme_support( 'post-thumbnails' );
add_theme_support( 'custom-logo' );
add_theme_support( 'html5', array( 'comment-list', 'comment-form', 'search-form', 'gallery', 'caption' ) );

Pro soubory CSS a JavaScript je nutné používat… wp_enqueue_style()wp_enqueue_script() Funkce jsou registrovány a načítány ve správném pořadí, namísto toho, aby byly přímo zapsány do HTML kódu. <link><script> Tagy. To zajišťuje správné závislosti mezi komponentami a zabrání jejich duplicitnímu načítání. Obvykle používáme… wp_enqueue_scripts Tento „hook“ slouží k připojení (mountování) těchto operací.

Vytvořit možnosti vlastních nastavení

Pro pokročilejší personalizace byste mohli uživatelům nabídnout různé možnosti temat – např. změnu barev, nahrání informací o autorských právech do podvodu stránky atd. Ačkoli lze pomocí API WordPress Customizeru přidat nastavení s možností přímého přehledu v reálném čase, pro složitější možnosti v administraci je běžným postupem vytvořit samostatnou stránku s administrativními nastaveními.

To zahrnuje použití… add_menu_page()add_submenu_page() Funkce slouží k přidání nových stránek a následně se používá API pro nastavení (Settings API).register_setting, add_settings_section, add_settings_fieldSlouží k bezpečné registraci, ukládání a ověřování možností. Jedná se o relativně pokročilé téma, ale může výrazně zvýšit profesionalitu a uživatelskou přívětivost vašeho tématu.

Závěr

Vývoj personalizovaného tématu pro WordPress je systémový proces, který vyžaduje, aby vývojáři ovládali nejen technologie front-endu a back-endu, jako je PHP, HTML, CSS a JavaScript, ale také hluboké pochopení základní architektury a filozofie WordPressu. Počínaje nastavením lokálního prostředí, přes vytváření souborů v souladu s hierarchií šablon, až po dynamické výstupní obsahy pomocí cyklů a šablonovacích značek – každý krok je základem pro vytvoření jedinečného webového zážitku. Dále… functions.php Vylepšení funkcí, registrace menu a oblasti nástrojů, správné načtení zdrojových souborů – to vše povede k vytvoření tematických možností, které lze přizpůsobit podle potřeb. Vaše tema se tak změní z jednoduché „pokožky“ na výkonný aplikační rámec. Dodržování kódovacích standardů a osvědčených postupů WordPressu nejen zaručí kvalitu a bezpečnost tematického řešení, ale také připraví půdu pro jeho budoucí údržbu a rozšíření.

Časté dotazy

Je nutné být zdatný v PHP při vývoji témat pro WordPress?

Ano, PHP je základním programovacím jazykem WordPressu – šablony temat a jejich funkční logika jsou všechny implementovány pomocí PHP. Musíte ovládat základní syntaxi PHP, funkce, cykly a podmínkové příkazy, a také pochopit, jak interagovat s API a funkcemi WordPressu. Ačkoli technologie frontendu (HTML/CSS/JS) určují vzhled a interakce, PHP je ten motor, který zajišťuje dynamické funkce temat.

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

Zpřístupnění tématu více jazykům ( internacionalizace a lokalizace ) se skládá ze dvou hlavních kroků. Nejprve… style.css Správně nastavit hlavičkové informace v… Text DomainA použijte to ve všech řetězcích, které je třeba přeložit. __()_e() Za prvé, existují funkce pro překlad. Dále lze pomocí nástrojů jako Poedit prohledat kód tematických stránek a vytvořit potřebné překladatelské materiály. .pot Šablony souborů, poté pro každý jazyk (např. čínštinu) vytvoříme odpovídající verze těchto šablon. .po.mo Přeložte soubory a umístěte je do příslušného tématu. /languages/ V adresáři.

Jak se vytvářejí vlastní šablony stránek?

Vytvoření vlastního šablónu stránky je velmi jednoduché. Nejprve vytvořte nový PHP soubor v adresáři tematického balíčku, například… template-fullwidth.phpPoté, na samém začátku tohoto souboru, přidejte blok konkrétního PHP komentáře, který deklaruje název šablony. Například:<?php /* Template Name: 全宽页面 */ ?>Poté v tomto souboru napište svůj HTML a PHP kód. Po uložení bude možné v administraci WordPressu, při úpravě nebo vytváření nové stránky, v rozbalovacím menu “Šablony” pod “Vlastnosti stránky” vidět a zvolit možnost “Celoplošná stránka”.

为什么推荐使用 `get_template_part()` 函数?

Použití get_template_part() Funkce slouží ke zvýšení modulárnosti, znovupoužitelnosti a udržovatelnosti kódu. Oddělují opakující se části kódu (např. shrnutí článků, metadata článků) do samostatných souborů, čímž hlavní šablonové soubory zůstávají jednodušší a přehlednější. Pokud je potřeba změnit tuto společnou část kódu, stačí upravit pouze jeden soubor, namísto toho, abyste to museli dělat v každé šabloně, kde je použita. Kromě toho podporují také překrytí podtemat – podtema mohou poskytnout soubor se stejným názvem, který nahradí odpovídající část nadtematu, což poskytuje velkou flexibilitu při personalizaci.