Kurs "WordPress: Pierwsze kroki" (bezpłatna lekcja)

Wprawdzie większość motywów – zwłaszcza tych bardziej rozbudowanych – do WordPressa ma zazwyczaj przynajmniej kilka miejsc na widżety i 1-2 miejsca na menu (choć czasem dziwnie rozmieszczonych), to warto wiedzieć, że w kilku prostych krokach możemy dodać dodatkowe miejsca tego typu, właściwie w dowolnym miejscu naszego motywu.

WordPress i dodatkowe pole na widżety

By dodać nowe miejsce na widżety musimy zarówno przygotować na nie miejsce w plikach związanych z motywem (w takich przypadkach polecam korzystać z motywów potomnych, by nie utracić wszelkich zmian wraz z aktualizacją motywu), oraz dodać odpowiednie opcje w panelu zarządzania stroną (WP-Admin).

Zaczynamy od dodania odpowiedniego pola na widżety (sidebar) w panelu zarządzania WordPressem, w tym celu w pliku functions.php dodajemy kod:

function webinsider_wp_custom_widget01() {
    register_sidebar(
        array(
            'name' => __( 'Dodatkowy sidebar', 'extra' ),
            'id' => 'webinsider-wp-custom-sidebar01',
            'description' => __( 'Dodatkowy sidebar', 'extra' ),
            'before_widget' => '<div class="webinsider-wp-custom-sidebar01 widget-content">',
            'after_widget' => "</div>",
            'before_title' => '<h3 class="webinsider-wp-custom-sidebar01 widget-title">',
            'after_title' => '</h3>'
        )
    );
}
add_action( 'widgets_init', 'webinsider_wp_custom_sidebar01' );

W następnym kroku – w właściwie dowolnym miejscu w plikach odpowiedzialnych za wyświetlanie strony – wstawiamy kod, który będzie odpowiedzialny za wyświetlanie zawartości naszego pola na widżety:

<?php
if ( is_active_sidebar( 'webinsider-wp-custom-sidebar01' ) ) {
    dynamic_sidebar( 'webinsider-wp-custom-sidebar01' );
}
<?

Być może (zapewne) będzie potrzebne jeszcze jakieś „ostylowanie”, ale to już zostawiam Wam (można skorzystać z klas które są używane przez inne – domyślne – pola na widżety).

WordPress i dodatkowe menu

W przypadku definiowania dodatkowe menu sytuacja wygląda właściwie identycznie, czyli korzystamy z motywu potomnego i definiujemy nowe menu w pliku functions.php np. za pomocą takiego kodu:

function webinsider_wp_custom_menu01() {
    register_nav_menu('webinsider-wp-custom-menu01',__( 'Dodatkowe Menu' ));
}
add_action( 'init', 'webinsider_wp_custom_menu01' );

Oraz wstawiamy kod odpowiedzialny za wyświetlenie menu w wybranym miejscu strony:

<?php
wp_nav_menu(
    array(
        'theme_location' => 'webinsider-wp-custom-menu01',
        'container_class' => 'webinsider-wp-custom-menu01-class'
    )
);
?>

I tak jak w przypadku pola na widżety, tak i w przypadku „ostylowanie” menu zostawiam Wam, ale tu również możecie posiłkować się m.in.klasami przypisywanymi przez motyw standardowemu menu.

(!) Zgłoś błąd na stronie
Pomogłem? To może postawisz mi wirtualną kawę?
LUTy dla D-Cinelike (DJI Mini 3 Pro, DJI Avata, OSMO Pocket) od MiniFly
Wdrożenie Omnibusa w sklepie na WooCommerce
Jak (legalnie) latać dronem w Kategorii Otwartej
Kurs "WordPress: Pierwsze kroki" (bezpłatna lekcja)
Kurs "WordPress: Pierwsze kroki" (na dobry początek)