Pålitliga WordPress-handledningar, när du behöver dem som mest.
Nybörjarguide till WordPress
WPB Cup
25 miljoner+
Webbplatser som använder våra plugins
16+
År av WordPress-erfarenhet
3000+
WordPress-handledningar
av experter

Hur man visar endast föräldrakategori i WordPress-inläggsloopen

Vi vet alla hur viktigt det är att organisera innehåll på en webbplats. På WPBeginner förstår vi att användning av kategorier och underkategorier hjälper besökare att utforska din webbplats och förbättrar hur den rankas i sökresultaten. En bra kategoristruktur hjälper också besökare att hitta vad de behöver.

De flesta WordPress-teman listar automatiskt alla kategorier som är associerade med ett inlägg, även underkategorier. Detta kan göra saker mycket förvirrande för dina besökare. Vi hade dock nyligen en läsare som ville visa endast huvudkategorin på sin sida för enskilda inlägg. De ville att deras besökare skulle fokusera på huvudämnet istället för att överväldigas av många underkategorier.

I den här artikeln visar vi hur du använder en enkel kodsnutt för att ändra hur WordPress visar kategorier. Detta gör att du kan visa endast huvudkategorin på en enskild inläggssida, vilket kan förbättra besökarnas upplevelse på din webbplats avsevärt.

Visa endast föräldrakategorin i WordPress-loopen

När ska man bara visa föräldrakategorin i WordPress

Många webbplatsägare använder föräldra- och barnkategorier för att skapa en struktur för sina webbplatser.

Till exempel kan en reseblogg ha resmål organiserade efter kategorier där varje region är en överordnad kategori och städer som underordnade kategorier.

Föräldra- och underkategorier visas

På samma sätt kan en matblogg publicera recept organiserade i överordnade och underordnade kategorier. Till exempel kan en överordnad kategori vara kökstyp, och en underordnad kategori kan vara rättertyp.

Nu använder de flesta WordPress-teman taggen the_category() mall-taggen för att lista alla kategorier som är associerade med ett inlägg.

Den här funktionen är effektiv, men den kommer att visa alla kategorier alfabetiskt och helt ignorera förälder/barn-relationen.

Med det sagt, låt oss titta på hur man ändrar detta beteende och bara visar föräldrakategorin i WordPress-loopen.

Visa endast överordnad kategori i WordPress inläggsloop

För den här handledningen behöver du redigera dina WordPress-temafiler. Om du inte har gjort det tidigare, kolla in vår artikel om hur man kopierar och klistrar in kodavsnitt i WordPress.

Först måste du lägga till kod i ditt temas functions.php-fil eller använda ett plugin för kodavsnitt. Vi rekommenderar att använda WPCode eftersom det låter dig lägga till kod utan att bryta din webbplats, och dess smarta validering av kodavsnitt hjälper dig att förhindra vanliga kodfel.

Läs mer i vår guide om hur man lägger till anpassad kod i WordPress utan att förstöra din webbplats.

För den här handledningen kommer vi att använda gratisversionen av WPCode. Även om den inte har alla avancerade funktioner som fullversionen, har den allt du behöver för att komma igång.

Det första du behöver göra är att installera och aktivera WPCode-pluginet. Om du behöver hjälp kan du följa vår steg-för-steg-guide om hur man installerar ett WordPress-plugin.

Vid aktivering kan du gå till sidan WPCode » Nytt kodavsnitt

Lägga till ett nytt kodavsnitt i WPCode

Detta öppnar en sida där du kan skapa ett anpassat kodavsnitt.

Först måste du lägga till en titel för kodavsnittet. Därefter kan du kopiera och klistra in följande kodavsnitt i fönstret Kodförhandsgranskning.

function wpb_get_parent_terms($taxonomy = 'category')
{
    $currentPost = get_post();
    $terms       = get_the_terms($currentPost->ID, $taxonomy);

    if (is_wp_error($terms)) {
        /** @var \WP_Error $terms */
        throw new \Exception($terms->get_error_message());
    }

    $map = array_map(
        function ($term) use ($taxonomy) {
            return '<a href="' . esc_url(get_term_link($term->term_id,
                    $taxonomy)) . '" title="' . esc_attr($term->name) . '">
                ' . $term->name . '
                </a>';
        },
        array_filter($terms, function ($term) {
            return $term->parent == 0;
        })
    );

    return implode(', ', $map);
}
Lägga till en titel och kodavsnitt i WPCode

Därefter behöver du välja alternativet 'PHP Snippet' från rullgardinsmenyn 'Code Type' och växla omkopplaren 'Inactive' till 'Active'.

Slutligen, se till att du klickar på knappen 'Spara kodavsnitt' för att spara dina inställningar.

I WPCode, välj PHP som kodtyp och aktivera kodsnutten

Den här koden skapar helt enkelt en ny funktion wpb_get_parent_terms(). Som standard kommer den här funktionen endast att visa överordnade kategorier.

Därefter behöver du placera den här funktionen i dina WordPress-temafiler där du vill visa föräldrakategorin ensam.

För att ta reda på vilken mallfil du ska titta i, se vårt fuskblad för WordPress mallhierarki för nybörjare.

I grund och botten kommer du att leta efter mall-taggen the_category() inuti WordPress-loopen. När du har hittat den behöver du ersätta den med följande kod:

<?php wpb_get_parent_terms(); ?> 

Den här koden kommer att visa din föräldrakategori ensam.

Om du har flera kategorier som är antingen överordnade eller fristående kategorier, kommer alla sådana kategorier också att visas.

Endast föräldrakategorin visas

Kodavsnittet kommer att fungera för alla andra taxonomier också. Till exempel WooCommerce-produktkategorier eller någon anpassad taxonomi som du kan ha.

Ändra bara koden så här:

<?php wpb_get_parent_terms( 'product_cat '); ?>

Den här koden visar produktkategorier för en WooCommerce-butik.

Den kommer också bara att visa föräldra- eller fristående kategorier för en produkt.

Visa endast föräldrakategorin

Om du vill visa en anpassad taxonomi, ersätt då product_cat med namnet på din anpassade taxonomi.

Experthandledningar för att visa kategorier i WordPress

Vi hoppas att den här artikeln hjälpte dig att lära dig hur du visar endast föräldrakategorin för dina WordPress-inlägg. Du kanske också vill se några andra guider relaterade till att visa WordPress-kategorier:

Om du gillade den här artikeln, prenumerera då på vår YouTube-kanal för WordPress-videoguider. Du kan också hitta oss på Twitter och Facebook.

Upplysning: Vårt innehåll stöds av läsarna. Det innebär att om du klickar på några av våra länkar kan vi tjäna en provision. Se hur WPBeginner finansieras, varför det är viktigt och hur du kan stödja oss. Här är vår redaktionella process.

Det ultimata WordPress-verktyget

Få GRATIS tillgång till vår verktygslåda - en samling WordPress-relaterade produkter och resurser som alla proffs bör ha!

Läsarnas interaktioner

11 CommentsLeave a Reply

  1. lägg datumstämplar till dina inlägg. på så sätt vet vi när du skrev det och inkluderar inte kodavsnitt som är 5 år gamla.

Lämna ett svar

Tack för att du väljer att lämna en kommentar. Tänk på att alla kommentarer modereras enligt vår kommentarspolicy, och din e-postadress kommer INTE att publiceras. Använd INTE nyckelord i namn fältet. Låt oss ha en personlig och meningsfull konversation.