{"id":252190,"date":"2022-11-21T06:08:34","date_gmt":"2022-11-21T06:08:34","guid":{"rendered":"https:\/\/webkul.com\/blog\/?p=252190"},"modified":"2026-07-31T04:36:19","modified_gmt":"2026-07-31T04:36:19","slug":"how-to-create-class-data-object-in-pimcore","status":"publish","type":"post","link":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/","title":{"rendered":"How to Create Class Data Object in Pimcore?"},"content":{"rendered":"<p>Want to model product data in Pimcore? You define a class, then create data objects from it \u2014 visually, inside the React-based Pimcore Studio UI.<\/p>\n<p>This guide shows the exact clicks. You will define a class, add fields, and publish your first Pimcore Data Object, with no PHP required.<\/p>\n<h2>What is a Pimcore Data Object (and a class)?<\/h2>\n<p>A <a href=\"https:\/\/webkul.com\/blog\/class-setting-in-pimcore\/\"><strong>Class Setting in Pimcore<\/strong><\/a> is the blueprint. It defines the fields your records will hold, such as name, SKU, price, and image.<\/p>\n<p>A <a href=\"https:\/\/webkul.com\/blog\/data-objects-in-pimcore\/\"><strong>Pimcore Data Object<\/strong><\/a> is one record built from that blueprint. Think of the class as the mold and the object as a single casting.<\/p>\n<p>Classes and data objects are how Pimcore models structured product and master data. This is the heart of Pimcore as a PIM.<\/p>\n<p>You need no OOP knowledge. Pimcore turns the whole thing into a point-and-click job inside Studio.<\/p>\n<p>Behind the scenes, Pimcore stores each Pimcore Data Object in MySQL. The visual editor writes that schema for you.<\/p>\n<h2>Prerequisites<\/h2>\n<p>Get these ready before you start:<\/p>\n<ol>\n<li>A running install of the latest Pimcore (Platform 2026.1 or newer).<\/li>\n<li>Access to Pimcore Studio, the modern React-based admin UI.<\/li>\n<li>A user account with permission to edit classes and data objects.<\/li>\n<\/ol>\n<p>One important note. The legacy ExtJS &#8220;classic&#8221; admin panel no longer ships in Pimcore 2026.1.<\/p>\n<p>So the old route &#8220;Settings &gt; Data Objects &gt; Classes&#8221; is dead. Everything now lives in Studio, and this post follows that path.<\/p>\n<p>On Pimcore versions before Studio became the default, screens differ. This guide targets 2026.1, where Studio is the only admin UI.<\/p>\n<h2>Step 1: Open the class editor in Pimcore Studio<\/h2>\n<p>Sign in to Pimcore Studio first. Then use the left navigation to reach the class list.<\/p>\n<p>Follow this path exactly:<\/p>\n<ol>\n<li>Open <strong>Data Management<\/strong> in the left navigation.<\/li>\n<li>Expand <strong>Data Model Definitions<\/strong>.<\/li>\n<li>Click <strong>Classes<\/strong>.<\/li>\n<\/ol>\n<figure><img decoding=\"async\" class=\"alignnone size-full wp-image-551434\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp\" alt=\"pimcore-data-object-studio-classes-menu\" width=\"1529\" height=\"757\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp 1529w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1-300x149.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1-1200x594.webp 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1-250x124.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1-768x380.webp 768w\" sizes=\"(max-width: 1529px) 100vw, 1529px\" loading=\"lazy\" \/><\/figure>\n<figure>You will see siblings next to <strong>Classes<\/strong> under <strong>Data Model Definitions<\/strong>. These include Field Collections, Object Bricks, Bulk Export, Bulk Import, Quantity Values, and Select Options.<\/figure>\n<p>We will use the plain <strong>Classes<\/strong> editor here. That is where every Pimcore Data Object structure begins.<\/p>\n<h2>Step 2: Create the class definition<\/h2>\n<p>On the <strong>Classes<\/strong> page, click the add action to start a new class. Pimcore then opens a dialog titled <strong>Create New Class Definition<\/strong>.<\/p>\n<figure><img decoding=\"async\" class=\"alignnone size-full wp-image-551424\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-create-class-dialog.webp\" alt=\"pimcore-data-object-create-class-dialog\" width=\"1529\" height=\"757\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-create-class-dialog.webp 1529w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-create-class-dialog-300x149.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-create-class-dialog-1200x594.webp 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-create-class-dialog-250x124.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-create-class-dialog-768x380.webp 768w\" sizes=\"(max-width: 1529px) 100vw, 1529px\" loading=\"lazy\" \/><\/figure>\n<p>The dialog gives you two inputs:<\/p>\n<ol>\n<li><strong>Class name<\/strong> \u2014 the human-readable name, for example <code>Product<\/code>.<\/li>\n<li><strong>Unique identifier<\/strong> \u2014 the internal key Pimcore uses for tables and code.<\/li>\n<\/ol>\n<p>Respect the class-name rule. Studio states it plainly: &#8220;The class name must start with a letter and can contain only letters, numbers, and underscores.&#8221;<\/p>\n<p>Mind the unique identifier too. Studio warns: &#8220;Be careful with the unique identifier because table names can contain only up to 64 characters.&#8221;<\/p>\n<p>That 64-character limit is a real database constraint. Keep the identifier short so your table names never exceed it.<\/p>\n<p>For our worked example, name the class <code>Product<\/code>. Confirm the dialog to open the full class editor.<\/p>\n<h2>Step 3: Add fields with Layout + Data Components<\/h2>\n<p>When the editor opens, you land on the <strong>General<\/strong> tab. Review it first, then switch to the field builder to shape your object.<\/p>\n<h3>General settings for the class<\/h3>\n<p>The <strong>General<\/strong> tab shapes how the class behaves overall. A first-timer only needs a handful of these fields.<\/p>\n<figure><img decoding=\"async\" class=\"alignnone size-full wp-image-551430\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-general-settings.webp\" alt=\"pimcore-data-object-general-settings\" width=\"1529\" height=\"757\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-general-settings.webp 1529w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-general-settings-300x149.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-general-settings-1200x594.webp 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-general-settings-250x124.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-general-settings-768x380.webp 768w\" sizes=\"(max-width: 1529px) 100vw, 1529px\" loading=\"lazy\" \/><\/figure>\n<p>Worth a look are PHP Class Name, Group, and Icon. Toggle Allow Inheritance, Allow Variants, and Show Variants only when your model needs them.<\/p>\n<p>The tab also lists advanced settings. Description, ID, Parent Class, Implements Interfaces, Use Traits, and the generator references are safe to ignore for now.<\/p>\n<p>For a simple <code>Product<\/code> class, leave every General field at its default. You can revisit this tab any time.<\/p>\n<h3>Add Layout Component<\/h3>\n<p>The class editor is where you build the field tree. Pimcore gives you two add-actions, and both matter.<\/p>\n<p>Click <strong>Add Layout Component<\/strong> to organize how fields appear in the object editor. This group controls tabs, panels, and fieldsets, not stored data.<\/p>\n<p>The <strong>Layout Component<\/strong> group offers Panel, Tab Panel, Region, Accordion, Fieldset, and Localized Fields. Reach for a Fieldset to group related inputs visually.<\/p>\n<h3>Add Data Component<\/h3>\n<p>Click <strong>Add Data Component<\/strong> to add the actual data fields. This is where each Pimcore Data Object gets its real values.<\/p>\n<p>Pimcore groups the <strong>Data Component<\/strong> types into ten families: Text, Numeric, Date, Select, Media, Relation, Geographic, CRM, Structured, and Other.<\/p>\n<figure><img decoding=\"async\" class=\"alignnone size-full wp-image-551440\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-class-editor-fields.webp\" alt=\"pimcore-data-object-class-editor-fields\" width=\"1529\" height=\"757\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-class-editor-fields.webp 1529w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-class-editor-fields-300x149.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-class-editor-fields-1200x594.webp 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-class-editor-fields-250x124.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-class-editor-fields-768x380.webp 768w\" sizes=\"(max-width: 1529px) 100vw, 1529px\" loading=\"lazy\" \/><\/figure>\n<p>Try the first field now. Click <strong>Add Data Component<\/strong>, open the <strong>Text<\/strong> group, choose <strong>Input<\/strong>, then set the field name to <code>name<\/code>.<\/p>\n<p>Repeat that pattern for each remaining field. Build the <code>Product<\/code> class with these data fields:<\/p>\n<ol>\n<li><strong>name<\/strong> \u2014 Input (under Text).<\/li>\n<li><strong>sku<\/strong> \u2014 Input (under Text).<\/li>\n<li><strong>price<\/strong> \u2014 Number (under Numeric).<\/li>\n<li><strong>description<\/strong> \u2014 Textarea (under Text).<\/li>\n<li><strong>image<\/strong> \u2014 Image (under Media).<\/li>\n<li><strong>active<\/strong> \u2014 Checkbox.<\/li>\n<\/ol>\n<p>Each field name follows the same rule as the class name. Start with a letter, then use letters, numbers, or underscores only.<\/p>\n<p>You should now see six data fields sitting in the tree. That is your full <code>Product<\/code> structure, ready to save.<\/p>\n<p>Relations deserve a mention. Under the <strong>Relation<\/strong> group, Many-to-One and Many-to-Many object relations link one Pimcore Data Object to another.<\/p>\n<p>Structured items live under the <strong>Structured<\/strong> group. These include Field Collections, Object Bricks, Localized Fields, and Classification Store.<\/p>\n<p>You might expect these two add-actions to need separate deep-dives. In Studio they are just the two buttons above, so you have both covered here.<\/p>\n<h2>Step 4: Save (Pimcore builds the schema for you)<\/h2>\n<p>Use the Save action in the class editor once the field tree looks right. This single action does two big things automatically.<\/p>\n<p>First, Pimcore generates the underlying database schema. It creates the per-class MySQL tables that will hold every Pimcore Data Object.<\/p>\n<p>Second, Pimcore writes the PHP model class. It generates <code>Pimcore\\Model\\DataObject\\Product<\/code> so your code can use the type immediately.<\/p>\n<p>No coding is required for either step. The visual editor writes both the schema and the model for you.<\/p>\n<h2>Step 5: Create a Pimcore Data Object<\/h2>\n<p>Now build an instance of the class. Open the Data Objects area of Studio to reach the Data Object Tree.<\/p>\n<figure><img decoding=\"async\" class=\"alignnone size-full wp-image-551446\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-new-object-tree.webp\" alt=\"pimcore-data-object-new-object-tree\" width=\"1529\" height=\"757\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-new-object-tree.webp 1529w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-new-object-tree-300x149.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-new-object-tree-1200x594.webp 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-new-object-tree-250x124.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-new-object-tree-768x380.webp 768w\" sizes=\"(max-width: 1529px) 100vw, 1529px\" loading=\"lazy\" \/><\/figure>\n<figure>On a fresh install, the tree may show only the root node. Right-click the root, or create a folder first, then work inside it.<\/figure>\n<p>Create the object in three steps:<\/p>\n<ol>\n<li>Right-click a folder in the tree.<\/li>\n<li>Choose <strong>New Object<\/strong> from the context menu.<\/li>\n<li>Pick your class via &#8220;Add new Object of type Product&#8221;.<\/li>\n<\/ol>\n<p>Pimcore opens the object in the object editor. It shows exactly the fields your class defined, and nothing else.<\/p>\n<p>Fill in the fields for a real product. Enter the name, sku, price, description, upload an image, and tick active.<\/p>\n<p>Every value you type lands in one Pimcore Data Object. The editor mirrors your class layout one-to-one.<\/p>\n<h2>Step 6: Publish<\/h2>\n<p>A new object starts as a draft. It stays unpublished until you act on it.<\/p>\n<p>The object editor gives you two actions here: <strong>Publish<\/strong> and <strong>Unpublish<\/strong>. Click <strong>Publish<\/strong> to make the record live.<\/p>\n<figure><img decoding=\"async\" class=\"alignnone size-full wp-image-551461\" src=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-editor-publish-1.webp\" alt=\"pimcore-data-object-editor-publish\" width=\"1529\" height=\"757\" srcset=\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-editor-publish-1.webp 1529w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-editor-publish-1-300x149.webp 300w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-editor-publish-1-1200x594.webp 1200w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-editor-publish-1-250x124.webp 250w, https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-editor-publish-1-768x380.webp 768w\" sizes=\"(max-width: 1529px) 100vw, 1529px\" loading=\"lazy\" \/><\/figure>\n<p>An unpublished object still exists in the tree. Pimcore does not serve it to Data Hub, APIs, or the frontend until you publish it.<\/p>\n<p>Your first Pimcore Data Object is now live. Downstream systems and APIs can read it from this point on.<\/p>\n<p>Need to pull it back? Use <strong>Unpublish<\/strong> to return the object to a draft state without deleting it.<\/p>\n<h2>What Pimcore built under the hood<\/h2>\n<p>Saving the class created several MySQL tables. You rarely touch them, but the map helps when you debug.<\/p>\n<p>Pimcore uses four table types per class:<\/p>\n<ol>\n<li><code>object_&lt;id&gt;<\/code> \u2014 the base row for each object.<\/li>\n<li><code>object_store_&lt;id&gt;<\/code> \u2014 the stored field values.<\/li>\n<li><code>object_query_&lt;id&gt;<\/code> \u2014 values optimized for grid and listing queries.<\/li>\n<li><code>object_relations_&lt;id&gt;<\/code> \u2014 the relation links between objects.<\/li>\n<\/ol>\n<p>One modern detail matters. Pimcore 12 and later dropped the old <code>o_<\/code> column prefix, so you never see <code>o_id<\/code> or <code>o_key<\/code> now.<\/p>\n<p>On the PHP side, <code>Pimcore\\Model\\DataObject\\Product<\/code> is a fully typed model. Your services and controllers load, edit, and save each Pimcore Data Object through it.<\/p>\n<h2>Prefer code? Define a Pimcore Data Object class in PHP<\/h2>\n<p>Studio is the fastest route, but Pimcore also supports <a href=\"https:\/\/webkul.com\/blog\/setup-for-pimcore-development-environment\/\">code-first workflows<\/a>. Developers can define a class in PHP.<\/p>\n<p>Call <code>DataObject\\ClassDefinition::create([...])<\/code> to define the class. Then run two console commands to sync everything:<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"\">bin\/console pimcore:build:classes\nbin\/console pimcore:deployment:classes-rebuild --force<\/pre>\n<p>The first command regenerates the PHP model classes. The second syncs the database columns to match the definition.<\/p>\n<p>You can also ship a class as JSON. Use <strong>Data Model Definitions &gt; Bulk Import<\/strong> to load one, and <strong>Bulk Export<\/strong> to dump it.<\/p>\n<p>Heed one gotcha with Bulk Import. It reassigns class IDs on import, so never hardcode a numeric class ID.<\/p>\n<p>Resolve classes by name instead. That keeps every Pimcore Data Object mapping stable across environments.<\/p>\n<h2>Where Pimcore Data Objects go next<\/h2>\n<p>A class is only the start. Each Pimcore Data Object becomes a feed for the systems around your business.<\/p>\n<p>Data objects push into ERP, CRM, and <a href=\"https:\/\/store.webkul.com\/Pimcore.html\/\">eCommerce storefronts<\/a>. Connectors carry that structured data to each destination.<\/p>\n<p>Pimcore Data Hub exposes the same objects over GraphQL. Your storefront or app can query them directly, field by field.<\/p>\n<h2>Conclusion<\/h2>\n<p>You now know the full path in the latest Pimcore. You opened Studio, defined a class, added fields, and published a Pimcore Data Object.<\/p>\n<p>The takeaway is simple. Pimcore Studio turns data modeling into clicks, and it builds the schema and PHP model for you.<\/p>\n<p>Ready to connect your catalog to a storefront or ERP? Talk to the <a href=\"https:\/\/webkul.com\/pimcore-development\/\">Webkul Pimcore team<\/a> about a connector that moves every Pimcore Data Object where it needs to go.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Want to model product data in Pimcore? You define a class, then create data objects from it \u2014 visually, inside the React-based Pimcore Studio UI. This guide shows the exact clicks. You will define a class, add fields, and publish your first Pimcore Data Object, with no PHP required. What is a Pimcore Data Object <a href=\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/\">[&#8230;]<\/a><\/p>\n","protected":false},"author":219,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8189],"tags":[8201,8202,8203],"class_list":["post-252190","post","type-post","status-publish","format-standard","hentry","category-pimcore","tag-pimcore","tag-pimcore-pim","tag-pimcore-product-information-management"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Pimcore Data Object: Create a Class in Studio<\/title>\n<meta name=\"description\" content=\"Pimcore Data Object tutorial for the latest Pimcore Studio. Build a class, add fields, and publish an object with exact clicks and commands.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Pimcore Data Object: Create a Class in Studio\" \/>\n<meta property=\"og:description\" content=\"Pimcore Data Object tutorial for the latest Pimcore Studio. Build a class, add fields, and publish an object with exact clicks and commands.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/\" \/>\n<meta property=\"og:site_name\" content=\"Webkul Blog\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/webkul\/\" \/>\n<meta property=\"article:published_time\" content=\"2022-11-21T06:08:34+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-31T04:36:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp\" \/>\n<meta name=\"author\" content=\"Adarsh Shukla\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@webkul\" \/>\n<meta name=\"twitter:site\" content=\"@webkul\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Adarsh Shukla\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/\"},\"author\":{\"name\":\"Adarsh Shukla\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/24b3f1db9e67779ee3db881cae1ecbb5\"},\"headline\":\"How to Create Class Data Object in Pimcore?\",\"datePublished\":\"2022-11-21T06:08:34+00:00\",\"dateModified\":\"2026-07-31T04:36:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/\"},\"wordCount\":1538,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp\",\"keywords\":[\"Pimcore\",\"Pimcore PIM\",\"Pimcore Product Information management\"],\"articleSection\":[\"PimCore\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/\",\"url\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/\",\"name\":\"Pimcore Data Object: Create a Class in Studio\",\"isPartOf\":{\"@id\":\"https:\/\/webkul.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp\",\"datePublished\":\"2022-11-21T06:08:34+00:00\",\"dateModified\":\"2026-07-31T04:36:19+00:00\",\"description\":\"Pimcore Data Object tutorial for the latest Pimcore Studio. Build a class, add fields, and publish an object with exact clicks and commands.\",\"breadcrumb\":{\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#primaryimage\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp\",\"width\":1529,\"height\":757,\"caption\":\"pimcore-data-object-studio-classes-menu\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/webkul.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to Create Class Data Object in Pimcore?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/webkul.com\/blog\/#website\",\"url\":\"https:\/\/webkul.com\/blog\/\",\"name\":\"Webkul Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/webkul.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/webkul.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/webkul.com\/blog\/#organization\",\"name\":\"WebKul Software Private Limited\",\"url\":\"https:\/\/webkul.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png\",\"contentUrl\":\"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png\",\"width\":380,\"height\":380,\"caption\":\"WebKul Software Private Limited\"},\"image\":{\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/webkul\/\",\"https:\/\/x.com\/webkul\",\"https:\/\/www.instagram.com\/webkul\/\",\"https:\/\/www.linkedin.com\/company\/webkul\",\"https:\/\/www.youtube.com\/user\/webkul\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/24b3f1db9e67779ee3db881cae1ecbb5\",\"name\":\"Adarsh Shukla\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/fb1b01aa3e81f8e9c96f2a73887e0dc95e47f085c0b41c5dfeeae1b6849850ee?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/fb1b01aa3e81f8e9c96f2a73887e0dc95e47f085c0b41c5dfeeae1b6849850ee?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g\",\"caption\":\"Adarsh Shukla\"},\"url\":\"https:\/\/webkul.com\/blog\/author\/adarshshukla-bd370\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Pimcore Data Object: Create a Class in Studio","description":"Pimcore Data Object tutorial for the latest Pimcore Studio. Build a class, add fields, and publish an object with exact clicks and commands.","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:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/","og_locale":"en_US","og_type":"article","og_title":"Pimcore Data Object: Create a Class in Studio","og_description":"Pimcore Data Object tutorial for the latest Pimcore Studio. Build a class, add fields, and publish an object with exact clicks and commands.","og_url":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/","og_site_name":"Webkul Blog","article_publisher":"https:\/\/www.facebook.com\/webkul\/","article_published_time":"2022-11-21T06:08:34+00:00","article_modified_time":"2026-07-31T04:36:19+00:00","og_image":[{"url":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp","type":"","width":"","height":""}],"author":"Adarsh Shukla","twitter_card":"summary_large_image","twitter_creator":"@webkul","twitter_site":"@webkul","twitter_misc":{"Written by":"Adarsh Shukla","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#article","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/"},"author":{"name":"Adarsh Shukla","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/24b3f1db9e67779ee3db881cae1ecbb5"},"headline":"How to Create Class Data Object in Pimcore?","datePublished":"2022-11-21T06:08:34+00:00","dateModified":"2026-07-31T04:36:19+00:00","mainEntityOfPage":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/"},"wordCount":1538,"commentCount":0,"publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"image":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp","keywords":["Pimcore","Pimcore PIM","Pimcore Product Information management"],"articleSection":["PimCore"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/","url":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/","name":"Pimcore Data Object: Create a Class in Studio","isPartOf":{"@id":"https:\/\/webkul.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#primaryimage"},"image":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#primaryimage"},"thumbnailUrl":"https:\/\/webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp","datePublished":"2022-11-21T06:08:34+00:00","dateModified":"2026-07-31T04:36:19+00:00","description":"Pimcore Data Object tutorial for the latest Pimcore Studio. Build a class, add fields, and publish an object with exact clicks and commands.","breadcrumb":{"@id":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#primaryimage","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2022\/11\/pimcore-data-object-studio-classes-menu-1.webp","width":1529,"height":757,"caption":"pimcore-data-object-studio-classes-menu"},{"@type":"BreadcrumbList","@id":"https:\/\/webkul.com\/blog\/how-to-create-class-data-object-in-pimcore\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/webkul.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to Create Class Data Object in Pimcore?"}]},{"@type":"WebSite","@id":"https:\/\/webkul.com\/blog\/#website","url":"https:\/\/webkul.com\/blog\/","name":"Webkul Blog","description":"","publisher":{"@id":"https:\/\/webkul.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/webkul.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/webkul.com\/blog\/#organization","name":"WebKul Software Private Limited","url":"https:\/\/webkul.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","contentUrl":"https:\/\/cdnblog.webkul.com\/blog\/wp-content\/uploads\/2021\/08\/webkul-logo-accent-sq.png","width":380,"height":380,"caption":"WebKul Software Private Limited"},"image":{"@id":"https:\/\/webkul.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/webkul\/","https:\/\/x.com\/webkul","https:\/\/www.instagram.com\/webkul\/","https:\/\/www.linkedin.com\/company\/webkul","https:\/\/www.youtube.com\/user\/webkul\/"]},{"@type":"Person","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/24b3f1db9e67779ee3db881cae1ecbb5","name":"Adarsh Shukla","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/webkul.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/fb1b01aa3e81f8e9c96f2a73887e0dc95e47f085c0b41c5dfeeae1b6849850ee?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fb1b01aa3e81f8e9c96f2a73887e0dc95e47f085c0b41c5dfeeae1b6849850ee?s=96&d=https%3A%2F%2Fcdnblog.webkul.com%2Fblog%2Fwp-content%2Fuploads%2F2019%2F10%2Fmike.png&r=g","caption":"Adarsh Shukla"},"url":"https:\/\/webkul.com\/blog\/author\/adarshshukla-bd370\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/252190","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/users\/219"}],"replies":[{"embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/comments?post=252190"}],"version-history":[{"count":42,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/252190\/revisions"}],"predecessor-version":[{"id":551696,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/posts\/252190\/revisions\/551696"}],"wp:attachment":[{"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/media?parent=252190"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/categories?post=252190"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/webkul.com\/blog\/wp-json\/wp\/v2\/tags?post=252190"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}