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.
Spis treści w artykule
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).
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.
- Wakacje składkowe ZUS a zawieszenie działalności gospodarczej, czyli uważaj, bo być może nie będziesz mógł skorzystać (w 2024) - 1970-01-01
- Przykładowy kalkulator wyceny usługi druku 3D, czyli nie tylko materiał się liczy - 1970-01-01
- Home Assistant 2024.10, czyli nowa karta „nagłówek” i niedziałający TTS w ramach usługi Google Cloud - 1970-01-01