Korábban már írtam arról, hogy a WordPressben a kategóriákból illetve a statikus oldalakból lehet a legegyszerűbben menüt létrehozni, ezeket a legtöbb sablon magától meg is teszi. Saját menük létrehozására is van azonban lehetőség, mégpedig kétféleképpen: egy html widget segítségével, vagy legújabban – a 3.0 verzió megjelenése óta – a Menük funkcióval is.
Néha szoktak olyat kérdezni tőlem, hogy hogyan lehetne elérni azt, hogy például az oldalsávban állandóan legyen kint egy bejegyzés címe, vagy szeretne a megrendelő egy olyan menüt, amelyben például a munkái vannak felsorolva, és ezek egy-egy bejegyzésben lesznek, de erre nem jó a “Legfrissebb bejegyzések” widget, hiszen lesznek majd újabbak, és akkor a régiek eltűnnek.
Az ehhez hasonló kérésekre az a válasz, hogy bárhová el lehet helyezni egy linket, amely például egy kiemelni kívánt bejegyzésre mutathat. Ha a sablonod oldalsávját használod, a kellő helyre beírhatod azt a html sort, amely a feladatot végrehajtja; ha pedig az oldalsávod saját widgetekből áll, akkor egy Szöveg (Tetszőleges szöveg vagy html) típusú widgetet használhatsz erre a célra.
Mindkét esetben azt kell tudnod, hogy hogy néz ki egy link kódja. Erre a megfelelő html parancs az <a href>, amelyet a következőképpen kell használnod:
<a href=”http://www.domainnev.hu/kategorianeve/bejegyzes-cime“>Link szövege</a>
A pirossal írt részek a html kód részei, a zölddel jelzett az adott cél teljes címe, a kék pedig az, ami az oldalon meg fog jelenni. Akármennyi ilyen sort beírhatsz egymás alá, ezáltal máris létrehoztál egy saját menüt.
A WordPress 3.0 verziójának egyik újdonsága, hogy a saját menü létrehozására egy egyszerűbb módszert is kínál, mégpedig – és ez benne a legjobb – úgy, hogy a menüben gond nélkül keverheted a kategóriákat, az oldalakat és a saját linkeket. Ehhez már csak egy olyan sablon kell, amely támogatja a menüket.
Sajnos ugyanis a korábban használt sablonok ezt még nem tudják, hiszen amikor készültek, ez a funkció még nem létezett. Ha tehát ki akarod használni a saját menük könnyebbségét, olyan sablont kell választanod, amely kompatibilis a 3.0 verzióval – például a TwentyTen nevűt, amely a 3.0 verzió telepítőcsomagjában is megvan.
Frissítés: A régebbi sablonok is képesek kezelni az új Menük-funkciót, ha beillesztesz a kódba néhány php sort. Olvasd el erről Kiss Viktor (Milu Design) bejegyzését!
Ha viszont a TwentyTen-t használod, vagy más, új sablont, akkor a Menükre kattintva az alábbi ablak fogad:

Először el kell nevezned valaminek az új menüt, majd a bal oldali ablakokban ki kell jelölnöd, hogy mely elemeket akarod beletenni a menübe. Látható, hogy választhatod akármelyik statikus oldalt, akármelyik kategóriát, és saját linkeket is megadhatsz. (A Főoldal csak akkor jelenik meg a listában, ha az Összes megjelenítése feliratra rákattintasz.) Válassz ki néhány elemet, és ne felejts el a Menü mentése gombra kattintani!

A módszer szépséghibája, hogy egyszerre csak egy menü lehet ott, ahol eddig az alapértelmezett menü volt (jelen esetben a fejléckép alatti fekete sávban), tehát ha továbbra is szeretnéd látni az összes oldalt vagy kategóriát, és a saját menüdet is, akkor ezután is keverned kell a módszereket, de ne legyünk telhetetlenek. Van, akinek az egyik megoldás lesz jó, és van, akinek a másik. A fenti menü így fog kinézni az oldalon:

