{"id":1461,"date":"2026-10-05T10:00:00","date_gmt":"2026-10-05T10:00:00","guid":{"rendered":"https:\/\/netloria.com\/blog\/acf-what-its-for-how-to-use-en\/"},"modified":"2026-10-05T10:00:00","modified_gmt":"2026-10-05T10:00:00","slug":"acf-what-its-for-how-to-use-en","status":"publish","type":"post","link":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/","title":{"rendered":"ACF (Advanced Custom Fields): What It&#8217;s For and How to Use It"},"content":{"rendered":"<p>\u26a1<strong> Quick answer:<\/strong> ACF (Advanced Custom Fields) is a plugin that adds custom, non-standard fields to WordPress posts and pages: a service&#8217;s price, a short description for a card, a list of benefits, a gallery for a case study \u2014 anything that doesn&#8217;t fit into the default text editor. If you open a service or product on your site for editing and see additional structured fields below the main editor (rather than just an empty content box) \u2014 that&#8217;s almost certainly ACF at work. A developer sets the fields up once to match the site&#8217;s structure; the owner&#8217;s job is just to fill in the already-built fields with values.<\/p>\n<p>If you open, say, a service or product for editing and see a block under the main editor with labeled fields like &#8220;Price,&#8221; &#8220;Short Description,&#8221; &#8220;Image Gallery&#8221; \u2014 that&#8217;s not a standard WordPress feature, but an extension added specifically for this site&#8217;s structure. In the vast majority of cases, that&#8217;s the ACF plugin behind it.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/netloria.com\/wp-content\/uploads\/2026\/10\/acf-field-groups-list.webp\" alt=\"ACF field groups list in the WordPress admin\" width=\"1440\" height=\"900\" style=\"max-width:100%;height:auto;border-radius:8px;\" loading=\"lazy\" \/><\/p>\n<h2>Why custom fields at all, if there&#8217;s already a normal editor<\/h2>\n<p>The regular content editor is great for free-form text \u2014 a blog article, an &#8220;About Us&#8221; description. But for content with a clear, repeating structure (a service card always has a name, a price, and a short description; a product card always has a SKU, size, color), a free-text editor is awkward and risky: there&#8217;s no guarantee the editor won&#8217;t forget the price, or accidentally break the card&#8217;s formatting.<\/p>\n<p>ACF solves this by pulling each such structural element out into its own, labeled field. A developer defines once: &#8220;this post type has a Price field (number), a Short Description field (text), a Gallery field (images)&#8221; \u2014 and from then on, every new post of that type automatically shows these same fields to fill in, in the same order, with no chance of accidentally skipping or breaking the structure.<\/p>\n<h2>Where to find ACF fields in the admin<\/h2>\n<p>ACF custom fields usually appear right below the main content editor on a post or page, shown as a separate box with the field group&#8217;s name (e.g., &#8220;Service Details&#8221;). If ACF Pro is installed, the admin sidebar also has a dedicated item (usually labeled simply &#8220;ACF,&#8221; or &#8220;Custom Fields&#8221; \/ &#8220;Field Groups&#8221; depending on the version and settings) \u2014 that&#8217;s where a developer manages which fields appear and where. As the site owner, you typically don&#8217;t need to go there: that&#8217;s structural configuration, not content entry.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/netloria.com\/wp-content\/uploads\/2026\/10\/acf-field-group-edit.webp\" alt=\"ACF field group edit screen with a list of defined fields\" width=\"1440\" height=\"900\" style=\"max-width:100%;height:auto;border-radius:8px;\" loading=\"lazy\" \/><\/p>\n<h2>The field types you&#8217;ll run into most often<\/h2>\n<ul>\n<li><strong>Text field<\/strong> \u2014 short single-line text (a name, a brief tagline).<\/li>\n<li><strong>Text area<\/strong> \u2014 longer multi-line text with no block formatting.<\/li>\n<li><strong>Number<\/strong> \u2014 for prices, quantities, SKUs.<\/li>\n<li><strong>Image<\/strong> \u2014 a single specific image tied to this exact field (a service icon, say, distinct from the main Featured Image).<\/li>\n<li><strong>Gallery<\/strong> \u2014 several images at once, often for a portfolio or work samples.<\/li>\n<li><strong>Repeater<\/strong> \u2014 a field that lets you add any number of identically structured blocks: a list of FAQ questions-and-answers, for example, where each item has sub-fields &#8220;Question&#8221; and &#8220;Answer,&#8221; and you can add as many such items as needed via an &#8220;Add Row&#8221; button.<\/li>\n<li><strong>Relationship<\/strong> \u2014 a field that lets you pick one or more other posts on the site (e.g., &#8220;related services&#8221; for cross-linking).<\/li>\n<\/ul>\n<h2>Repeater fields: the most powerful, and most confusing, field type for a newcomer<\/h2>\n<p>The repeater deserves special attention, since it&#8217;s the type that confuses new content editors most often. Visually, it looks like a list of rows with &#8220;Add Row&#8221; buttons and an X to delete a row. Each row is an independent set of sub-fields. A typical use case is the FAQ block on a service page: one repeater row = one question-and-answer pair, and you can add as many rows as needed without a developer&#8217;s involvement.<\/p>\n<p>The main rule for working with a repeater: the order of rows on the page matches the order of rows in the editing list \u2014 dragging a row by the handle on the left reorders how it displays on the site.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/netloria.com\/wp-content\/uploads\/2026\/10\/acf-fields-on-post.webp\" alt=\"ACF custom fields below the main editor on a specific post, with real filled-in values\" width=\"938\" height=\"1383\" style=\"max-width:100%;height:auto;border-radius:8px;\" loading=\"lazy\" \/><\/p>\n<h2>Why you can&#8217;t &#8220;just write it all in the main editor&#8221; instead of ACF fields<\/h2>\n<p>The temptation to bypass structured fields and just type the price or specs straight into the main text editor is always there \u2014 it feels faster. But it breaks the page template&#8217;s work: if the site&#8217;s theme is coded to show the price as a separate, styled block in a specific spot on the card (pulling the value from the ACF &#8220;Price&#8221; field), and the price was instead typed as plain text in the free content, the page ends up with two places showing price info \u2014 one empty styled block (because the ACF field is blank), the other awkwardly dropped into the text somewhere the design never intended.<\/p>\n<h2>Table: what fields are actually used for, by content type<\/h2>\n<table>\n<tbody>\n<tr>\n<th>Content type<\/th>\n<th>Typical ACF fields<\/th>\n<th>Why a regular editor wouldn&#8217;t be enough<\/th>\n<\/tr>\n<tr>\n<td>Service card<\/td>\n<td>Price, short description, icon, FAQ repeater<\/td>\n<td>Needs the exact same styled look for every service card<\/td>\n<\/tr>\n<tr>\n<td>Case study\/portfolio<\/td>\n<td>Client, year, gallery, link to the result<\/td>\n<td>Gallery and metadata render in separate visual blocks of the template<\/td>\n<\/tr>\n<tr>\n<td>Team\/staff<\/td>\n<td>Role, photo, social links, short bio<\/td>\n<td>Identical card structure for every team member on the &#8220;Team&#8221; page<\/td>\n<\/tr>\n<tr>\n<td>Homepage hero<\/td>\n<td>Headline, subheadline, background image, button<\/td>\n<td>The hero block is a unique design element, not part of ordinary page text<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2>Conditional logic in fields: when a field only shows up under a condition<\/h2>\n<p>ACF Pro allows setting up Conditional Logic \u2014 a field appears on the editing screen only if another field holds a specific value. For example, a &#8220;Video Link&#8221; field appears only when the &#8220;Media Type&#8221; field is set to &#8220;Video,&#8221; not &#8220;Image.&#8221; This isn&#8217;t something a site owner configures day to day, but it&#8217;s useful to understand why some fields sometimes &#8220;disappear&#8221; or &#8220;appear&#8221; depending on what&#8217;s selected above them.<\/p>\n<h2>Site-wide fields (Options Page): settings not tied to a specific post<\/h2>\n<p>Beyond fields on individual posts, ACF Pro lets you create a separate &#8220;Options Page&#8221; \u2014 a set of fields related to the site as a whole, rather than one specific post: a phone number in the header, social media links in the footer, discount banner text. Such fields usually appear in the admin sidebar as a separate item (e.g., &#8220;Site Settings&#8221; or &#8220;Theme: General Settings&#8221;) \u2014 and changing the value there immediately reflects everywhere on the site that field is used in the template.<\/p>\n<h2>Common mistakes when filling in ACF fields<\/h2>\n<ul>\n<li><strong>Leaving required fields empty.<\/strong> If the page template expects a value in a field and it&#8217;s empty, the site might show an empty block, broken layout, or nothing at all where the element was expected.<\/li>\n<li><strong>Pasting formatted text (bold, lists) into a plain text field.<\/strong> Unlike the main content editor, simple ACF text fields often don&#8217;t support formatting \u2014 the text outputs on the site as-is, with no bold or line breaks, unless the field is specifically built for that.<\/li>\n<li><strong>Confusing the Featured Image with an ACF &#8220;Image&#8221; field.<\/strong> These are two separate, independent image slots \u2014 filling one doesn&#8217;t affect the other, even if the template uses both on the same page.<\/li>\n<li><strong>Deleting an entire repeater row instead of clearing its content.<\/strong> If you need to temporarily remove one list item (one FAQ question, say), it&#8217;s simpler to delete the whole repeater row than to clear the text in each sub-field individually.<\/li>\n<\/ul>\n<p>Structured fields like ACF are exactly what lets service pages keep a consistent look regardless of who filled in the content. We wrote separately about <a href=\"https:\/\/netloria.com\/en\/blog-en\/corporate-website-what-it-includes-en\/\">what goes into building a corporate website<\/a> \u2014 the ACF field structure is usually laid out exactly at that design stage.<\/p>\n<h2>Frequently asked questions<\/h2>\n<h3>Can I add a new ACF field myself, without a developer?<\/h3>\n<p>Technically yes, if you have access to the &#8220;Custom Fields&#8221; section in the admin and understand how the field will connect to the display template. But a new field by itself shows nothing on the site until the page template is &#8220;taught&#8221; to output it \u2014 that already requires a code change from a developer. Adding new fields without that step only makes sense for internal use (notes not meant to be shown to visitors).<\/p>\n<h3>What happens if a field group gets accidentally deleted?<\/h3>\n<p>The field structure itself is deleted, but values already entered in posts physically remain in the database for a while \u2014 however, without the field definitions, the admin won&#8217;t show a form to edit them, and the site&#8217;s template may stop correctly outputting that data. This is an action best left to a developer, especially on a site with real, already-filled content.<\/p>\n<h3>Is there a difference between ACF Free and ACF Pro?<\/h3>\n<p>The free version covers basic field types (text, number, image, choice). The Pro version adds repeaters, galleries, Flexible Content, and options pages \u2014 exactly the capabilities needed for more complex structures like FAQ blocks or site-wide settings.<\/p>\n<h3>Can ACF fields be transferred from one site to another?<\/h3>\n<p>Yes, ACF lets you export field group definitions to a file (PHP code or JSON) and import them on another site \u2014 a standard practice when moving a structure between a dev version of a site and the live production server, or when building a new site on a previously proven structure.<\/p>\n<h3>Why do some ACF fields show up only on certain post types, not everywhere?<\/h3>\n<p>Each ACF field group has its own &#8220;Location Rules&#8221; \u2014 conditions for when it appears: &#8220;show only on posts of type Service,&#8221; for instance, or &#8220;only on the Homepage.&#8221; This is deliberate, done by the developer, so service fields don&#8217;t get mixed up with fields meant for ordinary blog posts.<\/p>\n<h3>Does ACF field content show up in the site&#8217;s regular search?<\/h3>\n<p>By default, WordPress&#8217;s standard search only looks at the title and main content of a post, not ACF field values. If search needs to account for, say, a &#8220;Short Description&#8221; field&#8217;s content, that&#8217;s a separate setup a developer handles \u2014 it isn&#8217;t enabled automatically when ACF is installed.<\/p>\n<h3>What should I do if a field shows &#8220;this field is required&#8221; but there&#8217;s nothing to fill in?<\/h3>\n<p>If a specific value genuinely doesn&#8217;t apply to this post (no photo for one of the gallery items, say), it&#8217;s worth checking with the developer whether the &#8220;required&#8221; mark can be removed from that field \u2014 it may have been set that way by mistake during the structure setup, not intentionally.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>ACF (Advanced Custom Fields) in plain terms: why custom fields exist, field types, the repeater, and common mistakes when filling them in.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_opengraph-title":"","_yoast_wpseo_opengraph-description":"","_sitemap_exclude":false,"_sitemap_priority":"","_sitemap_frequency":"","_wpml_set_language":"","_wpml_translation_of":0,"footnotes":""},"categories":[45],"tags":[14],"class_list":["post-1461","post","type-post","status-publish","format-standard","hentry","category-blog-en","tag-rozrobka"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>ACF: What It&#039;s For and How to Use It | Netloria<\/title>\n<meta name=\"description\" content=\"Advanced Custom Fields in plain terms: why custom fields exist, how the repeater works, and why you can&#039;t just write everything in the main editor.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"ACF: What It&#039;s For and How to Use It | Netloria\" \/>\n<meta property=\"og:description\" content=\"Advanced Custom Fields in plain terms: why custom fields exist, how the repeater works, and why you can&#039;t just write everything in the main editor.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/\" \/>\n<meta property=\"og:site_name\" content=\"NetLoria - \u0421\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-05T10:00:00+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/netloria.com\/wp-content\/uploads\/2026\/10\/acf-field-groups-list.webp\" \/>\n<meta name=\"author\" content=\"\u0412\u0430\u0434\u0438\u043c \u0411\u0430\u0433\u0440\u0456\u0439\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u0412\u0430\u0434\u0438\u043c \u0411\u0430\u0433\u0440\u0456\u0439\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/\"},\"author\":{\"name\":\"\u0412\u0430\u0434\u0438\u043c \u0411\u0430\u0433\u0440\u0456\u0439\",\"@id\":\"https:\\\/\\\/netloria.com\\\/#\\\/schema\\\/person\\\/09fa31b32e780b5362ae5e2908a2b094\"},\"headline\":\"ACF (Advanced Custom Fields): What It&#8217;s For and How to Use It\",\"datePublished\":\"2026-10-05T10:00:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/\"},\"wordCount\":1765,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/netloria.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/netloria.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/acf-field-groups-list.webp\",\"keywords\":[\"\u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430\"],\"articleSection\":[\"Blog\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/\",\"url\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/\",\"name\":\"ACF: What It's For and How to Use It | Netloria\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/netloria.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/netloria.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/acf-field-groups-list.webp\",\"datePublished\":\"2026-10-05T10:00:00+00:00\",\"description\":\"Advanced Custom Fields in plain terms: why custom fields exist, how the repeater works, and why you can't just write everything in the main editor.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/#primaryimage\",\"url\":\"https:\\\/\\\/netloria.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/acf-field-groups-list.webp\",\"contentUrl\":\"https:\\\/\\\/netloria.com\\\/wp-content\\\/uploads\\\/2026\\\/10\\\/acf-field-groups-list.webp\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/netloria.com\\\/en\\\/blog-en\\\/acf-what-its-for-how-to-use-en\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/netloria.com\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Blog\",\"item\":\"https:\\\/\\\/netloria.com\\\/en\\\/category\\\/blog-en\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"ACF (Advanced Custom Fields): What It&#8217;s For and How to Use It\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/netloria.com\\\/#website\",\"url\":\"https:\\\/\\\/netloria.com\\\/\",\"name\":\"NetLoria - \u0421\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/netloria.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/netloria.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/netloria.com\\\/#organization\",\"name\":\"Netloria\",\"url\":\"https:\\\/\\\/netloria.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/netloria.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/netloria.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/cropped-logo.png\",\"contentUrl\":\"https:\\\/\\\/netloria.com\\\/wp-content\\\/uploads\\\/2026\\\/03\\\/cropped-logo.png\",\"width\":512,\"height\":512,\"caption\":\"Netloria\"},\"image\":{\"@id\":\"https:\\\/\\\/netloria.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.instagram.com\\\/net.loria\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/vadim-bahrii-6736991a1\\\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/netloria.com\\\/#\\\/schema\\\/person\\\/09fa31b32e780b5362ae5e2908a2b094\",\"name\":\"Vadym Bahrii\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/netloria.com\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/img_1262-photoroom-picsart-aiimageenhancer-2-150x150.webp\",\"url\":\"https:\\\/\\\/netloria.com\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/img_1262-photoroom-picsart-aiimageenhancer-2-150x150.webp\",\"contentUrl\":\"https:\\\/\\\/netloria.com\\\/wp-content\\\/uploads\\\/2026\\\/02\\\/img_1262-photoroom-picsart-aiimageenhancer-2-150x150.webp\",\"caption\":\"Vadym Bahrii\"},\"description\":\"Vadym Bahrii is a full-stack developer and co-founder of the Netloria web studio, with over 6 years of experience building fast, responsive, and scalable websites and digital products for businesses in Ukraine and abroad.\\n\\nHe works across every stage of development \u2014 from architecture and back-end logic to the final front-end. He specializes in custom WordPress development using ACF, PHP, JavaScript, HTML, and CSS, as well as building functionality tailored to a client's specific business needs \u2014 from simple landing pages to complex web applications.\\n\\nHe has hands-on experience integrating WooCommerce for e-commerce projects, connecting payment systems, building subscriptions, LMS platforms (LearnDash), CRM systems, REST APIs, and third-party services. He's comfortable working with databases, server-side logic, AJAX, performance optimization (Core Web Vitals), and complex front-end logic for interactive interfaces.\\n\\nDuring his time at Netloria, he's worked on the full cycle of turnkey website development for startups, e-commerce projects, and corporate clients from the Netherlands, the US, and the UK \u2014 from the technical spec and architecture through launch and support. He writes original articles about web development, design, and digital marketing on the Netloria blog.\\n\\nHis main focus isn't just clean code \u2014 it's comprehensive technical solutions that combine a reliable back end, a smooth UX\\\/UI, and real business results for the client.\",\"url\":\"https:\\\/\\\/netloria.com\\\/en\\\/author\\\/bahrii\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"ACF: What It's For and How to Use It | Netloria","description":"Advanced Custom Fields in plain terms: why custom fields exist, how the repeater works, and why you can't just write everything in the main editor.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_US","og_type":"article","og_title":"ACF: What It's For and How to Use It | Netloria","og_description":"Advanced Custom Fields in plain terms: why custom fields exist, how the repeater works, and why you can't just write everything in the main editor.","og_url":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/","og_site_name":"NetLoria - \u0421\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447","article_published_time":"2026-10-05T10:00:00+00:00","og_image":[{"url":"https:\/\/netloria.com\/wp-content\/uploads\/2026\/10\/acf-field-groups-list.webp","type":"","width":"","height":""}],"author":"\u0412\u0430\u0434\u0438\u043c \u0411\u0430\u0433\u0440\u0456\u0439","twitter_card":"summary_large_image","twitter_misc":{"Written by":"\u0412\u0430\u0434\u0438\u043c \u0411\u0430\u0433\u0440\u0456\u0439","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/#article","isPartOf":{"@id":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/"},"author":{"name":"\u0412\u0430\u0434\u0438\u043c \u0411\u0430\u0433\u0440\u0456\u0439","@id":"https:\/\/netloria.com\/#\/schema\/person\/09fa31b32e780b5362ae5e2908a2b094"},"headline":"ACF (Advanced Custom Fields): What It&#8217;s For and How to Use It","datePublished":"2026-10-05T10:00:00+00:00","mainEntityOfPage":{"@id":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/"},"wordCount":1765,"commentCount":0,"publisher":{"@id":"https:\/\/netloria.com\/#organization"},"image":{"@id":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/#primaryimage"},"thumbnailUrl":"https:\/\/netloria.com\/wp-content\/uploads\/2026\/10\/acf-field-groups-list.webp","keywords":["\u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430"],"articleSection":["Blog"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/","url":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/","name":"ACF: What It's For and How to Use It | Netloria","isPartOf":{"@id":"https:\/\/netloria.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/#primaryimage"},"image":{"@id":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/#primaryimage"},"thumbnailUrl":"https:\/\/netloria.com\/wp-content\/uploads\/2026\/10\/acf-field-groups-list.webp","datePublished":"2026-10-05T10:00:00+00:00","description":"Advanced Custom Fields in plain terms: why custom fields exist, how the repeater works, and why you can't just write everything in the main editor.","breadcrumb":{"@id":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/#primaryimage","url":"https:\/\/netloria.com\/wp-content\/uploads\/2026\/10\/acf-field-groups-list.webp","contentUrl":"https:\/\/netloria.com\/wp-content\/uploads\/2026\/10\/acf-field-groups-list.webp"},{"@type":"BreadcrumbList","@id":"https:\/\/netloria.com\/en\/blog-en\/acf-what-its-for-how-to-use-en\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/netloria.com\/en\/"},{"@type":"ListItem","position":2,"name":"Blog","item":"https:\/\/netloria.com\/en\/category\/blog-en\/"},{"@type":"ListItem","position":3,"name":"ACF (Advanced Custom Fields): What It&#8217;s For and How to Use It"}]},{"@type":"WebSite","@id":"https:\/\/netloria.com\/#website","url":"https:\/\/netloria.com\/","name":"NetLoria - \u0421\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044f \u0441\u0430\u0439\u0442\u0456\u0432 \u043f\u0456\u0434 \u043a\u043b\u044e\u0447","description":"","publisher":{"@id":"https:\/\/netloria.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/netloria.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/netloria.com\/#organization","name":"Netloria","url":"https:\/\/netloria.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/netloria.com\/#\/schema\/logo\/image\/","url":"https:\/\/netloria.com\/wp-content\/uploads\/2026\/03\/cropped-logo.png","contentUrl":"https:\/\/netloria.com\/wp-content\/uploads\/2026\/03\/cropped-logo.png","width":512,"height":512,"caption":"Netloria"},"image":{"@id":"https:\/\/netloria.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.instagram.com\/net.loria","https:\/\/www.linkedin.com\/in\/vadim-bahrii-6736991a1\/"]},{"@type":"Person","@id":"https:\/\/netloria.com\/#\/schema\/person\/09fa31b32e780b5362ae5e2908a2b094","name":"Vadym Bahrii","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/netloria.com\/wp-content\/uploads\/2026\/02\/img_1262-photoroom-picsart-aiimageenhancer-2-150x150.webp","url":"https:\/\/netloria.com\/wp-content\/uploads\/2026\/02\/img_1262-photoroom-picsart-aiimageenhancer-2-150x150.webp","contentUrl":"https:\/\/netloria.com\/wp-content\/uploads\/2026\/02\/img_1262-photoroom-picsart-aiimageenhancer-2-150x150.webp","caption":"Vadym Bahrii"},"description":"Vadym Bahrii is a full-stack developer and co-founder of the Netloria web studio, with over 6 years of experience building fast, responsive, and scalable websites and digital products for businesses in Ukraine and abroad.\n\nHe works across every stage of development \u2014 from architecture and back-end logic to the final front-end. He specializes in custom WordPress development using ACF, PHP, JavaScript, HTML, and CSS, as well as building functionality tailored to a client's specific business needs \u2014 from simple landing pages to complex web applications.\n\nHe has hands-on experience integrating WooCommerce for e-commerce projects, connecting payment systems, building subscriptions, LMS platforms (LearnDash), CRM systems, REST APIs, and third-party services. He's comfortable working with databases, server-side logic, AJAX, performance optimization (Core Web Vitals), and complex front-end logic for interactive interfaces.\n\nDuring his time at Netloria, he's worked on the full cycle of turnkey website development for startups, e-commerce projects, and corporate clients from the Netherlands, the US, and the UK \u2014 from the technical spec and architecture through launch and support. He writes original articles about web development, design, and digital marketing on the Netloria blog.\n\nHis main focus isn't just clean code \u2014 it's comprehensive technical solutions that combine a reliable back end, a smooth UX\/UI, and real business results for the client.","url":"https:\/\/netloria.com\/en\/author\/bahrii\/"}]}},"_links":{"self":[{"href":"https:\/\/netloria.com\/en\/wp-json\/wp\/v2\/posts\/1461","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/netloria.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/netloria.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/netloria.com\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/netloria.com\/en\/wp-json\/wp\/v2\/comments?post=1461"}],"version-history":[{"count":2,"href":"https:\/\/netloria.com\/en\/wp-json\/wp\/v2\/posts\/1461\/revisions"}],"predecessor-version":[{"id":1485,"href":"https:\/\/netloria.com\/en\/wp-json\/wp\/v2\/posts\/1461\/revisions\/1485"}],"wp:attachment":[{"href":"https:\/\/netloria.com\/en\/wp-json\/wp\/v2\/media?parent=1461"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/netloria.com\/en\/wp-json\/wp\/v2\/categories?post=1461"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/netloria.com\/en\/wp-json\/wp\/v2\/tags?post=1461"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}