---
title: 'Liquid objects: metaobject_definition'
description: >-
A `metaobject_definition` defines the structure of a metaobject type for the
store, which consists of
a merchant-defined set of [field
definitions](https://help.shopify.com/en/manual/metafields/metafield-definitions).
api_name: liquid
source_url:
html: 'https://shopify.dev/docs/api/liquid/objects/metaobject_definition'
md: 'https://shopify.dev/docs/api/liquid/objects/metaobject_definition.md'
---
# metaobject\_​definition
A `metaobject_definition` defines the structure of a metaobject type for the store, which consists of a merchant-defined set of [field definitions](https://help.shopify.com/en/manual/metafields/metafield-definitions).
One or more corresponding [`metaobject`](https://shopify.dev/docs/api/liquid/objects#metaobject) objects contain values for the fields specified in the metaobject definition.
***
**Note:** When looping through metaobjects by accessing them using individual handles (e.g., \\metaobjects.T\Y\P\E\[handle]\\), you\'re limited to 20 unique handles per page and can\'t use \pagination\. To iterate over more metaobjects, instead use the \values\ property, which supports pagination up to 250 entries per page.
***
## Properties
* * **values**
array of [metaobject](https://shopify.dev/docs/api/liquid/objects/metaobject)
* The [metaobjects](https://shopify.dev/docs/api/liquid/objects#metaobject) that follow the definition.
* **values\_​count**
[number](https://shopify.dev/docs/api/liquid/basics#number)
* The total number of entries for the metaobject definition.
### Loop over entries of a metaobject definition
If a metaobject definition has multiple metaobject entries, then you can loop over them using the `values` property. You can loop over a maximum of 50 entries in a metaobject definition. For example, you can display the field `author` for each metaobject using the following `forloop`:
```liquid
{% for testimonial in metaobjects.testimonials.values %}
{{ testimonial.author.value }}
{% endfor %}
```
```liquid
{% for testimonial in metaobjects.testimonials.values %}
{{ testimonial.author.value }}
{% endfor %}
```
***
**Note:** When the \\publishable\ capability\ is enabled, loops return only metaobjects with a status of \active\. Metaobjects with a status of \draft\ are skipped.
***