{"id":142204,"date":"2023-04-10T08:00:00","date_gmt":"2023-04-10T13:00:00","guid":{"rendered":"https:\/\/wpengine.com\/?p=142204"},"modified":"2024-07-15T15:54:00","modified_gmt":"2024-07-15T20:54:00","slug":"acf-version-6-1","status":"publish","type":"post","link":"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/","title":{"rendered":"Custom Post Types and Taxonomies in ACF 6.1"},"content":{"rendered":"\n<p>Custom fields are the standard method for assigning custom metadata to posts and pages in WordPress, and for more than 10 years, Advanced Custom Fields has been the undisputed leading solution for developers and content creators who want simplicity and flexibility. Features like field groups, conditional logic, the Repeater field, Relationship fields, and more recently custom ACF Blocks, have made the plugin an invaluable tool for many freelancers and agencies. More than 4.5 million websites now use ACF to extend WordPress.&nbsp;<\/p>\n\n\n\n<p>Now, <a href=\"https:\/\/wpengine.com\/blog\/major-update-advanced-custom-fields-users-register-custom-post-types-and-taxonomies\/\" target=\"_blank\" rel=\"noreferrer noopener\">with the release of ACF 6.1<\/a>, the next generation of ACF rolls out. With version 6.1, you can not only use the plugin to add custom fields, but also add and configure custom post types and custom taxonomies.<\/p>\n\n\n\n<figure class=\"wp-block-video aligncenter\"><video height=\"1080\" style=\"aspect-ratio: 1646 \/ 1080;\" width=\"1646\" controls src=\"https:\/\/wpengine.com\/wp-content\/uploads\/2023\/04\/acf_cpt_tax_demo.mp4\"><\/video><figcaption class=\"wp-element-caption\"><em>Registering a custom post type and custom taxonomy in Advanced Custom fields 6.1<\/em><\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">What This Means<\/h2>\n\n\n\n<p>When extending WordPress, there is a common structure for how data is modeled for a website or application. It often has three pieces and looks something like the table below, showing how things are in WordPress core and how things look when folk extend WordPress:<\/p>\n\n\n\n<p><\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"358\" src=\"https:\/\/wpengine.com\/wp-content\/uploads\/2023\/04\/acf_cpts_tax_table@3x-1024x358.png\" alt=\"\" class=\"wp-image-142207\" srcset=\"https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/acf_cpts_tax_table@3x-1024x358.png 1024w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/acf_cpts_tax_table@3x-540x189.png 540w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/acf_cpts_tax_table@3x-768x268.png 768w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/acf_cpts_tax_table@3x-1536x536.png 1536w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/acf_cpts_tax_table@3x-2048x715.png 2048w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/acf_cpts_tax_table@3x-1500x524.png 1500w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>The post types, metadata, and taxonomies for examples 1 and 2 are included out-of-the-box in WordPress. If you\u2019ve ever written a blog post in WordPress, these will be familiar to you. Examples 3 and 4 show custom implementations where a developer extends WordPress to facilitate these for the website or application they are building. Examples being for \u201cbook review\u201d and \u201ccar listing\u201d websites.<\/p>\n\n\n\n<p>Up until today, Advanced Custom Fields handled (quite brilliantly, might I add) only metadata. With version 6.1, it now handles the full three layers. These three layers of configuration are often called content modeling and are something so widely implemented across sites built with ACF that it made sense to bring these features into the core plugin.<\/p>\n\n\n\n<p>Bringing these features together means that site developers can now minimize the number of plugins they need to rely on when scaffolding out their content model.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">A Boon to Headless WordPress Developers<\/h2>\n\n\n\n<p>Another very exciting factor of these new features is the behind-the-scenes API improvements. Developers love ACF for its beautiful balance between flexibility and structure and often use it for headless WordPress applications.&nbsp;<\/p>\n\n\n\n<p>We frequently see sites hosted with our <a href=\"https:\/\/wpengine.com\/headless-wordpress\/\" target=\"_blank\" rel=\"noreferrer noopener\">Headless WordPress platform<\/a> using ACF as their content modeling tool of choice. With these updates, headless WordPress developers can take ACF even further as the standardized foundation for their headless projects.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Better In-App Feature Discovery<\/h2>\n\n\n\n<p>Too often in software, users don\u2019t know a feature exists until they need it and go looking for it. This can sometimes mean our users miss out on value. Our recent \u201c<a href=\"https:\/\/youtu.be\/GsgQyjc_UKM\" target=\"_blank\" rel=\"noreferrer noopener\">7 Things You Didn\u2019t Know You Could Do With ACF<\/a>\u201d session at DE{CODE} was a testament to this in ACF. We showcased a roster of features, tips, and tricks that highlighted unrealized value to many long-term ACF users.&nbsp;<\/p>\n\n\n\n<p>With 6.1 we\u2019re starting to introduce improvements to the UI that encourage native and contextual discovery. For instance, as a user selects a field type they can optionally \u201cbrowse fields\u201d, opening a modal with far more context than the simple drop-down list provides.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"728\" src=\"https:\/\/wpengine.com\/wp-content\/uploads\/2023\/04\/6.1-internal-3-1024x728.png\" alt=\"\" class=\"wp-image-142208\" style=\"width:768px;height:546px\" srcset=\"https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-3-1024x728.png 1024w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-3-540x384.png 540w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-3-768x546.png 768w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-3-1536x1092.png 1536w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-3-1500x1067.png 1500w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-3.png 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"821\" src=\"https:\/\/wpengine.com\/wp-content\/uploads\/2023\/04\/6.1-internal-4-1024x821.png\" alt=\"\" class=\"wp-image-142209\" style=\"width:768px;height:616px\" srcset=\"https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-4-1024x821.png 1024w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-4-540x433.png 540w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-4-768x616.png 768w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-4-1536x1232.png 1536w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-4-1500x1203.png 1500w, https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/6.1-internal-4.png 1600w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Free as in Beer<\/h2>\n\n\n\n<p>Now you may assume that these new features are only available in ACF PRO. Well, you would be incorrect! Registering custom taxonomies and post types can be done in both the <a href=\"https:\/\/wordpress.org\/plugins\/advanced-custom-fields\/\" target=\"_blank\" rel=\"noreferrer noopener\">free<\/a> and PRO versions of ACF.&nbsp;<\/p>\n\n\n\n<p>At WP Engine, we\u2019re committed to enabling as broad an audience of WordPress professionals as possible to build incredible sites. We\u2019re incredibly excited to bring the value of these new features to all ACF users, for both traditional and headless projects.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Level up Your ACF Skillz<\/h2>\n\n\n\n<p>ACF is central to the way so many build with WordPress and our developer advocate team is investing more and more into events and content to enable you to succeed. If you\u2019re looking to grow as a WordPress professional, make sure you check out our <a href=\"https:\/\/wpengine.com\/builders\/\" target=\"_blank\" rel=\"noreferrer noopener\">Builders community<\/a>. Plenty of ACF goodness is waiting there for you!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Custom fields are the standard method for assigning custom metadata to posts and pages in WordPress, and for more than 10 years, Advanced Custom Fields has been the undisputed leading solution for developers and content creators who want simplicity and flexibility. Features like field groups, conditional logic, the Repeater field, Relationship fields, and more recently<span class=\"tile__ellipses\">&hellip;<\/span><span class=\"tile__ellipses--animated\"><\/span><\/p>\n","protected":false},"author":296,"featured_media":142210,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[528,9],"tags":[1395],"class_list":["post-142204","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-plugins","category-product-updates","tag-advanced-custom-fields"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Custom Post Types and Taxonomies in ACF 6.1<\/title>\n<meta name=\"description\" content=\"Advanced Custom Fields has truly become a full content modeling powerhouse thanks to the latest 6.1 release!\" \/>\n<meta name=\"robots\" content=\"noindex, follow\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Custom Post Types and Taxonomies in ACF 6.1\" \/>\n<meta property=\"og:description\" content=\"Advanced Custom Fields has truly become a full content modeling powerhouse thanks to the latest 6.1 release!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/\" \/>\n<meta property=\"og:site_name\" content=\"WP Engine\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/wpengine\" \/>\n<meta property=\"article:published_time\" content=\"2023-04-10T13:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-07-15T20:54:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/acf-header.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"627\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Rob Stinson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"Custom Post Types and Taxonomies in ACF 6.1\" \/>\n<meta name=\"twitter:description\" content=\"Advanced Custom Fields has truly become a full content modeling powerhouse thanks to the latest 6.1 release!\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/acf-header.png\" \/>\n<meta name=\"twitter:creator\" content=\"@wpengine\" \/>\n<meta name=\"twitter:site\" content=\"@wpengine\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Rob Stinson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/\",\"url\":\"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/\",\"name\":\"Custom Post Types and Taxonomies in ACF 6.1\",\"isPartOf\":{\"@id\":\"https:\/\/wpengine.com\/case-studies\/#website\"},\"datePublished\":\"2023-04-10T13:00:00+00:00\",\"dateModified\":\"2024-07-15T20:54:00+00:00\",\"author\":{\"@id\":\"https:\/\/wpengine.com\/case-studies\/#\/schema\/person\/f0848121cff19947fa7b3aa561692150\"},\"description\":\"Advanced Custom Fields has truly become a full content modeling powerhouse thanks to the latest 6.1 release!\",\"breadcrumb\":{\"@id\":\"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/wpengine.com\/case-studies\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Custom Post Types and Taxonomies in ACF 6.1\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/wpengine.com\/case-studies\/#website\",\"url\":\"https:\/\/wpengine.com\/case-studies\/\",\"name\":\"WP Engine\",\"description\":\"Managed Hosting for WordPress\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/wpengine.com\/case-studies\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/wpengine.com\/case-studies\/#\/schema\/person\/f0848121cff19947fa7b3aa561692150\",\"name\":\"Rob Stinson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/wpengine.com\/case-studies\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/9c6fb36ed63ff64e249480699a1d2f59c98cceaf3a4327c75e5d03c695c191d4?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/9c6fb36ed63ff64e249480699a1d2f59c98cceaf3a4327c75e5d03c695c191d4?s=96&d=mm&r=g\",\"caption\":\"Rob Stinson\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Custom Post Types and Taxonomies in ACF 6.1","description":"Advanced Custom Fields has truly become a full content modeling powerhouse thanks to the latest 6.1 release!","robots":{"index":"noindex","follow":"follow"},"og_locale":"en_US","og_type":"article","og_title":"Custom Post Types and Taxonomies in ACF 6.1","og_description":"Advanced Custom Fields has truly become a full content modeling powerhouse thanks to the latest 6.1 release!","og_url":"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/","og_site_name":"WP Engine","article_publisher":"https:\/\/www.facebook.com\/wpengine","article_published_time":"2023-04-10T13:00:00+00:00","article_modified_time":"2024-07-15T20:54:00+00:00","og_image":[{"width":1200,"height":627,"url":"https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/acf-header.png","type":"image\/png"}],"author":"Rob Stinson","twitter_card":"summary_large_image","twitter_title":"Custom Post Types and Taxonomies in ACF 6.1","twitter_description":"Advanced Custom Fields has truly become a full content modeling powerhouse thanks to the latest 6.1 release!","twitter_image":"https:\/\/wpengine.com\/case-studies\/wp-content\/uploads\/2023\/04\/acf-header.png","twitter_creator":"@wpengine","twitter_site":"@wpengine","twitter_misc":{"Written by":"Rob Stinson","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/","url":"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/","name":"Custom Post Types and Taxonomies in ACF 6.1","isPartOf":{"@id":"https:\/\/wpengine.com\/case-studies\/#website"},"datePublished":"2023-04-10T13:00:00+00:00","dateModified":"2024-07-15T20:54:00+00:00","author":{"@id":"https:\/\/wpengine.com\/case-studies\/#\/schema\/person\/f0848121cff19947fa7b3aa561692150"},"description":"Advanced Custom Fields has truly become a full content modeling powerhouse thanks to the latest 6.1 release!","breadcrumb":{"@id":"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/wpengine.com\/case-studies\/acf-version-6-1\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/wpengine.com\/case-studies\/"},{"@type":"ListItem","position":2,"name":"Custom Post Types and Taxonomies in ACF 6.1"}]},{"@type":"WebSite","@id":"https:\/\/wpengine.com\/case-studies\/#website","url":"https:\/\/wpengine.com\/case-studies\/","name":"WP Engine","description":"Managed Hosting for WordPress","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/wpengine.com\/case-studies\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/wpengine.com\/case-studies\/#\/schema\/person\/f0848121cff19947fa7b3aa561692150","name":"Rob Stinson","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/wpengine.com\/case-studies\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/9c6fb36ed63ff64e249480699a1d2f59c98cceaf3a4327c75e5d03c695c191d4?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/9c6fb36ed63ff64e249480699a1d2f59c98cceaf3a4327c75e5d03c695c191d4?s=96&d=mm&r=g","caption":"Rob Stinson"}}]}},"acf":[],"_links":{"self":[{"href":"https:\/\/wpengine.com\/case-studies\/wp-json\/wp\/v2\/posts\/142204","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wpengine.com\/case-studies\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wpengine.com\/case-studies\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wpengine.com\/case-studies\/wp-json\/wp\/v2\/users\/296"}],"replies":[{"embeddable":true,"href":"https:\/\/wpengine.com\/case-studies\/wp-json\/wp\/v2\/comments?post=142204"}],"version-history":[{"count":0,"href":"https:\/\/wpengine.com\/case-studies\/wp-json\/wp\/v2\/posts\/142204\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wpengine.com\/case-studies\/wp-json\/wp\/v2\/media\/142210"}],"wp:attachment":[{"href":"https:\/\/wpengine.com\/case-studies\/wp-json\/wp\/v2\/media?parent=142204"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wpengine.com\/case-studies\/wp-json\/wp\/v2\/categories?post=142204"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wpengine.com\/case-studies\/wp-json\/wp\/v2\/tags?post=142204"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}