Természetesen az oldalsávba továbbra is elhelyezheted a saját widgetjeidet, például az Oldalak vagy a Kategóriák felsorolását, és akkor már rendben is van minden – a káposzta is jóllakik, meg a kecske is megmarad
Frissítés: Megjelent a WordPress 3.0.1 karbantartó-csomag. Ha ezt telepíted, most már régebbi sablonnal is tudsz Menüt létrehozni, a különbség csak annyi, hogy a menü létrehozása után azt csak az oldalsávba tudod beilleszteni, egy “Egyedi Menü” nevű widget segítségével .
Hozzáteszem még, hogy a régebbi sablonok fejlesztői sorban adják ki a frissítéseket, így egyre több sablon tudja már helyesen kezelni az új Menüket, sőt, a legtöbb már két külön menüt is engedélyez. Amikor sablont választasz, keresd a “kompatibilis a 3.0 menükkel” jelzést, akkor biztosan jót fogsz választani.
További jó pancsolást!
24 hozzászólás
Kérdésed, hozzáfűznivalód van? Oszd meg velünk!
















Nagyon jó bejegyzés, köszi. Pont ilyet rakok össze, és persze elfelejtettem rápöttyinteni a menü mentésére..
Hello! Néminemű kiegészítés: http://milu.hu/2010/08/hogyan-keszitsunk-menut-wordpress-3-hoz/
Kösz, Viktor, nagyon hasznos bejegyzés a Tiéd is!
(Mellesleg jelzem, hogy ez volt a WP-Suli oldalon a 44. bejegyzés, és a Tiéd volt az 555. hozzászólás
Csak érdekességképpen.)
Szia, Moni!
Frissítettem a WP-t (néhány plugint is) és eltűnt a Kezdőlap menü pontom (a szerkesztőben megvan a leírás). A vezérlőpulton megtaláltam a Menüt, beírtam, mert nem találtam a menüpontok között, jött az üzenet, hogy frissítve a Kezdőlap, de mincs sehol. Tudnál segíteni? e-mailben is jelzem majd. Volt még egy olyan jelzés, hogy a sablon nem támogatja új menük létrehozását, de ez régi volt, csak “eltűnt”.
Üdvözlettel
Pap Zsuzsa
Szia!
Sajnos nem tudom, mire gondolsz, én látom a kezdőlapodat. Megnéztem a beállításoknál, a “Rend vagy zűrzavar” című oldal van beállítva kezdőlapnak, és az is jelenik meg. Nem így akartad?
Az All-In-One-SEO-Packodat csak be kellett kapcsolni, azért adott hibaüzenetet.
Mért nem jön elő az avatarom?
Mert nem azzal az e-mail címmel írtál (chello), amihez az avatar hozzá van rendelve. Menj el a gravatar.com-ra és add hozzá ezt az e-mail címedet is (a haztartas-ma végűt).
Tökéletes
Nagyon szépen köszönöm pontosan erre a megoldásra vágytam.
Örülök! Sok sikert!
Szia Móni!
A Twentytennel lehet almenüket létrehozni? Olyan legördülő megoldásra gondolok… Ha nem, akkor a Kis Viktor kódja megfelelő lenne?
köszi
Melinda
Bármelyik sablonnal létre lehet hozni almenüket, amelyik képes a menük kezelésére (Viktor kódja nem ezt csinálja, hanem azt, hogy amelyik sablon nem kezeli a menüket, azt rábírja, hogy kezeljék).
Úgy kell almenüpontot csinálni, hogy kissé jobbra húzod az adott menüpont dobozát.
Viszont hogy legördülő lesz-e vagy sem, az már a sablon programozásán múlik. A TwentyTen szerencsére támogatja ezt – lásd a http://www.web4mlm.hu/ tesztblogot, ott ha az Állatok menüpontra mutatsz az egérrel, meglátod, hogyan működik.
Köszönöm!!!!! Ez borzasztóan egyszerű volt
)Fantasztikus ötlet volt részedről ez a wp-suli! Köszönjük azt a rengeteg segítséget amit adsz nekünk!
)
Köszönöm és szívesen!
De Ti is kelletek hozzá! Ügyes voltál, sok sikert a továbbiakra is!
Ha megy egy kicsit a php, vagy legalább a wordpress codex-ből tudsz szemezgetni akkor a daiko’s text widgettel szinte mindent ki lehet listázni, mert befogadja a php kódokat.
Korlátlan darabot használhatsz, és nem kell a sablonválasztásnál figyelni a verzióra.
Itt inkább olyanok olvasnak, akiknek kínai a php
(én is csak akkor használom, ha tényleg muszáj), ezért igyekszem olyan módszereket bemutatni, amelyeket programozói tudás nélkül is lehet használni (ez a szlogenem is: “Saját honlap létrehozása programozói tudás nélkül”), de azért kösz az ötletet.
Szia!
Adott egy WP téma, amiben van egy menü, egy vízszintes sorban, 6-8 menüpontból áll.
Van benne néhány szülő menüpont, amire kattintva legördülnek az almenüpontok.
Kérdésem a következő:
Meg lehet-e azt csinálni valahogy, hogy az almenük NE egymás alatt legyenek, hanem a főmenüsorhoz hasonlóan egy vízszintes vonalban, közvetlenül a főmenü alatt? (Ne adj isten akár még ezeknek is lehetne almenüje, ami szintén alatta lenne, egy 3. sorban.)
Ez megoldható egyáltalán WordPress-ben?
Csak azért írom be ide is, hogy ha később valaki pont ezt találja meg, legyen itt a válasz.
Igen, megoldható, a sablon style.css fájljának kell megmondani, hogy hogyan írja ki a menüt. Tehát programozási feladat.
(Elég egyszer feltenni a kérdést, válaszolok rá akkor is
– csak nem hétvégén
)
Menükészítés során felmerülhet az igény, hogy a szülő menüpontoknak csak a nevét írja ki a rendszer, de NE LEGYEN KATTINTHATÓ, azaz ne kapcsolódjon hozzá link, csak az alatta lévő gyerek menüpontokhoz.
Erre találtam is a net-en egy jó megoldást:
jQuery(function($) {
$(“li.page-item-***”).children(“a”).attr(‘href’, “javascript:void(0)”); });
Itt mindössze annyi a dolgunk, hogy a *** helyére beírjuk a lap ID-jét és működik is.
Igen ám, de mi van akkor, ha valaki egy kész sablont használ, ami nem a wp_list_pages-el, hanem a wp_nav_menu paranccsal generálja a főmenüt?
Elvileg ilyenkor is működnie kellene ennek a módszernek, de vajon egészen pontosan mit kell rajta módosítanunk?
Tudnátok segíteni?
Az egyik javascript, a másik php, sőt, egy előre megírt WP-függvényre hivatkozik, tehát ez már egészen más, mély php programozási téma.
Viszont vannak olyan sablonok, amelyek ezt alapból tudják, a menüjükben kattintással beállítható ez a lehetőség. Ilyenek például az Elegant Themes prémium kategóriás, valóban elegáns és nagy tudású sablonjai. Ezek fizetősek, de az alacsony éves díjért (kb 7.000 Ft + ÁFA) cserébe az összes sablont letöltheted, az újakat is, amelyek a tagságod ideje alatt kijönnek. Ha az alábbi linken keresztül mész, még egy kis jutalékot is kapok
– http://www.elegantthemes.com/affiliates/idevaffiliate.php?id=8177
Nekem fejlesztői hozzáférésem van, ami azt jelenti, hogy az ügyfeleimnek továbbadhatom a munkám részeként bármelyik sablont, tehát ha nem akarod az összeset, csak egyet, arra is van lehetőség, ha közvetlenül tőlem rendeled.
Köszi a választ. Megértettem amit írtál, de már szinte kész a teljes oldal, csak gondoltam jobban nézna ki, ha úgy működne, amit fentebb akartam.
E miatt most nem fogok új sablont választani, de legközelebbre jó az ötlet
Szia!
Azt szeretném tudni, hogy a menüben hogyan lehet az egyik menüpont színét megváltoztatni? Pl.: a Megrendelés menüpont legyen piros, a többi pedig sárga színű?
Köszönöm!
Szia! Ez mindenképpen kódolást igényel. Vagy a css-ben kell átírni, vagy egyszerűen a header.php-ban, ahol a menüsort kiírja, a végére biggyesztesz egy egyszerű linket html-ben, és ott adod meg a színét.
Köszönöm!
Azt gondoltam e-nélkül is megy. Az egész menüt tudom színezni, csak külön-külön nem megy.
Sajnos ezt csak kézzel lehet…