Jak prawidłowo modyfikować pliki motywu WordPressa

Naczelna zasada brzmi: nigdy nie modyfikuj motywu bezpośrednio w jego plikach! Jeśli tak zrobisz, przy najbliższej aktualizacji motywu wszystkie jego pliki – także te, w których coś zmieniałeś – zostaną nadpisane i twoja praca przepadnie.

Jedyną słuszną drogą jest utworzenie motywu potomnego (child theme). Jeśli twój motyw znajduje się w katalogu the-best-wp-theme-ever, utwórz podkatalog wp-content/themes/the-best-wp-theme-ever-child. Tu będą się znajdować wszystkie pliki motywu potomnego.

Każdy motyw potomny musi posiadać plik CSS (style.css), a ten z kolei musi zawierać przynajmniej unikatową nazwę motywu potomnego oraz nazwę katalogu, w którym znajduje się motyw nadrzędny:

/*
  Theme Name:   The Best WordPress Theme Ever Child
  Template:     the-best-wp-theme-ever
*/

Drugim potrzebnym plikiem będzie functions.php. Powinien on wczytać poprawnie pliki CSS motywu nadrzędnego i potomnego:

<?php
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function my_theme_enqueue_styles() {
    $parent_style = 'parent-style';
    wp_enqueue_style( $parent_style, get_template_directory_uri() . '/style.css' );
    wp_enqueue_style( 'child-style',
        get_stylesheet_directory_uri() . '/style.css',
        array( $parent_style ),
        wp_get_theme()->get('Version')
    );
}
?>

W pliku functions.php można nadpisywać funkcje motywu nadrzędnego, a także dopisywać własne. Jeśli np. chcesz, aby przechodząc do następnej strony wpisów w pasku adresu słowo "page" było zastąpione słowem "strona", możesz w pliku functions.php motywu potomnego utworzyć taką funkcję:

function re_rewrite_rules() {
    global $wp_rewrite;
    $wp_rewrite->pagination_base = 'strona';
}
add_action('init', 're_rewrite_rules');

Za pomocą motywu potomnego możesz również nadpisać całe pliki typu header.php, footer.php itd. Załóżmy, że chcesz się pozbyć ze stopki napisu "Dumnie wspierane przez WordPressa". W tym celu w katalogu motywu potomnego tworzysz plik footer.php i wklejasz do niego zawartość pliku footer.php motywu nadrzędnego. Odnajdujesz (ctrl + f) frazę "Dumnie wspierane przez WordPressa" i zastępujesz ją inną. Voilà!

Wiem, że grzebanie bezpośrednio w plikach motywu jest kuszące, bo utworzenie motywu potomnego zajmuje trochę czasu i może się wydawać trudne, ale nie rób tego! Unikniesz wielu problemów i frustracji. Plus rada: aktualizuj motyw, choćbyś miał za to płacić co roku. Nieaktualizowany motyw szybko stanie się niekompatybilny z najnowszym WordPressem, z wtyczkami i najnowszą wersją PHP. Wtedy trzeba będzie sporo zapłacić programiście, żeby doprowadził stronę do porządku. Lepiej wydać te 59 dolarów co rok.

Pani Marta
Jestem Marta. Pani Marta. I piszę o rzeczach, które inspirują mnie i ciekawią w pracy projektanta i twórcy stron internetowych. Na moim blogu znajdziesz również porady dotyczące WordPressa i programowania stron, a także moje osobiste przemyślenia na najróżniejsze tematy.