Sokszor megkérdezik tőlem, hogy lehet-e “menüpontokat” létrehozni a WordPressben. Természetesen lehet, bár a rendszernek nem egészen ez a logikája. Alapvetően kétféle “menüpontot” kezel a WordPress, és ezek (ahogyan azt már megszokhattuk) rendkívül rugalmasan testre szabhatóak.

A WordPress ugye alapvetően blogmotor, tehát az alapfeladat az, hogy az egyes bejegyzéseket fordított időrendi sorrendben megjelenítse. A bejegyzéseket (ahogy erről korábban már írtam) kategóriákba lehet rendezni. Ezzel el is érkeztünk az egyik megoldáshoz, amellyel a menüpontokat létrehozhatjuk: a sablonunk fejlécében (header.php) vagy az oldalsávjában (sidebar.php) a php wp_list_categories utasítás az, amely kilistázza a kategóriákat (ezt szoktam én tartalomjegyzéknek hívni), és máris van egy menürendszerünk. Természetesen nem kell a kódban matatnunk ehhez, a sablonok beállítása is legtöbbször lehetővé teszi, hogy kiválasszuk, akarjuk-e a kategóriák megjelenítését a fejlécben, és az oldalsávba illeszthető widgetek között is megtaláljuk ezt.

A másik lehetőségünk az oldalak használata. Az oldalak nem blogbejegyzések, hanem fix, “statikus” lapok, azaz tartalmuk nem változik (hacsak át nem írjuk őket :-)). Itt a WP-Suli oldalán a fenti menüsor (Főoldal, Segítség!, Megtanulhatom?, Szótár, A szerzőről, Trójai?!) ezeket a statikus oldalaimat listázza ki. A php kódokban ezt a wp_list_pages utasítással érjük el, különben pedig ugyanúgy a sablonbeállításoknál illetve a widgeteknél választhatjuk ki a megjelenésüket.

A fenti két php utasításnak vannak olyan változói, amellyel finomhangolhatjuk a kategóriák illetve az oldalak listázását, ezek közül néhányat a Vezérlőpulton keresztül is állíthatunk, másokat viszont csak a kódban. A php nem egy bonyolult nyelv, én nem tudok php-ban programozni, de egyszerű logikával könnyen rá lehet jönni, mi mire való.

Az oldalak és a kategóriák is egymás alá rendelhetőek, például nálam az Alapok főkategória (a WordPress “Szülő”-nek nevezi) alatt vannak az alkategóriák (a “Gyerekek”): az Általános információk, a Bejegyzések, oldalak, a Címkék, kategóriák és a Telepítés, frissítés. A listázó utasítás egyik tulajdonsága, a depth=1 azt állítja be, hogy az egymás alá rendelt oldalak vagy kategóriák közül csak a főoldalak illetve főkategóriák (az “1. mélység”) látszódjon, így “rejtett” oldalakat tudtam létrehozni, amelyekre csak a szövegeből van link – ilyen például a tananyagok megrendelésére szolgáló oldal. Ez ugyanolyan statikus oldal, mint a Megtanulhatom?, de nem látszik a menüsorban. A kategóriáimnál viszont fontos, hogy minden alkategória is látszódjon, ezért ott nem alkalmaztam ezt a megoldást.

Több ilyen változót használhatunk a kategóriáink és oldalaink kilistázásánál, ezekről majd a haladóknak szánt anyagrészekben lesz szó.