När navigationsmenysystemet släpptes med WordPress 3.0 var detta en av de faktorer som förvandlade WordPress från en bloggplattform till ett kraftfullt CMS.

Detta innebar att du kunde lägga till allt innehåll du ville ha på din webbplats navigeringsmenyer, inklusive anpassade länkar. Gränssnittet "dra och släpp" innebar att vem som helst kunde skapa sin egen anpassade meny utan kodfärdigheter.

Men ibland vill du inte lita på det. Om du utvecklar en webbplats för en klient som ska lägga till sidor till sin webbplats, kommer de troligtvis inte att uppdatera navigeringsmenyn (erna) när de gör eller saknar färdigheter. .

Så det är här en automatisk navigationsmeny är praktiskt.

I den här tutorialen ska jag visa dig hur du skapar en automatiserad navigationsmeny som visar alla sidorna på din webbplats samt barnsidorna som visas som andra nivåer i navigationsmenyn.

Du kan sedan lägga till den här koden i ditt temas sidhuvud, sidofält eller sidfot om du vill, och den visar dina användares länkar som automatiskt uppdateras när nytt innehåll läggs till på din webbplats.

Men om du aldrig har installerat WordPress, upptäck Hur man installerar en Wordpress-blogg 7 steg et Hur man hittar, installera och aktivera en Wordpress tema på din blogg 

Tillbaka till varför vi är här.

Här är vad du behöver för att automatisera WordPress-navigationsmenyer:

  • En WordPress-utveckling eller testinstallation, med några sidor och undersidor tillagda
  • En kodredigerare.

Kod Konfiguration

Jag lägger till den här koden till ett plugin så att den är permanent, även om jag ändrar WordPress-temat. På detta sätt kan jag lägga till funktionen för mitt plugin i mitt tema för att lägga till navigationsmenyn där jag vill. Om ditt WordPress-tema har " krokar Du kan använda en eller flera för att injicera den här koden.

Se även vår lista över 10 WordPress plugins för att skapa en nedräkning

Om du arbetar med ett WordPress-tema från tredje part som inte har Hooks måste du lägga till kod i temat. Kod det inte direkt i temat: skapa istället ett underordnat tema och lägg till din kod i det. Skapa bara en duplikat av temamallfilen från huvudtemat du vill redigera, lägg till det i ditt barns tema och redigera det.

Steg ett

Det första steget är att skapa plugin. Jag skapar en mapp i " wp-content/plugins ". Att skapa en mapp innebär att jag kan lägga till fler filer i plugin i framtiden om jag måste, som ett formatmall eller inkludera filer.

Först måste du lägga till inloggningskoden för ditt plugin, i kommentarerna, för att berätta för WordPress vad det är:

<?php
/**
 *Pluginnamn:Plugin
 * Plugin-URI: http://blogpascher.com
 * Beskrivning: WordPress-plugin
 * Version: 1.0
 * Författare: Herve
 * Författarens URI: http://blogpascher.com
 *
 */

Aktivera nu ditt plugin.

Konfigurera det om du använder ett underordnat tema. Jag använder barn-temat från temat tjugo sjutton - här är mitt stilark:

<?php
/**
 *Pluginnamn:Plugin
 * Plugin-URI: http://blogpascher.com
 * Beskrivning: WordPress-plugin
 * Version: 1.0
 * Författare: Herve
 * Författarens URI: http://blogpascher.com
 *
 */

@import url( " ../twentyseventeen/style.css " );

När du har gjort det, om din webbplats inte har några sidor ännu, lägg till några. De måste ha en struktur på flera nivåer. Så här ser mina falska sidor ut:

WordPress hierarki sida skapande

Låt oss nu börja lägga till koden till plugin-programmet.

Skapa en funktion för att lista alla sidor hierarkiskt

Vi kommer att använda funktionen « wp_list_pages () Att hämta alla sidor och lista dem med länkar. Men först måste vi definiera några argument för det. Börja med att skapa din funktion och lägg till dessa argument:

wpmu_list_pages () {wpmu_list_pages () {$ args = array ('depth' => 2); }

Argumenten är väldigt enkla - det finns bara en för nivån på sidorna vi vill göra. Inställningen "2" betyder att sidorna på översta nivån och deras undersidor visas, men inte mer.

Upptäck 5 anslutning vanliga fel och deras lösningar på Wordpress

Låt oss nu lägga till funktionen "wp_list_pages ()" efter argumenten:

wp_list_pages ($ args);

Här är den kompletta funktionen:

wpmu_list_pages () {wpmu_list_pages () {$ args = array ('depth' => 2); wp_list_pages ($ args); }

Lägga till funktionen till temat

För tillfället visar funktionen inte något på min webbplats. För att ändra detta måste vi lägga till en kopia av huvudtemahuvudet i det underordnade temat och redigera det.

Se även: Hur du skyddar ditt WordPress-arbete på klientwebbplatser

Börja med att kopiera rubrikfilen till ditt barns tema och öppna den. I tjugo sjutton kan navigeringens menykod hittas i " mallar-delar / navigation / navigation-top.php Vilket innebär att jag måste lägga till en kopia av den här filen till samma plats i mitt barntema.

Upptäck för att gå längre Hur man installerar en Wordpress barn tema

I ditt tema kan detta vara filen header.php det måste kopieras.

Beroende på ditt tema kommer menykoden att vara annorlunda. I den jag använder är det här koden jag behöver ersätta:

'top', 'menu_id' => 'top-menu',)); ?>

