Bērntēma

Kas ir bērntēma?

Bērntēma WordPress vidē ir apakštēma, kas pārmanto vecāktēmas funkcionalitāti, struktūru un stilus. Tā ļauj droši veikt jebkādas izmaiņas, nepieskaroties sākotnējās tēmas failiem. Kad vecāktēma tiek atjaunināta, visas izmaiņas, kuras esat veikuši bērntēmā, turpina darboties — atjauninājums tās nepārraksta. Tāpēc darbs ar bērntēmu tiek uzskatīts par uzticamāko pielāgošanas veidu. Jūs neveicat izmaiņas vecāktēmas failos, bet tās pārdefinējat bērntēmā.

Lai izveidotu bērntēmu, ir jāizveido atsevišķa mape tēmu direktorijā. Galvenais fails, bez kura bērntēma netiks atpazīta, ir style.css. Tā galvenes daļā tiek norādīta vecāktēma, izmantojot parametru Template, kura vērtībai ir precīzi jāatbilst vecāktēmas mapes nosaukumam. Kad bērntēma ir aktivizēta, tās stili tiek ielādēti virs vecāktēmas stiliem, tāpēc jūs varat pārdefinēt jebkurus CSS noteikumus. Vienlaikus vecāktēma turpina pilnībā darboties un nodrošina visu funkcionalitāti, kuru jūs bērntēmā neesat mainījuši.

Pareiza bērntēmas style.css piemērs

/*
 Theme Name:   My Child Theme
 Theme URI:    https://example.com/
 Description:  Child theme for the Twenty Twenty-Five theme
 Author:       Your Name
 Author URI:   https://example.com/
 Template:     twentytwentyfive
 Version:      1.0.0
 Text Domain:  my-child-theme
*/

/* Jūsu pielāgotie stili */

Svarīgi:
Template: vērtībai jābūt tieši tādai pašai kā vecāktēmas mapes nosaukumam.
Piemēram, ja tēma atrodas /wp-content/themes/twentytwentyfive, tad jānorāda:
Template: twentytwentyfive.

functions.php piemērs vecāktēmas stilu pareizai pievienošanai

Lai gan bērntēma var strādāt arī bez sava functions.php, praksē tas gandrīz vienmēr ir nepieciešams — galvenokārt, lai pareizi ielādētu vecāktēmas stilus.

<?php
add_action( 'wp_enqueue_scripts', 'my_child_theme_styles' );
function my_child_theme_styles() {
    // Pievienojam vecāktēmas stilu
    wp_enqueue_style(
        'parent-style',
        get_template_directory_uri() . '/style.css'
    );

    // Pievienojam bērntēmas stilu
    wp_enqueue_style(
        'child-style',
        get_stylesheet_directory_uri() . '/style.css',
        array( 'parent-style' )
    );
}

Bērntēmas failu struktūra

Minimālā struktūra izskatās šādi:

my-child-theme/
│
├── style.css ← obligātais fails
├── functions.php ← stilu ielāde un pielāgotais kods
└── screenshot.png ← (nav obligāts) tēmas sīktēls WordPress administrācijā

Jūs varat bērntēmai pievienot jebkurus failus tādā pašā struktūrā, kāda ir vecāktēmai.

Ja fails eksistē gan vecāktēmā, gan bērntēmā — tiek izmantots bērntēmas fails.

Piemērs veidnes pārdefinēšanai:

my-child-theme/
└── header.php ← aizstās vecāktēmas header.php

theme.json atbalsts bērntēmās

Ja vecāktēma ir blokveida tēma (FSE), tā izmanto theme.json failu. Bērntēmā var izveidot savu theme.json, kas:

  • nepārņem, bet papildina un pārdefinē vecāktēmas iestatījumus
  • ļauj mainīt krāsas, tipogrāfiju, bloku iestatījumus, šablonus un daudz ko citu

Minimāls bērntēmas theme.json piemērs:

/*
 Theme Name:   My Child Theme
 Theme URI:    https://example.com/
 Description:  Child theme for the Twenty Twenty-Five theme
 Author:       Your Name
 Author URI:   https://example.com/
 Template:     twentytwentyfive
 Version:      1.0.0
 Text Domain:  my-child-theme
*/

/* Jūsu pielāgotie stili */


Mūsu specializācija — WordPress vietņu izstrāde un uzturēšana. Kontakti bezmaksas konsultācijai — [email protected], +371 29394520


0 atbildes

Atbildēt

Vai vēlaties pievienoties diskusijai?
Jūtieties brīvi sniegt savu ieguldījumu!

Atbildēt