{"id":40842,"date":"2020-07-07T14:30:44","date_gmt":"2020-07-07T14:30:44","guid":{"rendered":"https:\/\/elementor.com\/blog\/?p=40842"},"modified":"2025-12-04T01:33:01","modified_gmt":"2025-12-03T23:33:01","slug":"wordpress-custom-fields","status":"publish","type":"post","link":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/","title":{"rendered":"The Complete Guide to WordPress Custom Fields"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"40842\" class=\"elementor elementor-40842\" data-elementor-post-type=\"post\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-c35885f elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"c35885f\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-2018d4f\" data-id=\"2018d4f\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-269cf18 elementor-widget elementor-widget-text-editor\" data-id=\"269cf18\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>If you want to build custom, <a href=\"https:\/\/elementor.com\/blog\/dynamic-content-elementor\/\">dynamic WordPress sites<\/a>, it&#8217;s important to understand how <a href=\"https:\/\/elementor.com\/resources\/glossary\/what-are-custom-fields-in-wordpress\/\">WordPress custom fields<\/a> work.<\/p><p>In a nutshell, custom fields let you store additional information about your blog posts, pages, custom post types, or even taxonomies (like categories and tags).<\/p><p>With <a href=\"https:\/\/elementor.com\/pro\/\" target=\"_blank\" rel=\"noopener\">Elementor Pro<\/a>, you can even take the information from your custom fields and dynamically include it in your Elementor designs and Theme Builder templates (meaning you can use custom fields to edit WordPress themes and child themes).<\/p><p>Put simply, custom fields are one of the main keys to unlocking WordPress&#8217;s power as a full <a class=\"wpil_keyword_link\" href=\"https:\/\/elementor.com\/blog\/cms\/\"   title=\"What Is a Content Management System (CMS)? (2025)\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"25888\">content management system<\/a>. Because they&#8217;re so important and so useful for building custom websites with Elementor, we&#8217;re going to dedicate an entire post to WordPress custom fields and how to use them.<\/p><p>Here&#8217;s what we&#8217;ll cover:<\/p><ul><li>More about what custom fields are and how they help you<\/li><li>How to add custom fields in WordPress<\/li><li>How to display data from custom fields on the front-end of your site<\/li><li>The difference between custom fields and post types\/taxonomies (and when to use each)<\/li><li>The best custom fields plugins for WordPress<\/li><\/ul><p>Let&#8217;s dig in.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-15a366e elementor-widget elementor-widget-heading\" data-id=\"15a366e\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">What Are WordPress Custom Fields?\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8edf09d elementor-widget elementor-widget-text-editor\" data-id=\"8edf09d\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>As you learned in the intro, custom fields help you collect additional information about a piece of content on WordPress.<\/p><p>In technical terms, custom fields help you collect and manage metadata or &#8220;data that provides information about other data&#8221;.<\/p><p>When you add a new blog post in WordPress, you get to enter the title and content of the blog post in the editor. But what if you wanted to collect additional structured information?<\/p><p>For example, let&#8217;s say that you have a review blog and you want to assign a numerical rating to each review blog post that you publish.<\/p><p>You could add a new &#8220;Rating&#8221; custom field to your blog posts where you enter the number, along with some other useful information. These fields would get their own separate box and would be stored separately in the WordPress database (in postmeta). In fact, this is basically what most review plugins do.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5a2595b elementor-widget elementor-widget-image\" data-id=\"5a2595b\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"720\" height=\"578\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=578\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-example-of-custom-fields.png\" class=\"attachment-medium_large size-medium_large wp-image-40858\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-example-of-custom-fields.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-example-of-custom-fields-300x241.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5597710 elementor-widget elementor-widget-text-editor\" data-id=\"5597710\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Your next question might be &#8211; &#8220;why can&#8217;t you just add the rating in the WordPress editor with the text of the review.&#8221;<\/p><p>Well, you certainly could. However, separating this data into its own custom fields gives you a lot more flexibility. For example, you could:<\/p><ul><li>Automatically format the rating on the front-end of your site to create a styled review box.<\/li><li>Ensure that all of your review posts use the exact same formatting.<\/li><li>Use the review rating to query and sort content. For example, you could create a page that lists all of the reviews where you&#8217;ve given a perfect rating, or you could let visitors sort reviews by the review rating.<\/li><\/ul><p>These benefits are even more pronounced for more complex sites. For example, imagine that you created a real estate listing site with thousands of houses. You wouldn&#8217;t want to manually create the design for each house, right?<\/p><p>Imagine having to manually format the number of bedrooms, bathrooms, etc. for every single listing. It would take forever!<\/p><p>Instead, you could just fill in the basic details for bedrooms, bathrooms, etc. using custom fields and let your <a class=\"wpil_keyword_link\" href=\"https:\/\/elementor.com\/library\/all-categories\/\"   title=\"Alle categorie\u00ebn\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"25889\">template<\/a> automatically format all that information for each house.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-36dff9d elementor-widget elementor-widget-heading\" data-id=\"36dff9d\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Examples of How Custom Fields Can Help You<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c94cd76 elementor-widget elementor-widget-text-editor\" data-id=\"c94cd76\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>To illustrate how powerful custom fields can be, let&#8217;s look at a few real examples of how you could use custom fields.<\/p><p>This is by no means a complete list \u2014 it&#8217;s just some ideas to get your creative juices flowing.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6506138 elementor-widget elementor-widget-heading\" data-id=\"6506138\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Ecommerce Products<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fbdba9a elementor-widget elementor-widget-text-editor\" data-id=\"fbdba9a\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><a class=\"wpil_keyword_link\" href=\"https:\/\/elementor.com\/features\/woocommerce-builder\/\"   title=\"WooCommerce Builder\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"25886\">WooCommerce<\/a> is the most popular way to create an eCommerce store on WordPress, but it&#8217;s also a great example of WordPress custom fields in action.<\/p><p>If you want to create a working store, you&#8217;ll need to collect a lot of additional information about the products that you want to sell. For example, you&#8217;ll have:<\/p><ul><li>Prices<\/li><li>Stock status<\/li><li>Attributes<\/li><li>Etc.<\/li><\/ul><p>Custom fields let you store all of that additional metadata. WooCommerce then uses this data to properly display products on the front-end of your store.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f9bc58c elementor-widget elementor-widget-heading\" data-id=\"f9bc58c\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Real Estate Website\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-701368e elementor-widget elementor-widget-text-editor\" data-id=\"701368e\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Let&#8217;s go back to that real estate example from above.<\/p><p>If you want to use WordPress to create a real estate listing site, you&#8217;d first create a &#8220;House&#8221; custom post type. We&#8217;ll cover custom post types later on, but a custom post type is basically just another &#8220;type&#8221; of content like the default WordPress &#8220;Posts&#8221; and &#8220;Pages&#8221;.<\/p><p>When you add a new house, you would want the ability to easily collect information such as:<\/p><ul><li>Bedrooms<\/li><li>Bathrooms<\/li><li>Square footage<\/li><li>Price<\/li><li>Etc.<\/li><\/ul><p>You could add a custom field for each piece of information so that you can easily enter it in the backend editor and then automatically display it on the front-end of your site according to your template.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-dce854a elementor-widget elementor-widget-heading\" data-id=\"dce854a\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Restaurant Website\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1b67996 elementor-widget elementor-widget-text-editor\" data-id=\"1b67996\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>If you&#8217;re building a <a href=\"https:\/\/elementor.com\/blog\/real-estate-templates\/\">restaurant website<\/a>, you could use custom fields to help you easily create and maintain your menu.<\/p><p>You could create a new custom post type for &#8220;Menu Item&#8221;. Then, you could add custom fields to collect information such as:<\/p><ul><li>The dish&#8217;s price<\/li><li>Any relevant dietary concerns (for example, you could add checkboxes to indicate if a dish is gluten-free, whether it&#8217;s vegetarian, etc.)<\/li><li>Calories<\/li><li>Etc.<\/li><\/ul><p>As soon as you publish a new dish, it will automatically appear on the menu with all the proper formatting.<\/p><p>It&#8217;ll also be easier for non-technical users to add new menu items, change information, or remove menu items.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7eb6b7a elementor-widget elementor-widget-heading\" data-id=\"7eb6b7a\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\"><a href=\"https:\/\/elementor.com\/blog\/wordpress-restaurant-website\/\" target=\"_blank\">Learn How to Create a WordPress Restaurant Website<\/a><\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-669cbc5 elementor-widget elementor-widget-heading\" data-id=\"669cbc5\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">What Could You Use Custom Fields For?\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f37def1 elementor-widget elementor-widget-text-editor\" data-id=\"f37def1\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Hopefully, these examples got your creative juices flowing.<\/p><p>The most important question is &#8211; how could custom fields help improve your next WordPress website?<\/p><p>Are there any repetitive content formatting tasks that you currently perform that could be automated with custom fields?\u00a0<\/p><p>Would adding more information to your site help your users?\u00a0<\/p><p>Have you ever wished that you could create more complex WordPress sites? Like a job listing board? Or a business directory? Anything that goes beyond &#8220;Posts&#8221; and &#8220;Pages&#8221;?<\/p><p>Do your clients keep breaking things because you gave them full access to the editor? This is a great solution &#8211; create custom fields for all the things a client might want to change and then only give them access to those custom fields. That way, they can never accidentally break something.<\/p><p>Almost every WordPress site could benefit from custom fields in some way &#8211; so think about how custom fields could help yours.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1d21151 elementor-widget elementor-widget-heading\" data-id=\"1d21151\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">How to Add Custom Fields in WordPress\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b3e333e elementor-widget elementor-widget-text-editor\" data-id=\"b3e333e\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Now, let&#8217;s get into the more actionable steps of how to add and display custom fields on WordPress.<\/p><p>As is often the case with WordPress, there are two routes that you can follow to add custom fields:<\/p><ol><li>Use the manual method<\/li><li>Use a plugin<\/li><\/ol><p>In almost all situations, we would recommend that you use a custom field plugin. However, WordPress does include a native custom field feature, so we&#8217;re going to start our tutorial there.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ae819a8 elementor-widget elementor-widget-heading\" data-id=\"ae819a8\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">How to Use the Native WordPress Custom Fields Feature (Manual Method)\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9d82730 elementor-widget elementor-widget-text-editor\" data-id=\"9d82730\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Again, on a real WordPress site, you probably don&#8217;t want to use this feature. However, it&#8217;s a native WordPress feature, so we think it&#8217;s worthwhile to explain how it works.<\/p><p>You might never have seen it, but WordPress includes a feature to help you add custom fields from within the regular WordPress editor.<\/p><p>To make the custom fields interface visible, you need to open the menu in the top-right corner and select <strong>Options<\/strong> at the bottom. Then, check the box for <strong>Custom fields<\/strong> under <strong>Advanced panels<\/strong>.<\/p><p>You&#8217;ll then be prompted to reload the page to see the custom fields:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2dca555 elementor-widget elementor-widget-image\" data-id=\"2dca555\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"720\" height=\"630\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=630\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-1-enable-custom-fields.png\" class=\"attachment-large size-large wp-image-40847\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-1-enable-custom-fields.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-1-enable-custom-fields-300x263.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2be7951 elementor-widget elementor-widget-text-editor\" data-id=\"2be7951\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>If you&#8217;re using the Classic TinyMCE editor, you can show custom fields by clicking the <strong>Screen Options<\/strong> toggle at the top of the interface and checking the box for Custom Fields.<\/p><p>Once you reload the page, you&#8217;ll see a new <strong>Custom Fields<\/strong> box somewhere below the editor.<\/p><p>You can use the <strong>Name<\/strong> column drop-down to select from existing custom fields on your site (you&#8217;ll probably see some from your theme or plugins). Or, you can create your own custom field name.<\/p><p>Then, you can use the <strong>Value<\/strong> box to enter the information that you want to include in the custom field:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2e7453e elementor-widget elementor-widget-image\" data-id=\"2e7453e\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"720\" height=\"372\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=372\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-2-manually-add-custom-fields.png\" class=\"attachment-large size-large wp-image-40848\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-2-manually-add-custom-fields.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-2-manually-add-custom-fields-300x155.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4fdd9b3 elementor-widget elementor-widget-text-editor\" data-id=\"4fdd9b3\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>You could then display this information on your site using PHP.<\/p><p>A little underwhelming, right? We told you that the manual method isn&#8217;t very user-friendly. It&#8217;s also not very flexible for the types of information that you can add to your custom fields.<\/p><p>To really unlock the power of custom fields, you should use a plugin, so let&#8217;s cover that next.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-befcf81 elementor-widget elementor-widget-heading\" data-id=\"befcf81\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">How to Add Custom Fields to WordPress With a Plugin\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-fea1381 elementor-widget elementor-widget-text-editor\" data-id=\"fea1381\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Now, we&#8217;ll show you how to add and work with custom fields using a plugin. Beyond just making custom fields easier to work with, a good custom fieldsplugin will also let you collect different types of information in your custom fields. For example, you&#8217;ll get field types for:<\/p><ul><li>Text<\/li><li>Numbers<\/li><li>URLs<\/li><li>Image\/file uploads<\/li><li>Google Maps locations<\/li><li>Etc.<\/li><\/ul><p>For this tutorial, we&#8217;ll use the free Advanced Custom Fields plugin (ACF), which is one of the most popular options. However, there are some other excellent custom fieldsplugin that we&#8217;ll share later on. No matter which plugin you choose, the basic process will be the same.<\/p><p>To get started, install and activate the <a href=\"https:\/\/wordpress.org\/plugins\/advanced-custom-fields\/\" target=\"_blank\" rel=\"noopener\">free Advanced Custom Fields plugin<\/a> from WordPress.org.<\/p><p>Then, go to <strong>Custom Fields<\/strong><strong> \u2192 <\/strong><strong>Add New<\/strong>.<\/p><p>ACF uses what it calls &#8220;field groups&#8221;. A field group is just a collection of one or more custom fields that display together in the editor.<\/p><p>First, give your field group a name and use the <strong>Location<\/strong> box to choose where to attach the field group. For example, if you want to use these custom fields for regular blog posts, you&#8217;d set it so that:<\/p><p><strong>Post Type&#8230;is equal to&#8230;Post<\/strong><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5502dad elementor-widget elementor-widget-image\" data-id=\"5502dad\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"606\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=606\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-3-acf-create-new.png\" class=\"attachment-large size-large wp-image-40849\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-3-acf-create-new.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-3-acf-create-new-300x253.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-387f2a1 elementor-widget elementor-widget-text-editor\" data-id=\"387f2a1\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Then, use the <strong>+ Add Field<\/strong> button to start adding custom fields.<\/p><p>When you add a new custom field, you&#8217;ll find that you get a lot more options than the manual method.<\/p><p>The two most important choices here are:<\/p><ul><li><strong>Field Label &#8211;<\/strong> this is the name of the field. This will also automatically populate the Field Name box, which is how you&#8217;ll programmatically reference this field (if needed).<\/li><\/ul><ul><li><strong>Field Type &#8211;<\/strong> this is the type of information that you want to collect. You can choose from different options such as text, number, email, <a class=\"wpil_keyword_link\" href=\"https:\/\/elementor.com\/blog\/url\/\"   title=\"What is a URL? Structure, Syntax &amp; Best Practices\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"25887\">URL<\/a>, image, date picker, etc.<\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d8f4bd2 elementor-widget elementor-widget-image\" data-id=\"d8f4bd2\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"678\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=678\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-4-acf-add-field.png\" class=\"attachment-large size-large wp-image-40850\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-4-acf-add-field.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-4-acf-add-field-300x283.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-081b839 elementor-widget elementor-widget-text-editor\" data-id=\"081b839\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>You&#8217;ll also get lots of other optional settings for controlling your custom fields, such as setting default placeholder text or adding a character limit. You can fill these out if you want, but it&#8217;s also totally fine to just leave the other settings blank.<\/p><p>You can then repeat the process to add additional fields. For example, here&#8217;s a simple collection of three fields to form the basic review box from before:<\/p><ul><li><strong>Review Rating <\/strong>&#8211; a number field that collects the review rating, from 1-5, in 0.5 increments.<\/li><\/ul><ul><li><strong>Product Name<\/strong> &#8211; a short text field that collects the name of the product.<\/li><\/ul><ul><li><strong>Review Summary<\/strong> &#8211; a larger text box that contains a short summary of the review.<\/li><\/ul>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e6af06a elementor-widget elementor-widget-image\" data-id=\"e6af06a\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"376\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=376\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-5-finished-fields.png\" class=\"attachment-large size-large wp-image-40851\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-5-finished-fields.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-5-finished-fields-300x157.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-689175c elementor-widget elementor-widget-text-editor\" data-id=\"689175c\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Note the differences in the <strong>Type <\/strong>column &#8211; you can see how each field collects a different type of information.<\/p><p>After you <strong>Publish <\/strong>your\u00a0field group, you&#8217;ll see those fields when you add a new piece of content:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0880639 elementor-widget elementor-widget-image\" data-id=\"0880639\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"578\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=578\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-example-of-custom-fields.png\" class=\"attachment-large size-large wp-image-40858\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-example-of-custom-fields.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-example-of-custom-fields-300x241.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9563cba elementor-widget elementor-widget-heading\" data-id=\"9563cba\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">How to Use Custom Fields in WordPress\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-60daf60 elementor-widget elementor-widget-text-editor\" data-id=\"60daf60\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Now, you should have a solid understanding of how to add custom fields to WordPress. But that&#8217;s only one part of the puzzle &#8211; you also need a way to display the information from those custom fields on the front-end of your website. Otherwise, it&#8217;s just sitting there in your site&#8217;s database doing nothing!<\/p><p>The easiest way to display information from custom fields, especially if you&#8217;re not a developer, is with <a href=\"https:\/\/elementor.com\/pro\/\" target=\"_blank\" rel=\"noopener\">Elementor Pro<\/a> and its <a href=\"https:\/\/elementor.com\/theme-builder\/\" target=\"_blank\" rel=\"noopener\">Theme Builder<\/a> feature. With Elementor Pro, you can include custom field information using Elementor&#8217;s visual, drag-and-drop interface \u2014 no code required.<\/p><p>Beyond Elementor Pro, other methods that you can use to display custom field information include:<\/p><ul><li>PHP<\/li><li>Shortcodes<\/li><\/ul><p>Let&#8217;s briefly go over these three methods.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f0ba7cc elementor-widget elementor-widget-heading\" data-id=\"f0ba7cc\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">1. Elementor Pro\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0dfeb13 elementor-widget elementor-widget-text-editor\" data-id=\"0dfeb13\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>With <a href=\"https:\/\/elementor.com\/pro\/\" target=\"_blank\" rel=\"noopener\">Elementor Pro<\/a>, you get access to <a href=\"https:\/\/elementor.com\/features\/dynamic-content\/\" target=\"_blank\" rel=\"noopener\">Elementor&#8217;s dynamic content feature<\/a>, which lets you &#8220;dynamically&#8221; display content from custom fields in your Elementor designs.<\/p><p>Here&#8217;s how it works:<\/p><p>To get started, you would open the Elementor editor, either for a single piece of content or for a template that you&#8217;re building with <a href=\"https:\/\/elementor.com\/theme-builder\/\" target=\"_blank\" rel=\"noopener\">Elementor Theme Builder<\/a>. In this example, we&#8217;re creating a template that will automatically apply to all &#8220;review&#8221; blog posts.<\/p><p>Here, you can see that our initial template just shows the post title and the content from the body of the editor:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-91cd962 elementor-widget elementor-widget-image\" data-id=\"91cd962\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"555\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=555\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-7-elementor-template.png\" class=\"attachment-large size-large wp-image-40853\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-7-elementor-template.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-7-elementor-template-300x231.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-24b8590 elementor-widget elementor-widget-text-editor\" data-id=\"24b8590\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Next, we&#8217;ve added a simple review box that contains:<\/p><ul><li>A star rating<\/li><li>A heading text widget<\/li><li>A paragraph description<\/li><\/ul><p>Instead of the static rating and text that currently exists, we want to dynamically populate the content in this box with the information from our custom fields. This is where Elementor Pro&#8217;s dynamic content feature comes into play.<\/p><p>To link a widget&#8217;s content to a custom field, you just need to edit a widget and select the <strong>Dynamic Tags<\/strong> option. That will give you an option to choose your ACF field:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7cddc2e elementor-widget elementor-widget-image\" data-id=\"7cddc2e\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"444\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=444\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-8-dynamic.png\" class=\"attachment-large size-large wp-image-40854\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-8-dynamic.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-8-dynamic-300x185.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4d0ff49 elementor-widget elementor-widget-text-editor\" data-id=\"4d0ff49\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Now, the number of stars in the star rating widget will be pulled directly from the number in the review rating custom field:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-79289b1 elementor-widget elementor-widget-image\" data-id=\"79289b1\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"354\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=354\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-9-acf-star-rating.png\" class=\"attachment-large size-large wp-image-40855\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-9-acf-star-rating.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-9-acf-star-rating-300x148.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cb90630 elementor-widget elementor-widget-text-editor\" data-id=\"cb90630\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>You can repeat the same process for the text content.<\/p><p>One useful feature here is the ability to include static content before or after the custom field information:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3f082ae elementor-widget elementor-widget-image\" data-id=\"3f082ae\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"441\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=441\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-10-acf-text-in-elementor.png\" class=\"attachment-large size-large wp-image-40856\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-10-acf-text-in-elementor.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-10-acf-text-in-elementor-300x184.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-93e6b9b elementor-widget elementor-widget-text-editor\" data-id=\"93e6b9b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>And that&#8217;s it! You can repeat the same steps to use information from custom fields in all kinds of ways including:<\/p><ul><li>Inserting images from custom fields as backgrounds, slider items, and more<\/li><li>Adding a URL from a custom field to the link destination in a button widget<\/li><li>Populating any number-based widget with a number from a custom field, including pricing tables<\/li><li>Etc.<\/li><\/ul><p>\ud83d\udc49 <a href=\"https:\/\/elementor.com\/blog\/dynamic-content-elementor\/\" target=\"_blank\" rel=\"noopener\">Learn more about how dynamic content works in Elementor<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0b2e2bd elementor-widget elementor-widget-heading\" data-id=\"0b2e2bd\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">2. PHP\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-40c78fb elementor-widget elementor-widget-text-editor\" data-id=\"40c78fb\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Before tools like Elementor Pro, using custom fields required at least a working knowledge of PHP.<\/p><p>You need to:<\/p><ul><li>Edit your theme&#8217;s template files<\/li><li>Programmatically reference the custom fields where you want them to appear<\/li><\/ul><p>ACF includes <a href=\"https:\/\/www.advancedcustomfields.com\/resources\/#functions\" target=\"_blank\" rel=\"noopener\">detailed documentation for all of the different PHP functions<\/a> that you can use to do this.<\/p><p>For example, to get the custom field value of the &#8220;Review Rating&#8221; field for the current post, you could use:<\/p><p>get_field( &#8220;review_rating&#8221; );<\/p><p>If you understand PHP and WordPress templating, you can use this to display custom fields anywhere on your site.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e0c2c5e elementor-widget elementor-widget-heading\" data-id=\"e0c2c5e\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">3. Shortcodes\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9acc0a1 elementor-widget elementor-widget-text-editor\" data-id=\"9acc0a1\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>If you need to display custom fields on-the-fly, some custom fields plugins include shortcodes that work in a pinch.<\/p><p>This isn&#8217;t ideal because it requires a lot of manual effort &#8211; you&#8217;ll need to manually add the shortcode each time, rather than just creating a template as you can with Elementor Pro or your own PHP.<\/p><p>However, for occasional use, it offers a simple, non-technical way to display data from custom fields.<\/p><p>With ACF, all you need is this shortcode:<\/p><p>For example, to display the review rating, you could use:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-43c9adf elementor-widget elementor-widget-heading\" data-id=\"43c9adf\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">The Difference Between Custom Fields, Custom Post Types and Taxonomies\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4351b7e elementor-widget elementor-widget-text-editor\" data-id=\"4351b7e\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Now that you know how to use custom fields, let&#8217;s back away from the technical aspect and get back to some theory.<\/p><p>On a custom WordPress website, you&#8217;re likely going to need more than just custom fields to get the job done.<\/p><p>You&#8217;ll also encounter two other types of &#8220;custom&#8221; content:<\/p><ul><li>Custom post types<\/li><li>Custom taxonomies<\/li><\/ul><p><strong>Custom post types<\/strong> basically let you create new types of content. WordPress ships with two default content types \u2014 &#8220;Posts&#8221; (aka blog posts) and &#8220;Pages&#8221;.<\/p><p>Custom post types let you add your own content types. Some examples:<\/p><ul><li>&#8220;House&#8221; custom post type for a real estate listing site<\/li><li>&#8220;Job&#8221; for a job listing website<\/li><li>&#8220;Menu Item&#8221; for a restaurant menu<\/li><\/ul><p>If you created a &#8220;House&#8221; custom post type, you would be able to &#8220;Add a New House&#8221; just like you can &#8220;Add a New Page&#8221;.<\/p><ul><li>\ud83d\udc49 <a href=\"https:\/\/elementor.com\/blog\/wordpress-custom-post-types\/\" target=\"_blank\" rel=\"noopener\">How to create custom post types<\/a><\/li><li>\ud83d\udc49 <a href=\"https:\/\/elementor.com\/blog\/custom-post-types-benefits\/\" target=\"_blank\" rel=\"noopener\">Benefits of custom post types<\/a><\/li><\/ul><p><strong>Custom taxonomies<\/strong> are another type of metadata that you can add to WordPress.\u00a0<\/p><p>Taxonomies are tools for grouping content together. By default, WordPress comes with two taxonomies for your blog posts \u2014 Categories and Tags.<\/p><p>However, you can also create your own custom taxonomies for anything else. For example, if you had a movie review website, you could create a &#8220;Genre&#8221; taxonomy to group different movies by genre.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9c62945 elementor-widget elementor-widget-heading\" data-id=\"9c62945\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">The Difference Between Custom Fields and Custom Post Types\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f8f4657 elementor-widget elementor-widget-text-editor\" data-id=\"f8f4657\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Typically, you&#8217;ll use custom fields and custom post types together.<\/p><p>Custom post types let you define the type of content and then custom fields let you collect additional information about that content (metadata).<\/p><p>Let&#8217;s go back to the &#8220;House&#8221; example for a real estate listing website.<\/p><p>Once you created a &#8220;House&#8221; custom post type, you would want to collect additional information about each house. For example:<\/p><ul><li>Bedrooms<\/li><li>Bathrooms<\/li><li>Square footage<\/li><li>Etc.<\/li><\/ul><p>To collect each piece of information, you would add a custom field and associate it with your custom post type.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0b025c4 elementor-widget elementor-widget-heading\" data-id=\"0b025c4\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">The Difference Between Custom Fields and Custom Taxonomies\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-016e0fe elementor-widget elementor-widget-text-editor\" data-id=\"016e0fe\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Deciding between using custom fields vs. custom taxonomies is usually a little more complicated. Because both custom fields and custom taxonomies help you store additional information about a piece of content (such as a custom post type), you might run into a situation in which you&#8217;re unsure which to use.<\/p><p>Depending on your use case, the same piece of information could be better suited to either a custom field or a custom taxonomy &#8211; that&#8217;s why it can get a little confusing.<\/p><p>In general, the distinction goes like this:<\/p><ul><li><strong>Use custom fields<\/strong> if the information is specific to the post itself.<\/li><\/ul><ul><li><b>Use custom taxonomies<\/b> if the information is shared between different posts, and you want to be able to group them together by this information.<\/li><\/ul><p>Here&#8217;s an example that illustrates both use cases:<\/p><p>Let&#8217;s say you have a &#8220;Movie&#8221; custom post type, and you want to add extra information that contains the director.<\/p><p>Should you add the director as a custom field or a custom taxonomy? It depends.<\/p><p>If you just want to add the director as data for that individual post and you don&#8217;t need visitors to be able to quickly look up &#8220;Movies&#8221; by the director, you can add it as a custom field.<\/p><p>On the other hand, if you want visitors to be able to click on a director&#8217;s name to automatically display all of the movies directed by that person, then you should probably use a custom taxonomy.<\/p><p><a href=\"https:\/\/metabox.io\/custom-fields-vs-custom-taxonomies\/\" target=\"_blank\" rel=\"noopener\">Meta Box has an excellent article<\/a> that digs into this question in more depth.<\/p><p>It also includes this table to help you decide between custom fields vs. taxonomies:<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-debf7a5 elementor-widget elementor-widget-image\" data-id=\"debf7a5\" data-element_type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img loading=\"lazy\" decoding=\"async\" width=\"720\" height=\"446\" src=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720,h=446\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-11-fields-vs-taxonomies.png\" class=\"attachment-large size-large wp-image-40857\" alt=\"\" srcset=\"https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=720\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-11-fields-vs-taxonomies.png 720w, https:\/\/elementor.com\/cdn-cgi\/image\/f=auto,w=300\/blog\/wp-content\/uploads\/2020\/07\/wordpress-custom-fields-tutorial-11-fields-vs-taxonomies-300x186.png 300w\" sizes=\"(max-width: 720px) 100vw, 720px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-98f3b02 elementor-widget elementor-widget-text-editor\" data-id=\"98f3b02\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><a href=\"https:\/\/metabox.io\/custom-fields-vs-custom-taxonomies\/\" target=\"_blank\" rel=\"noopener\">Source<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9bcf8ce elementor-widget elementor-widget-heading\" data-id=\"9bcf8ce\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Four Best Custom Fields Plugins for WordPress\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-620ecbd elementor-widget elementor-widget-text-editor\" data-id=\"620ecbd\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>As we mentioned earlier, while you can manually add custom fields to WordPress, you&#8217;ll almost always want to use a plugin instead.<\/p><p>Plugins save you time, give you more flexibility, simplify things&#8230;basically\u00a0\u2014 use a plugin if you want to work with WordPress custom fields.<\/p><p>Here are three of the best plugins.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-16dbd2c elementor-widget elementor-widget-heading\" data-id=\"16dbd2c\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">1. Advanced Custom Fields (ACF)\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2dfea6b elementor-widget elementor-widget-text-editor\" data-id=\"2dfea6b\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><a href=\"https:\/\/wordpress.org\/plugins\/advanced-custom-fields\/\" target=\"_blank\" rel=\"noopener\">Advanced Custom Fields<\/a>, commonly abbreviated as ACF, is one of the most popular plugins for adding custom fields to WordPress. It&#8217;s also what we used for many of the tutorial screenshots above.<\/p><p>Unlike the other plugins on our list, ACF is only for custom fields \u2014 it does not help you work with custom post types or taxonomies. You&#8217;ll need a different tool for that \u2014 the <a href=\"https:\/\/wordpress.org\/plugins\/custom-post-type-ui\/\" target=\"_blank\" rel=\"noopener\">free Custom Post Type UI plugin<\/a> is a common pairing that will help you create custom post types.<\/p><p>As you saw above, ACF also integrates with Elementor Pro to display your custom fields.<\/p><p>\ud83d\udc49 <a href=\"https:\/\/elementor.com\/help\/elementor-acf\/\" target=\"_blank\" rel=\"noopener\">Learn about Elementor&#8217;s integration with ACF<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ff956b8 elementor-widget elementor-widget-heading\" data-id=\"ff956b8\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">2. Toolset<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-818482a elementor-widget elementor-widget-text-editor\" data-id=\"818482a\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><a href=\"https:\/\/toolset.com\/\" target=\"_blank\" rel=\"noopener\">Toolset<\/a> is a premium suite of plugins to help you work with custom content on WordPress. For one price, you get access to several different components.\u00a0<\/p><p>For custom fields, you&#8217;ll want the Types component. Types also helps you work with custom post types and custom taxonomies.<\/p><p>Depending on your needs, you also might want to use some or all of the other components:<\/p><ul><li><strong>Forms <\/strong>&#8211; helps you create front-end content creation forms that feed into your custom fields, post types, and taxonomies.<\/li><li><strong>Access <\/strong>&#8211; helps you restrict access to your custom content.<\/li><li><strong>Maps <\/strong>&#8211; helps you display custom information on Google Maps or Azure Maps.<\/li><li><strong>Blocks <\/strong>&#8211; helps you design custom layouts and lists of content using the block editor.<\/li><\/ul><p>Toolset also integrates well with Elementor Pro.<\/p><p>\ud83d\udc49 <a href=\"https:\/\/elementor.com\/help\/elementor-integration-with-toolset\/\" target=\"_blank\" rel=\"noopener\">Learn about Elementor&#8217;s integration with Toolset<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-eac8e32 elementor-widget elementor-widget-heading\" data-id=\"eac8e32\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">3. Pods\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d2839f7 elementor-widget elementor-widget-text-editor\" data-id=\"d2839f7\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Pods is a 100% free project that&#8217;s a full solution for custom WordPress sites. It can help you create and work with custom:<\/p><ul><li>fields<\/li><li>post types<\/li><li>taxonomies<\/li><\/ul><p>Basically, Pods is all you need to create and manage custom content. It also integrates well with Elementor Pro &#8211; so you can use Pods to manage everything on the backend and Elementor Pro to display everything on the front-end.<\/p><p>\ud83d\udc49 <a href=\"https:\/\/elementor.com\/help\/elementor-integration-with-pods\/\" target=\"_blank\" rel=\"noopener\">Learn about Elementor&#8217;s integration with Pods<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7fa60ad elementor-widget elementor-widget-heading\" data-id=\"7fa60ad\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">4. Meta Box<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e582eb0 elementor-widget elementor-widget-text-editor\" data-id=\"e582eb0\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Meta Box is a freemium WordPress custom fields plugin that is very developer-friendly and flexible. It enables you to quickly deal with not only custom fields but also with custom post types and custom taxonomies easily in the UI on the backend.<\/p>\n<p>Moreover, Meta Box provides more than 40 field types &#8211; almost all types of data that users needs. There are some special fields from Meta Box plugin:<\/p>\n<ul>\n<li>Open street map<\/li>\n<li>Background<\/li>\n<li>File upload (allow users to drag and drop files directly to the editor)<\/li>\n<li>Custom HTML<\/li>\n<li>Key value<\/li>\n<li><a href=\"https:\/\/elementor.com\/blog\/wordpress-sidebar-guide\/\">Sidebar<\/a><\/li>\n<li><a href=\"https:\/\/elementor.com\/blog\/embed-video-wordpress\/\">Video<\/a><\/li>\n<\/ul>\n<p>Meta Box integrates well with Elementor, using the Meta Box Elementor Integrator extension.<\/p>\n<p>\ud83d\udc49&nbsp;<a href=\"https:\/\/metabox.io\/plugins\/mb-elementor-integrator\/\" target=\"_blank\" rel=\"noopener\">Learn about Elementor&#8217;s integration with Metabox<\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-aa3d3f2 elementor-widget elementor-widget-heading\" data-id=\"aa3d3f2\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h3 class=\"elementor-heading-title elementor-size-default\">Which Custom Fields Plugin Should You Use?\n<\/h3>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cabaa76 elementor-widget elementor-widget-text-editor\" data-id=\"cabaa76\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>Choosing between ACF, Toolset, and Pods requires an entire post of its own&#8230;which is why we wrote an entire post of its own!<\/p><p>If you&#8217;re not sure which plugin is right for you, you can check out <a href=\"https:\/\/elementor.com\/blog\/acf-vs-pods-vs-toolset\/\" target=\"_blank\" rel=\"noopener\">our detailed ACF vs Toolset vs Pods comparison<\/a> to make the right choice.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-63a8990 elementor-widget elementor-widget-heading\" data-id=\"63a8990\" data-element_type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Start Using WordPress Custom Fields\n<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ca1dc60 elementor-widget elementor-widget-text-editor\" data-id=\"ca1dc60\" data-element_type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p>If you want to build dynamic websites and unlock WordPress&#8217;s full power as a content management system, it&#8217;s important to understand WordPress custom fields.<\/p><p>To recap, custom fields help you store additional information about content on your WordPress site.<\/p><p>WordPress includes its own built-in custom fields feature. However, it&#8217;s a much better approach to use dedicated custom field plugins. Three of the best options are Advanced Custom Fields (ACF), Toolset, and Pods.<\/p><p>For the easiest way to display information from custom fields on the front-end of your site, you can use <a href=\"https:\/\/elementor.com\/pro\/\" target=\"_blank\" rel=\"noopener\">Elementor Pro<\/a> and <a href=\"https:\/\/elementor.com\/features\/dynamic-content\/\" target=\"_blank\" rel=\"noopener\">its dynamic content feature<\/a>. You&#8217;ll be able to quickly add custom field information to your Elementor designs and style it using all of Elementor&#8217;s normal settings.<\/p><p>How will you use custom fields in your next project? Or do you still have any questions about custom fields in WordPress? Let us know in the comments!<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Custom fields are one of the main keys to unlocking WordPress&#8217;s power. In this article, we will cover all the essentials, including how to use custom fields in WordPress and Elementor, and the best custom field plugins.<\/p>\n","protected":false},"author":50988,"featured_media":40862,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[43],"tags":[79],"marketing_persona":[51],"marketing_intent":[48],"class_list":["post-40842","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-wordpress","tag-build"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>The Complete Guide to WordPress Custom Fields<\/title>\n<meta name=\"description\" content=\"Custom fields are one of the main keys to unlocking WordPress&#039;s power. In this article, we will cover all the essentials, including how to use custom fields in WordPress and Elementor, and the best custom field plugins.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"The Complete Guide to WordPress Custom Fields\" \/>\n<meta property=\"og:description\" content=\"Custom fields are one of the main keys to unlocking WordPress&#039;s power. In this article, we will cover all the essentials, including how to use custom fields in WordPress and Elementor, and the best custom field plugins.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/elemntor\/\" \/>\n<meta property=\"article:published_time\" content=\"2020-07-07T14:30:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-12-03T23:33:01+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2020\/07\/WordPress-Custom-Fields_Xternal.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1201\" \/>\n\t<meta property=\"og:image:height\" content=\"628\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Colin Newcomer\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@elemntor\" \/>\n<meta name=\"twitter:site\" content=\"@elemntor\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Colin Newcomer\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"19 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/\"},\"author\":{\"name\":\"Colin Newcomer\",\"@id\":\"https:\/\/elementor.com\/blog\/#\/schema\/person\/8df3c6697ea8e60fd1416e98a7ff0e21\"},\"headline\":\"The Complete Guide to WordPress Custom Fields\",\"datePublished\":\"2020-07-07T14:30:44+00:00\",\"dateModified\":\"2025-12-03T23:33:01+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/\"},\"wordCount\":3912,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/elementor.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2020\/07\/WordPress-Custom-Fields_Xternal.png\",\"keywords\":[\"Build\"],\"articleSection\":[\"WordPress\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/\",\"url\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/\",\"name\":\"The Complete Guide to WordPress Custom Fields\",\"isPartOf\":{\"@id\":\"https:\/\/elementor.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2020\/07\/WordPress-Custom-Fields_Xternal.png\",\"datePublished\":\"2020-07-07T14:30:44+00:00\",\"dateModified\":\"2025-12-03T23:33:01+00:00\",\"description\":\"Custom fields are one of the main keys to unlocking WordPress's power. In this article, we will cover all the essentials, including how to use custom fields in WordPress and Elementor, and the best custom field plugins.\",\"breadcrumb\":{\"@id\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#primaryimage\",\"url\":\"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2020\/07\/WordPress-Custom-Fields_Xternal.png\",\"contentUrl\":\"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2020\/07\/WordPress-Custom-Fields_Xternal.png\",\"width\":1201,\"height\":628},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Blog\",\"item\":\"https:\/\/elementor.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"WordPress\",\"item\":\"https:\/\/elementor.com\/blog\/category\/wordpress\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"The Complete Guide to WordPress Custom Fields\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/elementor.com\/blog\/#website\",\"url\":\"https:\/\/elementor.com\/blog\/\",\"name\":\"Elementor\",\"description\":\"Website Builder for WordPress\",\"publisher\":{\"@id\":\"https:\/\/elementor.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/elementor.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/elementor.com\/blog\/#organization\",\"name\":\"Elementor\",\"url\":\"https:\/\/elementor.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/elementor.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2025\/06\/images.png\",\"contentUrl\":\"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2025\/06\/images.png\",\"width\":225,\"height\":225,\"caption\":\"Elementor\"},\"image\":{\"@id\":\"https:\/\/elementor.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/elemntor\/\",\"https:\/\/x.com\/elemntor\",\"https:\/\/www.instagram.com\/elementor\/\",\"https:\/\/www.youtube.com\/channel\/UCt9kG_EDX8zwGSC1-ycJJVA?sub_confirmation=1\",\"https:\/\/en.wikipedia.org\/wiki\/Elementor\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/elementor.com\/blog\/#\/schema\/person\/8df3c6697ea8e60fd1416e98a7ff0e21\",\"name\":\"Colin Newcomer\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/elementor.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/42aa991c5e5152c551c3ca3aa09e84d6e08a3a40420e566d930ab289160b09bc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/42aa991c5e5152c551c3ca3aa09e84d6e08a3a40420e566d930ab289160b09bc?s=96&d=mm&r=g\",\"caption\":\"Colin Newcomer\"},\"description\":\"Colin is a freelance writer for hire specializing in WordPress and digital marketing. Grow your business with in-depth, conversational blog posts.\",\"url\":\"https:\/\/elementor.com\/blog\/author\/colinn\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"The Complete Guide to WordPress Custom Fields","description":"Custom fields are one of the main keys to unlocking WordPress's power. In this article, we will cover all the essentials, including how to use custom fields in WordPress and Elementor, and the best custom field plugins.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/","og_locale":"en_US","og_type":"article","og_title":"The Complete Guide to WordPress Custom Fields","og_description":"Custom fields are one of the main keys to unlocking WordPress's power. In this article, we will cover all the essentials, including how to use custom fields in WordPress and Elementor, and the best custom field plugins.","og_url":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/","og_site_name":"Blog","article_publisher":"https:\/\/www.facebook.com\/elemntor\/","article_published_time":"2020-07-07T14:30:44+00:00","article_modified_time":"2025-12-03T23:33:01+00:00","og_image":[{"width":1201,"height":628,"url":"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2020\/07\/WordPress-Custom-Fields_Xternal.png","type":"image\/png"}],"author":"Colin Newcomer","twitter_card":"summary_large_image","twitter_creator":"@elemntor","twitter_site":"@elemntor","twitter_misc":{"Written by":"Colin Newcomer","Est. reading time":"19 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#article","isPartOf":{"@id":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/"},"author":{"name":"Colin Newcomer","@id":"https:\/\/elementor.com\/blog\/#\/schema\/person\/8df3c6697ea8e60fd1416e98a7ff0e21"},"headline":"The Complete Guide to WordPress Custom Fields","datePublished":"2020-07-07T14:30:44+00:00","dateModified":"2025-12-03T23:33:01+00:00","mainEntityOfPage":{"@id":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/"},"wordCount":3912,"commentCount":0,"publisher":{"@id":"https:\/\/elementor.com\/blog\/#organization"},"image":{"@id":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#primaryimage"},"thumbnailUrl":"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2020\/07\/WordPress-Custom-Fields_Xternal.png","keywords":["Build"],"articleSection":["WordPress"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/","url":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/","name":"The Complete Guide to WordPress Custom Fields","isPartOf":{"@id":"https:\/\/elementor.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#primaryimage"},"image":{"@id":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#primaryimage"},"thumbnailUrl":"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2020\/07\/WordPress-Custom-Fields_Xternal.png","datePublished":"2020-07-07T14:30:44+00:00","dateModified":"2025-12-03T23:33:01+00:00","description":"Custom fields are one of the main keys to unlocking WordPress's power. In this article, we will cover all the essentials, including how to use custom fields in WordPress and Elementor, and the best custom field plugins.","breadcrumb":{"@id":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/elementor.com\/blog\/wordpress-custom-fields\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#primaryimage","url":"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2020\/07\/WordPress-Custom-Fields_Xternal.png","contentUrl":"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2020\/07\/WordPress-Custom-Fields_Xternal.png","width":1201,"height":628},{"@type":"BreadcrumbList","@id":"https:\/\/elementor.com\/blog\/wordpress-custom-fields\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Blog","item":"https:\/\/elementor.com\/blog\/"},{"@type":"ListItem","position":2,"name":"WordPress","item":"https:\/\/elementor.com\/blog\/category\/wordpress\/"},{"@type":"ListItem","position":3,"name":"The Complete Guide to WordPress Custom Fields"}]},{"@type":"WebSite","@id":"https:\/\/elementor.com\/blog\/#website","url":"https:\/\/elementor.com\/blog\/","name":"Elementor","description":"Website Builder for WordPress","publisher":{"@id":"https:\/\/elementor.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/elementor.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/elementor.com\/blog\/#organization","name":"Elementor","url":"https:\/\/elementor.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/elementor.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2025\/06\/images.png","contentUrl":"https:\/\/elementor.com\/blog\/wp-content\/uploads\/2025\/06\/images.png","width":225,"height":225,"caption":"Elementor"},"image":{"@id":"https:\/\/elementor.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/elemntor\/","https:\/\/x.com\/elemntor","https:\/\/www.instagram.com\/elementor\/","https:\/\/www.youtube.com\/channel\/UCt9kG_EDX8zwGSC1-ycJJVA?sub_confirmation=1","https:\/\/en.wikipedia.org\/wiki\/Elementor"]},{"@type":"Person","@id":"https:\/\/elementor.com\/blog\/#\/schema\/person\/8df3c6697ea8e60fd1416e98a7ff0e21","name":"Colin Newcomer","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/elementor.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/42aa991c5e5152c551c3ca3aa09e84d6e08a3a40420e566d930ab289160b09bc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/42aa991c5e5152c551c3ca3aa09e84d6e08a3a40420e566d930ab289160b09bc?s=96&d=mm&r=g","caption":"Colin Newcomer"},"description":"Colin is a freelance writer for hire specializing in WordPress and digital marketing. Grow your business with in-depth, conversational blog posts.","url":"https:\/\/elementor.com\/blog\/author\/colinn\/"}]}},"_links":{"self":[{"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/posts\/40842","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/users\/50988"}],"replies":[{"embeddable":true,"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/comments?post=40842"}],"version-history":[{"count":6,"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/posts\/40842\/revisions"}],"predecessor-version":[{"id":146513,"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/posts\/40842\/revisions\/146513"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/media\/40862"}],"wp:attachment":[{"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/media?parent=40842"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/categories?post=40842"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/tags?post=40842"},{"taxonomy":"marketing_persona","embeddable":true,"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/marketing_persona?post=40842"},{"taxonomy":"marketing_intent","embeddable":true,"href":"https:\/\/elementor.com\/blog\/wp-json\/wp\/v2\/marketing_intent?post=40842"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}