Свойство schema.org ?
Содержание: Описание, Какие должны быть типы, В каких типах используется, Примеры использования.
Представьте, что вы заходите на сайт ресторана. Хотите быстро понять, что здесь можно поесть. А вместо чёткой структуры — сплошной список блюд без разделов. Завтрак, ужин, десерты — всё смешалось. Как в старом анекдоте: «Дайте мне то же самое, что и у всех». Не очень-то удобно.
Вот здесь и приходит на помощь hasMenuSection
.
hasMenuSection
— это свойство в микроразметке Schema.org, которое позволяет структурировать меню на логические части. Это как главы в книге или отделы в супермаркете — каждый тип еды, время подачи или кухня имеют своё место.
Ожидаемый тип значения — MenuSection
. То есть не просто слово "Закуски", а полноценный объект с описанием, изображением, ценами и даже временем доступности.
Это свойство используется в двух основных типах:
Menu
— чтобы разбить всё меню на секции.MenuSection
— для создания вложенных подразделов (например, внутри "Ужина" могут быть "Салаты" и "Основные блюда").Если раньше меню было как беспорядочный шкаф, где носки валяются вместе с книгами, то hasMenuSection
помогает расставить всё по полочкам.
Вы можете группировать блюда:
Такой подход делает информацию не только понятнее для клиентов, но и читабельнее для поисковых систем.
Пользователи любят порядок. Когда они видят чёткую структуру меню, им проще ориентироваться, быстрее принимать решения и реже задавать вопрос: «А у вас есть что-нибудь с рыбой?».
Но не только клиенты оценят такую организацию. Использование hasMenuSection
даёт бизнесу несколько важных преимуществ:
hasMenuSection
работает в связке с inLanguage
, чтобы всё было правильно разделено.Допустим, у вас ресторан с разделённым меню: сначала закуски, потом основные блюда, потом десерты. С помощью hasMenuSection
вы можете описать каждую из этих групп отдельно.
Каждая секция может содержать:
name
)description
)image
)offers
)hasMenuItem
)И если у вас есть, например, сезонное меню, доступное только до определённой даты — вы легко его помечаете и показываете посетителям.
Поисковые системы сегодня всё чаще обращают внимание на структурированные данные, потому что они помогают лучше понимать контент. Когда вы используете hasMenuSection
, вы:
А для пользователей это просто удобнее и быстрее выбирать, что заказать.
hasMenuSection
— это не просто технический элемент Schema.org. Это ключ к чёткой и логичной структуре меню, которая помогает и клиентам, и поисковым системам.
Если вы хотите, чтобы ваше меню воспринималось как настоящий гастрономический каталог, а не случайный набор блюд — начните использовать hasMenuSection
. Он превращает хаос в порядок, а порядок — в удовольствие от выбора.
Пример заметки или HTML разметки.
A simple menu example with a single menu section for tacos and a taco menu item.
Note that additional menus are possible for specific languages using the
inLanguage property.
Пример, закодированный в формате JSON-LD в теге <script> HTML.
<script type="application/ld+json">
{
"@context":"https://schema.org",
"@type":"Restaurant",
"url":"http://www.somerestaurant.com",
"name":"Some Restaurant",
"description":"This is the Some Restaurant located on 345 Spear St. San Francisco, 94105 CA. It serves Indian-Mexican fusion cuisine",
"servesCuisine":[
"Indian-Mexican Fusion"
],
"hasMenu":{
"@type":"Menu",
"hasMenuSection":{
"@type":"MenuSection",
"name":"Tacos",
"description":"Tacos inspired by India cuisine.",
"image":[
"https://somerestaurant.com/some_tacos.jpg",
"https://somerestaurant.com/more_tacos.jpg"
],
"offers":{
"@type":"Offer",
"availabilityEnds":"2017-03-02T08:22:00",
"availabilityStarts":"2017-03-02T08:22:00"
},
"hasMenuItem":{
"@type":"MenuItem",
"name":"Aloo Gobi Taco",
"description":"Mexico City-style street corn tortilla taco filled with a flavorful mixture of mildly south Indian spiced cauliflower, potato, tomato, onions and bell peppers.",
"offers":{
"@type":"Offer",
"price":"3.50",
"priceCurrency":"USD"
},
"nutrition":{
"@type":"NutritionInformation",
"calories":"170 calories",
"fatContent":"3 grams",
"fiberContent":"2 grams",
"proteinContent":"4 grams"
},
"suitableForDiet":"https://schema.org/GlutenFreeDiet"
}
},
"inLanguage":"English"
}
}
</script>
Структурированное представление примера JSON-LD.
Пример заметки или HTML разметки.
An example of a menu with nested MenuSections.
Пример, закодированный в формате JSON-LD в теге <script> HTML.
<script type="application/ld+json">
{
"@context":"https://schema.org",
"@type":"Restaurant",
"url":"http://www.thisisarestaurant.com",
"name":"The Restaurant",
"image":"http://www.example.com/image-of-some-restaurant.jpg",
"description":"This is an example restaurant that serves American cuisine.",
"servesCuisine":[
"American cuisine"
],
"hasMenu":{
"@type":"Menu",
"name":"Dine-In Menu",
"description":"Menu for in-restaurant dining only.",
"hasMenuSection":[
{
"@type":"MenuSection",
"name":"Dinner",
"description":"Dinner dishes",
"image":"https://thisisarestaurant.com/dinner_dishes.jpg",
"offers":{
"@type":"Offer",
"availabilityEnds":"2017-03-02T08:22:00",
"availabilityStarts":"2017-03-02T08:22:00"
},
"hasMenuSection":[
{
"@type":"MenuSection",
"name":"Starters",
"description":"Appetizers and such",
"image":"https://thisisarestaurant.com/starter_dishes.jpg",
"offers":{
"@type":"Offer",
"availabilityEnds":"2017-03-02T08:22:00",
"availabilityStarts":"2017-03-02T08:22:00"
},
"hasMenuItem":{
"@type":"MenuItem",
"name":"Potato Skins",
"description":"Small serving of stuffed potato skins.",
"offers":{
"@type":"Offer",
"price":"7.49",
"priceCurrency":"USD"
},
"suitableForDiet":"https://schema.org/GlutenFreeDiet"
}
},
{
"@type":"MenuSection",
"name":"Soups & Salads",
"description":"Salads and a few choices of soup",
"image":"https://thisisarestaurant.com/soup_and_salad_dishes.jpg",
"offers":{
"@type":"Offer",
"availabilityEnds":"2017-03-02T08:22:00",
"availabilityStarts":"2017-03-02T08:22:00"
},
"hasMenuItem":{
"@type":"MenuItem",
"name":"Pea Soup",
"description":"Creamy pea soup topped with melted cheese and sourdough croutons.",
"offers":{
"@type":"Offer",
"price":"3.49",
"priceCurrency":"USD"
}
}
}
]
}
]
}
}
</script>
Структурированное представление примера JSON-LD.