KWALIFIKACJA INF3 - TEST WIEDZY NR 2

PYTANIE NR 14.
Podczas konfiguracji strony internetowej w systemie WordPress, stworzyłeś nową stronę o nazwie "O nas". Które z poniższych fragmentów kodu PHP umożliwi wyświetlenie tej strony w menu głównym?
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
wp_nav_menu() służy do wyświetlania w motywie WordPress menu przypisanego w panelu do konkretnej lokalizacji. Parametr theme_location wskazuje identyfikator tej lokalizacji (np. primary dla menu głównego w wielu motywach). Same nazwy stron, takie jak "O nas", nie są nazwami lokalizacji menu w kodzie.

Pełne wyjaśnienie:

W WordPressie strona (np. "O nas") trafia do menu głównego dopiero wtedy, gdy w panelu administracyjnym zostanie dodana do odpowiedniego menu i to menu zostanie przypisane do lokalizacji używanej przez motyw (np. "Menu główne"). Kod w motywie nie "wyszukuje strony po nazwie", tylko renderuje całe menu przypisane do danej lokalizacji.

Funkcja wp_nav_menu() wyświetla menu nawigacyjne. Kluczowy jest argument theme_location, który powinien odpowiadać nazwie lokalizacji zarejestrowanej w motywie (zwykle w functions.php przez register_nav_menus()). W wielu motywach lokalizacja menu głównego bywa nazwana primary, stąd użycie 'theme_location' => 'primary' jest typowym sposobem wstawienia menu głównego.

Dlaczego pozostałe odpowiedzi są błędne w kontekście pytania:

  • Wartość 'o-nas' wygląda jak "slug" strony, ale theme_location nie przyjmuje slugu strony – to identyfikator obszaru menu w motywie. To częsta pułapka semantyczna.
  • Wartości 'secondary' i 'footer' mogą być poprawne tylko wtedy, gdy motyw tak je zdefiniował, ale standardowo oznaczają odpowiednio menu dodatkowe lub menu w stopce, a nie główne.

W praktyce, aby strona "O nas" pojawiła się w menu głównym, wykonuje się dwa kroki: (1) w panelu dodaje się stronę do menu, (2) przypisuje się to menu do lokalizacji "primary" (lub innej, zgodnej z motywem). Kod jedynie wyświetla przypisane menu.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
theme_location to identyfikator lokalizacji menu zarejestrowanej w motywie (np. w functions.php). WordPress wyświetli to menu, które w panelu zostało przypisane do tej lokalizacji. To nie jest nazwa strony ani jej adres.
W panelu WordPress przejdź do sekcji menu, dodaj stronę "O nas" do wybranego menu, a następnie przypisz to menu do lokalizacji używanej przez motyw jako menu główne (często "primary"). Kod motywu tylko renderuje przypisane menu.
Najczęstszy powód to brak dodania strony do menu lub brak przypisania menu do lokalizacji wskazanej w theme_location. Strona może istnieć, ale jeśli nie jest elementem menu, nie pojawi się w nawigacji.
Sprawdź plik functions.php motywu i szukaj rejestracji menu (np. przez register_nav_menus()). To tam widnieją identyfikatory lokalizacji, które później podaje się w theme_location.
Nie zawsze. primary to częsta konwencja, ale każdy motyw może używać innych identyfikatorów (np. main, top, header). Poprawna jest taka wartość, jaka została zarejestrowana w motywie i do której przypisano menu w panelu.
Typowy minimalny zapis to <?php wp_nav_menu( array( 'theme_location' => 'primary' ) ); ?>. W praktyce często dodaje się też klasy CSS i fallback, ale kluczowe jest wskazanie właściwej lokalizacji menu.
To zwykle dwie różne lokalizacje menu w motywie. primary jest kojarzone z nawigacją główną (np. w nagłówku), a footer z menu w stopce. Różnica wynika z projektu motywu i miejsca wyświetlania.
Tak, można wskazać konkretne menu innymi parametrami (np. przez nazwę lub ID). Jednak w motywach najczęściej stosuje się theme_location, bo łączy kod z konfiguracją "przypisz menu do miejsca" w panelu WordPress.
Bo 'o-nas' może być slugiem strony, ale theme_location nie odnosi się do stron. Odnosi się do lokalizacji menu zdefiniowanej w motywie. Taka wartość zadziała tylko wtedy, gdy motyw ma zarejestrowaną lokalizację o identyfikatorze 'o-nas'.
Najczęściej myli się "dodanie strony do menu" z "wyświetleniem menu w kodzie", a także myli się slug strony z identyfikatorem lokalizacji menu. Częsty błąd to też zakładanie, że każdy motyw używa identycznych nazw lokalizacji (np. zawsze 'primary').
info

Około 46% zdających odpowiada poprawnie na to pytanie. trudne

W praktyce zawodowej kluczowe jest to, że wp_nav_menu() służy do wyświetlania w motywie WordPress menu przypisanego w panelu do konkretnej lokalizacji.

Źródła:

  • WordPress Developer Resources: "wp_nav_menu()" (opis parametrów, w tym theme_location), https://developer.wordpress.org/reference/functions/wp_nav_menu/ - dostęp 2026-02-27
  • WordPress Developer Resources: "register_nav_menus()" (rejestracja lokalizacji menu w motywie), https://developer.wordpress.org/reference/functions/register_nav_menus/ - dostęp 2026-02-27
  • WordPress Developer Resources: "Appearance Menus" / dokumentacja dotycząca tworzenia i przypisywania menu (koncept przypisywania menu do lokalizacji), https://wordpress.org/documentation/ - sekcja dotycząca menu - dostęp 2026-02-27

Materiały:

  • Dokumentacja WordPress Developer Resources: wp_nav_menu()
  • Dokumentacja WordPress Developer Resources: register_nav_menus() i register_nav_menu()
  • Podstawowe materiały o strukturze motywów WordPress (header.php, functions.php, template hierarchy)

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego