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 lägger till anpassade meta-fält till anpassade taxonomier i WordPress

Vill du låsa upp ännu mer organisationskraft i WordPress? Prova att lägga till anpassade metafält till dina anpassade taxonomier.

Anpassade taxonomier låter dig organisera ditt innehåll utöver kategorier och taggar. Men ibland finner vi att det är användbart att lägga till ytterligare detaljer och fält för att beskriva dem, vilket är där anpassade metafält kommer in.

I den här artikeln visar vi hur du lägger till ytterligare metafälten till dina anpassade taxonomier i WordPress.

Hur man lägger till anpassade meta-fält till anpassade taxonomier i WordPress

När ska du lägga till anpassade metafält till en anpassad taxonomi?

När du skapar nytt innehåll på din WordPress-webbplats kan du organisera det med hjälp av de två standardtaxonomierna, kategorier och taggar.

Vissa webbplatser drar nytta av användningen av anpassade taxonomier. Dessa gör det möjligt att sortera ditt innehåll på ytterligare sätt.

Till exempel kan en webbplats som recenserar böcker lägga till taxonomierna 'Ämnen' och 'Författare' så att besökare snabbt kan hitta de recensioner de är intresserade av.

För mer information, se vår guide om hur man skapar anpassade taxonomier i WordPress.

Varje taxonomi har som standard bara tre eller fyra fält: namn, slug, förälder (om den är hierarkisk) och beskrivning.

Taxonomier har 3 eller 4 fält som standard

Ibland är det användbart att lägga till ytterligare fält för att bättre beskriva taxonomin. Du kan till exempel lägga till ett fält för ‘födelseår’ till en taxonomi för ‘författare’.

Med det sagt, här är hur du lägger till anpassade metafält till anpassade taxonomier i WordPress.

Steg 1: Lägga till anpassade metafält till anpassade taxonomier i WordPress

Först måste du installera och aktivera pluginet Advanced Custom Fields. För att lära dig mer, se vår steg-för-steg-guide om hur man installerar ett WordPress-plugin.

Gå sedan till sidan Anpassade fält » Lägg till nytt. Här kan du lägga till en fältgrupp som innehåller ett eller flera nya fält.

Du kommer att bli ombedd att ge fältgruppen en titel, och detta kommer att visas tillsammans med de nya fälten när du lägger till eller redigerar taxonomin. I den här handledningen vill vi lägga till ett anpassat fält till Authors-taxonomin, så vi kommer att namnge fältgruppen 'Author Details'.

Lägg till ny fältgrupp

När du har gjort det bör du klicka på knappen '+ Lägg till fält' för att lägga till ett fält. En ny formulärruta visas där du kan fylla i detaljerna för det nya fältet.

När du har angett en fältetikett skapas fältnamnet automatiskt, och du kan redigera det om du vill. Du kommer att behöva använda fältnamnet senare i handledningen, så anteckna det.

Lägg till nytt fält

Nu bör du fylla i övriga detaljer för fältet, såsom fälttyp, instruktioner för dina författare som kommer att fylla i formuläret, och om detta fält är obligatoriskt. Andra alternativ som inte visas i skärmdumpen inkluderar standardtext, platshållartext, teckengräns och mer.

Om du vill lägga till ett andra fält, klickar du på knappen ‘+ Lägg till fält’ och upprepar processen. Annars, scrolla helt enkelt ner till avsnittet Plats.

Här kan du skapa regler som beskriver var det nya fältet ska visas. Du bör välja ‘Taxonomy’ från den första rullgardinsmenyn och lämna det mellersta fältet som ‘är lika med’. Välj slutligen rätt anpassad taxonomi för det sista fältet. I den här handledningen väljer vi ‘Author’.

Anpassad metafältplats

Om du vill lägga till detta fält i en annan taxonomi kan du klicka på knappen 'Lägg till regelgrupp' och upprepa steget.

Nu bör du justera eventuella andra inställningar på sidan. Vi lämnar helt enkelt standardvärdena. När du är klar bör du skrolla till toppen av sidan och klicka på knappen 'Publicera'.

När du är klar, publicera fältgruppen

Grattis, du har framgångsrikt lagt till ett anpassat metafält till en anpassad taxonomi i WordPress. Men du har fortfarande mer arbete att göra.

Steg 2: Lägga till data i det nya anpassade metafältet

Medan taxonomin har ett nytt fält, innehåller det ännu ingen data. Du bör ta lite tid på dig att göra det nu.

I vårt exempel behöver vi ange födelseåret för varje författare. För att göra det behöver vi navigera till Inlägg » Författare och klicka på namnet på författaren vi vill redigera.

Klicka på Anpassad Taxonomi i din adminmeny

Därefter kan vi ange data i det nya fältet. I det här fallet anger vi födelseåret för den författaren. Glöm inte att klicka på knappen 'Uppdatera' för att spara de nya uppgifterna.

Ange data i det nya fältet

Du bör följa samma steg på din webbplats för att lägga till data i din anpassade taxonomi.

När du är klar finns det fortfarande ett steg kvar. Även om du kan se anpassade fältet när du är inloggad i ditt WordPress adminområde, kommer besökare på din webbplats inte att kunna se det. Du måste lägga till fältet på anpassade taxonomins arkivsida.

Steg 3: Visa ett anpassat metafält på din taxonomiarkivsida

I det här steget behöver du lägga till kod i dina temafiler. Om du inte har gjort det tidigare, se vår nybörjarguide om hur du klistrar in kodsnuttar från webben i WordPress.

Det första du behöver göra är att gå in i din temas mapp och leta efter din taxonomiarkivfil. Den kommer att ha ett namn som taxonomy-DITTTAXONOMINAMN.php.

Till exempel, om du har en anpassad taxonomi som heter 'författare', då behöver du leta efter en fil som heter taxonomy-authors.php.

Om du inte ser den filen, leta då efter archive.php. Du måste skapa en kopia av den filen och namnge den som beskrivs ovan.

Notera: Om ditt tema inte inkluderar archive.php, använder du förmodligen ett WordPress-temaramverk och måste skapa taxonomiarkivet manuellt. En bra utgångspunkt för att lära dig hur du skapar arkivfiler är vår guide om hur man skapar anpassade arkivsidor i WordPress.

Nu behöver du lägga till följande kod i taxonomiarkivet precis före loopen:

<?php

// get the current taxonomy term
$term = get_queried_object();

// get the taxonomy meta field
$taxonomymetafield = get_field('FIELDNAME', $term);

// display the taxonomy meta field
echo $taxonomymetafield;

?>

Notera att du behöver ersätta 'FIELDNAME' med det faktiska fältnamn du skapade ovan. Kom ihåg att vi bad dig att notera det.

I vårt exempel är fältnamnet 'year_of_birth'. Vi lägger också till en beskrivning så att våra besökare förstår vad fältet betyder. Så vi lägger till följande kod i arkivfilen för taxonomi taxonomy-authors.php:

<?php

// get the current taxonomy term
$term = get_queried_object();

// get the taxonomy meta field
$taxonomymetafield = get_field('year_of_birth', $term);

// display the taxonomy meta field
echo "Year of birth: ";
echo $taxonomymetafield;

?>

Så här såg det ut när vi testade det på vår demosida:

Förhandsgranskning av anpassat metafält

Vi hoppas att den här handledningen hjälpte dig att lära dig hur du lägger till anpassade meta-fält till anpassade taxonomier i WordPress. Du kanske också vill lära dig hur du lägger till nyckelord och metabeskrivningar i WordPress, eller kolla in vår lista över nödvändiga WordPress-plugins för att växa din webbplats.

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

45 CommentsLeave a Reply

  1. Om du inte kan få din data att visas och du använder en nyare version av WordPress, använd get_term_meta() istället för get_tax_meta().

  2. här är min kod:
    $config = array(
    ‘id’ => ‘tax_meta_box’, // meta box id, unik per meta box
    ‘title’ => ‘Tax Meta Box’, // meta box titel
    ‘pages’ => array(‘category’), // taxonominamn, accepterar kategorier, post_tag och anpassade taxonomier
    ‘context’ => ‘normal’, // var meta boxen visas: normal (standard), avancerad, sida; valfritt
    ‘fields’ => array(), // lista över meta-fält (kan läggas till med fält-arrayer)
    ‘local_images’ => false, // Använd lokala eller hostade bilder (meta box-bilder för lägg till/ta bort)
    ‘use_with_theme’ => get_template_directory_uri() . ‘/Tax-Meta-Class/Tax-meta-class’
    );
    /*
    * Initiera din meta box
    */
    $my_meta = new Tax_Meta_Class($config);
    // Bildfält
    $my_meta->addImage(‘image_field’,array(‘name’=> __(‘Min Bild ‘,’tax-meta’)));

    $my_meta->Finish();
    ———————————————————————————————————————–
    term_id;
    $saved_data = get_tax_meta($term_id,’image_field’,true);
    echo ”;
    echo $term_id; // Skriver ut ‘1’ vilket är kategorins ID
    echo $saved_data; // Visar ingenting. Undrar varför!!
    exit;

    ?>

  3. Jag har också problem med att få sökvägen till en uppladdad bild. Den skriver bara ut:

    Array

    …textfält är bra.

    Jag använder:

    $prefix = ‘ttp_’;

    $my_meta->addImage($prefix.’logo_id’,array(‘name’=> __(‘Logo’,’tax-meta’)));

    Och på taxonomy.php-sidan:

    $logo = get_tax_meta($term->term_id, ttp_logo_id);

    Kan någon hjälpa mig, snälla? Jag har hållit på med detta i TIMMAR!

  4. För alla som kämpar för att få detta att läsas ut, jag hittade ett felaktigt apostrof där, detta fungerar för mig:

    $data = get_tax_meta($term->term_id, ba_text_field_id);
    echo $data;

  5. Hej,

    Jag har aktiverat pluginet. men jag ser inte var jag kan lägga till anpassade taxonomifält på adminsidan. vänligen svara mig.

    Tack,
    Ketan.

  6. Thanks a lot this has been very useful!!!! :D

    Jag visar korrekt ett textfält med den här koden:
    //Hämta rätt taxonomi-ID med slug
    $term = get_term_by( ‘slug’, get_query_var( ‘term’ ), get_query_var( ‘taxonomy’ ) );

    //Hämta taxonomimetadata
    $saved_data = get_tax_meta($term->term_id,’ba_text_field_id’);
    echo $saved_data;

    MEN jag behöver också visa en bild, jag använder den här php-koden i min mall:

    //Hämta rätt taxonomi-ID med slug
    $term = get_term_by( ‘slug’, get_query_var( ‘term’ ), get_query_var( ‘taxonomy’ ) );

    //Hämta taxonomimetadata
    $saved_data = get_tax_meta($term->term_id,’ba_image_field_id’);
    echo $saved_data;

    But it doesn’t display anything! :(

    Det visar bara ett enda ord “array”

    Vad kan vara fel?

  7. Jag sitter fast.

    Jag kan se metadataalternativet i wordpresskategorier och inte i min anpassade taxonomi. Var kan jag lägga till detta alternativ för att lägga till anpassad meta i min anpassade taxonomi? Var definieras det?

  8. Tack så mycket. Jag kan se att det finns en massa fält som visas vid inläggskategorin. Jag vill dock bara veta hur jag gör koden för att användas endast för woocommerce produktkategori.

    Kan någon ge ett tips?

  9. Hur skulle du hämta taxonomiinformationen på en anpassad sidmall istället för en taxonomy.php-sida?

  10. Tack för den här handledningen! Hur får jag metan att visas på en anpassad inläggssida som jag har skapat istället för bara taxonomisidan?

  11. Hej alla,

    För de som har problem med att visa innehållet som sparas. Använd prefixet framför nyckeln.

    //Hämta taxonomimetadata
    $saved_data = get_tax_meta($term->term_id,’text_field_id’);
    echo $saved_data;

    Det borde vara ba_text_field_id (givet att prefixet är ba_).

    Hoppas detta hjälper, hej.

    • Jag ville instämma i den här kommentaren, eftersom det kan vara ganska förvirrande att förstå varför exemplet inte fungerar. Om du tittar i filen "Tax meta class" ser du högst upp att Ohad definierar en $prefix-variabel som läggs till varje spara-funktion.

      För att resultatet ska skrivas ut måste du inkludera prefixet. Du kan ställa in prefixet till vad du vill, inklusive ””. Jag har ingen aning om vad ”ba_” står för, men det är vad som finns där som standard.

      Exemplet ska lyda:
      $saved_data = get_tax_meta($term->term_id,'ba_text_field_id');

  12. Ok, jag sitter fast.

    //Hämta rätt taxonomi-ID med slug
    $term = get_term_by( ‘slug’, get_query_var( ‘term’ ), get_query_var( ‘taxonomy’ ) );

    //Hämta taxonomimetadata
    $saved_data = get_tax_meta($term->term_id,’text_field_id’);
    echo $saved_data;

    Så ‘taxonomy’ är min anpassade taxonomi, låt oss säga ‘project_clients’
    ‘text_field_id’ är ID:t för inmatningsfältet, det är $prefix.’text_area’…

    Vad är 'term'?????

    • Ante,
      Har du gjort några framsteg med detta??

      Jag undrar samma sak – har gått igenom så många kommentarer och sidor som pratar om detta, men kan inte hitta en lösning. All hjälp uppskattas om du har hittat svaret.

      Att bara lägga till följande i min taxonomy.php-fil fungerar inte:

      //Hämta rätt taxonomi-ID med slug
      $term = get_term_by( ‘slug’, get_query_var( ‘term’ ), get_query_var( ‘taxonomy’ ) );

      //Hämta taxonomimetadata
      $saved_data = get_tax_meta($term->term_id,’text_field_id’);
      echo $saved_data;

  13. Jag försöker lägga till vad jag än skriver i WYSIWYG till webbplatsens frontend. Jag har ärligt talat ingen aning om vad jag gör, men det här är min kod hittills:

    term_id,’wysiwyg_field_id’);

    ?>

    <a href="”>

  14. Hej,

    Jag använde pluginet men jag kan inte få koden på min Taxonomy.php.

    Jag använder den här koden för att visa fältet

    term_id,’text_field_id’); echo $saved_data;

    ?>
    Behöver jag göra något annat?

    Tack

  15. Hej, speciellt tack för den här idén. Det här pluginet fungerar utmärkt. Jag har lagt till tre extra fält i alternativet för att lägga till och redigera specifika termer. men när jag skapar en kategori i det vid den termen vid den tidpunkten kan jag inte lagra värdet för de tre extra fälten. Så några förslag på det?

  16. Men hur får jag ut datan från arkivsidan? du borde lägga till detta också eftersom det är en vanlig begäran.

  17. Briljant! Du har ingen aning om hur mycket tid jag spenderade på att leta efter ett sätt att lägga till "kvantiteter" till "produkter". Eftersom detta inte är en kommersiell webbplats var det krångligt att ha ett matinlägg kopplat till en Ingredienstaxonomi och inte kunna ändra antalet gurkor för varje inlägg.
    Tack!

  18. Hej – Jag har problem med att få detta att fungera. Jag har datafälten synliga i min anpassade taxonomi men jag kan inte anropa datan i min brand-description.php med php-koden du klistrade in längst ner i din artikel. Det visas inget fel, det fungerar bara inte.

    Jag skulle verkligen uppskatta lite ytterligare förklaring med detta om du har tid.

    Tack

  19. Det här är verkligen ett fynd! Har försökt lösa detta i några veckor. Någon idé om hur man lägger till de nya fälten i kolumnerna?

    • Jag har också problem med att visa något på sidan. Jag har den här koden tillämpad och data i fälten men inget visas på webbplatsen

      term_id,’textarea_field_id’);
      echo $saved_data;

      ?>

  20. Tja, det här låter bra och fungerade för kategorierna, men av någon anledning fungerade det inte för en anpassad taxonomi jag har. Har jag missat något? Finns det någon krok någonstans som jag inte har tittat på?
    Hur som helst, tack så mycket för dessa upplysningar om Ohads arbete. Jag har funderat på det och undrat hur i hela friden jag skulle kunna använda det ordentligt. Jag är bara den gör-det-själv-typen, inte en riktig utvecklare, jag är säker på att du redan har förstått det.
    Tack igen.

      • För att klargöra – Rad 24 i taxonomy-fields.php

        ‘pages’ => array(‘category’), // taxonomy name, accept categories, post_tag and custom taxonomies

        ÄNDRA XXX till vad din anpassade taxonomi heter
        'pages' => array('xxxxx'), // taxonomins namn, accepterar kategorier, post_tag och anpassade taxonomier

  21. det är coolt..
    men var sparas datan...? i postmeta-tabellen eller skapar den en ny tabell?

  22. Oh thanks you so much, I’ve been wondering how to identify tags as being English or Spanish for my bilingual site – this helps enormously :-)

  23. Jag har faktiskt precis avslutat kodningen av anpassade fält för en anpassad taxonomi för ett projekt jag arbetar med. Jag älskar flexibiliteten – kommer definitivt att kolla in pluginet för framtida projekt!

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.