Skip to main content

MenuItem Object

Represents a single item of the related menu. Can store categories, collection or pages.

type MenuItem implements Node, ObjectWithMetadata {
id: ID!
privateMetadata: [MetadataItem!]!
privateMetafield(
key: String!
): String
privateMetafields(
keys: [String!]
): Metadata
metadata: [MetadataItem!]!
metafield(
key: String!
): String
metafields(
keys: [String!]
): Metadata
name: String!
menu: Menu!
parent: MenuItem
category: Category
collection: Collection
page: Page
level: Int!
children: [MenuItem!]
url: String
translation(
languageCode: LanguageCodeEnum!
): MenuItemTranslation
}

Fields

id ● ID!

The ID of the menu item.

privateMetadata ● [MetadataItem!]!

List of private metadata items. Requires staff permissions to access.

privateMetafield ● String

A single key from private metadata. Requires staff permissions to access.

Tip: Use GraphQL aliases to fetch multiple keys.

key ● String!

privateMetafields ● Metadata

Private metadata. Requires staff permissions to access. Use keys to control which fields you want to include. The default is to include everything.

keys ● [String!]

metadata ● [MetadataItem!]!

List of public metadata items. Can be accessed without permissions.

metafield ● String

A single key from public metadata.

Tip: Use GraphQL aliases to fetch multiple keys.

key ● String!

metafields ● Metadata

Public metadata. Use keys to control which fields you want to include. The default is to include everything.

keys ● [String!]

name ● String!

The name of the menu item.

Represents the menu to which the menu item belongs.

parent ● MenuItem

ID of parent menu item. If empty, menu will be top level menu.

category ● Category

Category associated with the menu item.

collection ● Collection

A collection associated with this menu item.

Requires one of the following permissions to include the unpublished items: MANAGE_ORDERSMANAGE_DISCOUNTSMANAGE_PRODUCTS

page ● Page

A page associated with this menu item.

Requires the MANAGE_PAGESpermission.

level ● Int!

Indicates the position of the menu item within the menu structure.

children ● [MenuItem!]

Represents the child items of the current menu item.

url ● String

URL to the menu item.

translation ● MenuItemTranslation

Returns translated menu item fields for the given language code.

languageCode ● LanguageCodeEnum!

A language code to return the translation for menu item.

Interfaces

Node

An object with an ID

ObjectWithMetadata

Returned By

menuItem query

Member Of

Menu object ● MenuItem object ● MenuItemCountableEdge object ● MenuItemCreate object ● MenuItemCreated object ● MenuItemDelete object ● MenuItemDeleted object ● MenuItemTranslatableContent object ● MenuItemTranslate object ● MenuItemUpdate object ● MenuItemUpdated object