top of page

Pliki szablonów WordPressa – część 5 – Własne szablony i panel boczny

Zdjęcie autora: Piotr BartczakPiotr Bartczak

Dzisiaj trochę pokodujemy (mam nadzieję, że skutecznie zarażam was miłością do rozkminiania mechaniki WordPressa), stworzymy własny szablon dla strony, nauczymy się tworzyć sekcje Widgetów, a przede wszystkim – nauczymy się korzystać z tych sekcji. Przygotujcie więc swoje ulubione programy do kodowania i bierzmy się do pracy :).


Własny szablon strony


Szablon Strony

Szablon Strony


Po lewej stronie widzimy sekcję wyboru szablonu strony – czym jest taki szablon? Generalnie jest to kolejny plik w folderze naszego tematu graficznego, który pozwala nam na wyświetlenie strony statycznej w unikalny sposób. Banalnym przykładem będzie strona z formularzem kontaktowym – możemy chociażby usunąć z niej panel boczny, umieścić twiordyj kod zamiast jakiejś wymyślnej funkcji itp. :).

Użycie szablonów jest bardzo proste – po stworzeniu strony, a przed publikacją wybieramy z przedstawionej na obrazku listy nazwę naszego szablonu. Wpierw musimy go jednak stworzyć. Tworzymy pusty plik *.php, a następnie wstawiamy do niego kod:

<?php
/*
Template Name: Kontakt
*/
?> 

Voila – dzięki temu na naszej liście rozwijanej pojawi się pozycja „Kontakt”. Cała pozostała zawartość szablonu to już wasza inwencja. Teraz zajmijmy się prawdziwą zabawą – widgetami!

Budujemy sekcję widgetów

W tym celu musimy otworzyć plik functions.php, znajdujący się w folderze naszego tematu graficznego. Póki co jest on zapewne pusty, musimy więc wstawić odpowiedni kod:

if ( function_exists('register_sidebar') )
    register_sidebar(array(
        'name'=>'sidebar_home',
        'before_widget' => '<div class="box %1$s">',
        'after_widget' => '</div>',
        'before_title' => '<h2>',
        'after_title' => '</h2>',
    )); 

A teraz objaśnienia. pierwsza funkcja jest formalnością, następna register_sidebar() rejestruje sekcję widgetów. Niech was nie zmyli nazwa sidebar, sekcję widgetów tylko na panelu bocznym to przeszłość ;). Jak widzimy, parametry dla tej funkcji mają postać tablicy (array). Po kolei – name określa nazwę sekcji, before_widget określa znacznik html znajdujący się przed widgetem (w tym przypadku jest do DIV o klasie .box). %1$s zaś wstawi do klasy nazwę określonego widgeta. after_widget wstawia znacznik kończący widget, before_title otwiera nazwę widgeta, a after_title zamyka nazwę widgeta. Uff…

Wyświetlamy sekcję widgetów

Skoro już zbudowaliśmy sekcję naszych widgetów, musimy ją wyświetlić. Otwieramy odpowiedni plik tematu, ot choćby taki sidebar.php i wstawiamy odpowiedni kod:

<? if ( !function_exists('dynamic_sidebar') || !dynamic_sidebar('sidebar_home') ) : ?>
// Tutaj ewentualny kod;
<? endif; ?> 

Zauważyliście zapewne nazwę sidebar_home – odpowiada ona za wyświetlenie odpowiedniego widgeta. Korzystając dalej z funkcji register_sidebar(), zmieniając tylko parametr name, jesteśmy w stanie zbudować całą masę różnych sekcji, które będą wyświetlane w różnych miejscach na stronie.

W środku instrukcji warunkowej możemy wstawić zaś określony kod, który będzie wyświetlany w przypadku, gdy żaden widget nie zostanie przypisany do sekcji z panelu zarządzania. Wnikliwsi pewnie już zauważyli, że powyższy kod nie tyle wyświetla naszą sekcję widgetów, co upewnia się, że nie powinna ona być wyświetlana ;). Nie jest to jednak aż tak ważne, bowiem wszystko działa.

Podsumowanie

Wiecie już jak stworzyć własny szablon strony, jak utworzyć dowolną ilość sekcji widgetów i jak wyświetlić poszczególne sekcje w dowolnym miejscu witryny. Byle tak dalej :).

0 wyświetleń0 komentarzy

Ostatnie posty

Zobacz wszystkie

Commenti


bottom of page