Motywy potomne w WordPress – jak i dlaczego ich używać
Opublikowany: 2016-04-29Celem WordPressa jest umożliwienie ludziom tworzenia, modyfikowania i ulepszania własnych witryn lub blogów. To jest coś, do czego jeszcze dekadę temu trzeba było zatrudnić profesjonalnego projektanta/dewelopera.
W dzisiejszych czasach możesz samodzielnie zadbać o swoją witrynę i sprawić, by wyglądała tak, jak chcesz.
Ale co, jeśli chcesz wyjść poza to, co pozwala Ci WordPress Customizer ? A co, jeśli chcesz zmodyfikować coś w swoim obecnym motywie WordPress w nieco bardziej dopasowany sposób?
Cóż, w tym miejscu wchodzą w grę motywy potomne.
Dlaczego warto korzystać z motywów potomnych
Zacznijmy od drugiej strony medalu:
Wadą nr 1, jeśli *nie* używasz motywu potomnego, a zamiast tego dokonujesz jakichkolwiek modyfikacji w swoim bieżącym (normalnym) motywie, jest to, że wszystkie te modyfikacje znikną, jeśli kiedykolwiek zaktualizujesz motyw.
Teraz co mam na myśli przez modyfikacje :
- wszelkie ręczne edycje kodu wykonane w dowolnym pliku PHP motywu,
- wszelkie modyfikacje pliku style.css ,
- wszelkie nowe pliki, które mogłeś umieścić w katalogu motywu (w tym pliki PHP, pliki CSS, nawet grafikę, dosłownie wszystko) – jest to powszechny problem, jeśli masz niestandardowe szablony stron.
Aby podkreślić to jeszcze raz, wszystkie powyższe znikną, gdy tylko zaktualizujesz swój motyw.
Ale dlaczego jest tak źle?
Cóż, problem może nie jest tak brutalny, jeśli motyw, którego używasz, nie został zaktualizowany jak zawsze. Jednak większość wysokiej jakości motywów WordPress jest odświeżana nieco częściej. Dotyczy to zwłaszcza domyślnych motywów w WordPressie (np. Twenty Fifteen) — są one aktualizowane za każdym razem, gdy pojawia się nowa wersja rdzenia WordPressa.
W takiej sytuacji nie chcesz przegapić wszystkich nowych rzeczy i łatek, które pojawią się wraz z tymi aktualizacjami. Skutecznie sprawiają, że Twoja witryna działa poprawnie z nowymi wersjami WordPressa, a także poprawiają bezpieczeństwo całości (naprawiają typowe luki w zabezpieczeniach i błędy).
Ale jest więcej. Korzystanie z motywów potomnych daje również wartość dodaną w postaci lepszej organizacji pracy.
Oto rzecz, jeśli spróbujesz edytować cokolwiek w bieżącym motywie WordPress, możesz coś zepsuć. Na przykład możesz przypadkowo usunąć ważny wiersz kodu, a nawet cały plik itp.
W przypadku motywów potomnych wszystkie modyfikacje są znacznie lepiej zorganizowane. Każdy plik znajdujący się w katalogu motywu potomnego zawiera tylko Twój własny kod, więc nie musisz się już zastanawiać „czy zmodyfikowałem plik X, czy nie?”
Jak zbudować swój pierwszy motyw potomny
Ta część jest naprawdę łatwa i prawie nie wymaga kodowania. Najpierw jednak kilka ogólnych wskazówek:
- Każdy motyw może być motywem nadrzędnym. Innymi słowy, możesz zbudować motyw potomny dla dowolnego motywu, który już masz.
- Tematy potomne zależą od rodzica, który robi większość swoich „rzeczy”. W najprostszy sposób pusty motyw potomny pobiera cały swój kod, projekt, stylizację itp. bezpośrednio od rodzica, niczego nie zmieniając.
- Motyw potomny do działania wymaga obecności rodzica. Po usunięciu motywu nadrzędnego motyw potomny przestanie działać.
- Jak wspomniano wcześniej, możesz zaktualizować motyw nadrzędny i nie stracić żadnych modyfikacji.
- W razie czego możesz w dowolnym momencie przełączyć się na motyw nadrzędny i wrócić do oryginalnej wersji motywu.
Teraz przejdźmy do instrukcji. Motyw potomny potrzebuje tylko kilku rzeczy:
- nowy katalog wewnątrz
wp-content/themes
i z unikalną nazwą/slug, jakkolwiek chcesz to nazwać, - plik arkusza stylów w tym nowym katalogu –
style.css
, - oraz plik
functions.php
.
Oto przykładowy motyw potomny, który zbudowałem dla poprzedniego domyślnego motywu WordPress – Twenty Fifteen. Zacząłem od stworzenia katalogu o nazwie t15-child
:

Następnie utworzyłem dwa nowe pliki w tym katalogu i nazwałem je style.css
i functions.php
:
Najpierw edytujmy plik style.css
. To moje:
/* Theme Name: T15 child KK Theme URI: http://karol.cc/ Author: Karol K Author URI: http://karol.cc/ Template: twentyfifteen Description: My child of twentyfifteen Version: 1.0.0 License: GNU General Public License v2.0 License URI: http://www.gnu.org/licenses/gpl-2.0.html Text Domain: t15-child */
Nic wymyślnego, jak widać. Podkreślono tam dwie kluczowe linie:
- Nazwa motywu – nazwa nowego motywu potomnego, która pojawi się w wp-admin w sekcji Wygląd / Motywy .
- Szablon – najważniejsza linia tutaj – wskazuje na temat nadrzędny poprzez jego slug.
Następnie przejdźmy do pliku functions.php
. Jedyne, co mam tam, to:
<?php function theme_enqueue_styles() { $parent_; 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)); } add_action('wp_enqueue_scripts', 'theme_enqueue_styles');
To tylko prosta nowa funkcja. Dba o dwie rzeczy:
- pobiera oryginalny arkusz stylów motywu nadrzędnego i
- „włącza” nowy plik style.css , dzięki czemu można w nim dokonywać dalszych modyfikacji projektu motywu.
Inne ważne rzeczy, o których należy pamiętać:
- Teraz możesz swobodnie modyfikować swój nowy plik
style.css
. Każda nowa klasa, którą tam umieścisz, lub jakakolwiek stara klasa, którą zmodyfikujesz, wpłynie na twoją stronę internetową i jej wygląd. - Możesz dodać inne pliki PHP do katalogu motywu potomnego. Pliki te mogą być zupełnie nowe — na przykład dla nowych szablonów niestandardowych — lub mogą zastąpić standardowe pliki motywu nadrzędnego. Na przykład możesz utworzyć zupełnie nową wersję pliku single.php , aby obsłużyć sposób wyświetlania postów na blogu.
- Wszystko, co umieścisz w nowym pliku
functions.php
, zostanie wykonane podobnie do tego, jak działa natywny plik functions.php w motywie nadrzędnym.
Czy stworzyłeś już swój motyw potomny?
Na tym etapie Twoja praca jest zakończona i masz teraz podstawowy motyw potomny, którego możesz użyć do przeprowadzenia dalszych modyfikacji swojej witryny. Możesz też po prostu użyć tego nowego motywu potomnego, aby upewnić się, że wszelkie poprawki, które już wprowadziłeś, pozostaną w przyszłych aktualizacjach motywu nadrzędnego.
Jakie jest twoje zdanie? Czy planujesz użyć motywu potomnego na swojej witrynie lub blogu WordPress?