Ändra koden på din navigationsmeny för att lägga till en ny funktion, med den befintliga koden i en "annars {}" -deklaration:

'top', 'menu_id' => 'top-menu',)); }?>

Villkorliga uttalanden är viktiga: först kontrolleras om funktionen du har lagt till ditt plugin finns (dvs om plugin är aktiverat) och i så fall utför den funktionen utifrån det. Annars fungerar det normalt.

Se även vår guide om Så här visar ad block på Wordpress

Titta nu på min webbplats:

exempel wordpress webbplatsLänkarna visas, men det finns några problem. Jag vill inte att "Sidor" ska visas överst (vilket är standard för funktionen wp_list_pages () ) och jag vill beställa sidorna mer effektivt. Du kommer att se att hemsidan är mitt i listan, vilket inte är perfekt.

Förbättra funktionen

Låt oss gå tillbaka till plugin-koden och anpassa den för att korrigera dessa problem.

Hitta de argument du redan har definierat för wp_list_pages ():

$ args = array ('depth' => 2);

Och redigera det:

$ args = array ($ args = array ('depth' => 2, 'title_li' => ' '. __ ('Meny', 'bpc'). '' ',' sort_column '=>' menu-order ');

Detta lägger till ytterligare två argument:

  • Markeringen före listan, som nu säger " Meny Istället för sidor ".
  • Ordningen i vilken sidorna visas.

Du måste återgå till redigeringsskärmarna på dina sidor och definiera ordningen på sidorna för var och en av dem. Ställ in startsidan till värdet "0" och andra sidor på toppnivån är högre än dessa. 

Läs också vår guide om : Hur du gradvis laddar Facebook- och Disqus-kommentarer

När du visar menyn ser den så här ut:

automatisk wordpress-meny

Du kan också ändra menyraden på sidorna på andra nivån. Detta kommer aldrig att synas ovanför sidorna på toppnivån, så du kan börja vid 0 eller 1 för varje uppsättning undersidor.

Upptäck också några premium WordPress-plugins  

Du kan använda andra Wordpress plugins för att ge ett modernt utseende och för att optimera kopplingen till din blogg eller hemsida.

Vi erbjuder dig här några premium WordPress-plugins som hjälper dig att göra det.

1. gravitations~~POS=TRUNC former

Som företagsägare bör det vara din prioritet att låta dina kunder kontakta dig. gravitations Forms är plugin för kontakt~~POS=TRUNC formulär~~POS=HEADCOMP den mest populära på WordPress.

gravityformsDu kan använda den för skapa valfri form, till exempel ett offertformulär, enkäter och mer.

Ladda ner | demo webbhotell

2. eForm

eForm är en avancerad och flexibel formbyggare som kan integreras i en befintlig WordPress-webbplats. Det är en komplett lösning för formulärhantering. Det gäller bland annat frågesporter, undersökningar, datainsamling, betalningsuppskattning och användarkommentarer.eForm WordPress Form Builder wordpress-tillägg

Med en sådan formdesigner kan du designa formulär på ett obegränsat sätt och hantera dem från din instrumentbräda. Alla förfrågningar lagras i din databas, du kommer att kunna se, spåra, analysera och agera på de data du har sparat.

Läs också vår artikel om Hur Content Marketing påverkar din blogg SEO

Dessutom tillåter en användarportal registrerade användare att också granska och spåra sina önskemål.

Ladda ner | demo | webbhotell

3. Mailster

Mailster är en Wordpress plugin lättanvänd premium som hjälper dig att integrera ett nyhetsbrev på din webbplats. Med den senare kommer du att kunna skapa, skicka och spåra dina kampanjer utan alltför mycket krångel.Mailster e-post nyhetsbrev plugin för WordPress

Huvudfunktionerna är: möjligheten att spåra öppna e-postmeddelanden, klick, prenumerationer och avvisningsfrekvens, förmågan att rikta in dina kampanjer, kampanjhantering och planering, stöd för 6 typer av auto-responders, obegränsad skapelse registreringsformulär, ett användarvänligt gränssnitt, anpassning av bakgrunden, stöd för flerspråkigOch mycket mer.

Ladda ner | demo | webbhotell

Rekommenderade resurser

Ta reda på om andra rekommenderade resurser som hjälper dig att bygga och hantera din webbplats.

Slutsats

Voila! Det här är allt för denna självstudie, jag hoppas att det kommer att låta dig lägga till sidor automatiskt till dina menyer. Om du har några problem eller förslag på detta område, låt oss hitta oss i kommentaravsnittet att diskutera.

Du kommer dock också att kunna konsultera vår medel, om du behöver fler element för att genomföra dina projekt för att skapa webbplatser, genom att konsultera vår guide om WordPress blogg skapande eller den på Divi: det bästa WordPress-temet genom tiderna.

Men under tiden dela den här artikeln på dina olika sociala nätverk.