סכמת מתכונים (Recipe Schema) מאפשרת למתכונים שלכם להופיע כתוצאות עשירות בגוגל – עם תמונות, זמני בישול, דירוגים וקלוריות ישירות ב-SERP. זה יכול להגדיל את שיעור ההקלקה בעד 35%.
גוגל משתמשת בנתונים מובנים של מתכונים גם עבור הנחיית בישול קולית דרך Google Assistant. אם אתם רוצים שהמתכונים שלכם יבלטו בתוצאות החיפוש ובקרוסלות, נתונים מובנים הם חלק בלתי נפרד מתהליך SEO טכני.
למה סכמת מתכונים חשובה
גוגל משתמשת בנתונים מובנים של מתכונים להצגת תוצאות עשירות, קרוסלות והנחיית בישול קולית דרך Google Assistant. כשמיושמת נכון, המתכונים שלכם יכולים להופיע עם זמני הכנה, דירוגים, תמונות והוראות צעד אחר צעד.
סכמת Recipe גם מזינה תוכן ל-Google Discover ולתכונות חיפוש מבוססות AI, מה שהופך אותה לאחד מסוגי הסכמה בעלי ההשפעה הגבוהה ביותר לאתרי מתכונים. גם אם תכונות הקול עדיין לא זמינות בכל השפות, הטמעת סכמת Recipe מלאה משפרת את הנראות בגוגל ומגדילה את שיעור ההקלקה (CTR).
מדריך זה מכסה את מבנה הנתונים המומלץ לסכמת מתכונים, כולל דוגמאות JSON-LD לעמודי מתכון בודדים ולעמודי ארכיון.
חדשים בנושא נתונים מובנים? קראו את המדריך שלנו על סכמה ונתונים מובנים בוורדפרס תחילה.
תכונות נדרשות ומומלצות למתכונים
אם תתנו מבט ב Schema.org/Recipes, כנראה ותבהלו ותרצו לוותר על הרעיון. איפה בכלל מתחילים? ישנה כמות עצומה של אפשרויות כפי שאתם יכולים לראות. אך אלו כל התכונות שבאפשרותכם להוסיף ואינכם חייבים להוסיף את כולם. למעשה, גוגל דורשת רק מספר מתכונות אלו, אך ממליצה על יותר.
תכונות עבור מתכונים בהם חייבים להשתמש עבור גוגל:
@context– קבעו ל-https://schema.org.@type– קבעו ל-Recipe.image– כתובת URL של המנה המוכנת (ספקו מספר יחסי גובה: 1:1, 4:3, 16:9).name– שם המתכון.
אלו התכונות שגוגל דורשת, אך אלו לא יובילו אתכם למקום אליו אתם רוצים להגיע. על ידי הצהרה של תכונות נוספות לגוגל, אתם מגדילים את הסיכוי שגוגל ״יקבלו״ את המתכון שלכם ויציגו אותו במעלה תוצאות החיפוש.
תכונות מתכונים מומלצות על ידי גוגל:
aggregateRating: הדירוג הממוצע של המתכון.author: מי הכין את המתכון? יש להשתמש ב Schema.org/Person.cookTime: הזמן שלוקח להכין את המתכון.datePublished: מתי המתכון פורסם לראשונה.description: תיאור המתכון.keywords: מונחים שמתארים את המתכון.nutrition.calories: מספר הקלוריות במתכון, השתמשו ב Schema.org/Energy.prepTime: כמה זמן לוקח לבצע הכנות עבור המתכון?recipeCategory: האם זו ארוחת בוקר, צהריים, ערב או משהו אחר?recipeCuisine: מאיזה מטבח מגיע המתכון? ים תיכוני, צרפתי, אסיאתי וכדומה.recipeIngredient: כל אחד מהמרכיבים הנדרשים להכנת המתכון (הכרחי עבור Google Home וקריאת המתכון בקול).recipeInstructions: סמנו את השלבים עםHowToStepאוHowToSection.recipeYield: מספר הסועדים אליו המתכון מכוון.review: ביקורות עבור המתכון.totalTime: זמן ההכנה של המתכון.video: וידאו המסביר כיצד להכין את המתכון אם קיים.
בכדי לראות כיצד זה מתורגם לקוד, בואו נראה דוגמה שנלקחה מגוגל, לכיצד נראה המתכון בפורמט JSON-LD. תגלו שהדברים די ברורים וניתנים להבנה יחסית בקלות:
<script type="application/ld+json">
{
"@context": "https://schema.org/",
"@type": "Recipe",
"name": "Party Coffee Cake",
"image": [
"https://domain.co.il/photos/1x1/photo.jpg",
"https://domain.co.il/photos/4x3/photo.jpg",
"https://domain.co.il/photos/16x9/photo.jpg"
],
"author": {
"@type": "Person",
"name": "Mary Stone"
},
"datePublished": "2018-03-10",
"description": "This coffee cake is awesome and perfect for parties.",
"prepTime": "PT20M",
"cookTime": "PT30M",
"totalTime": "PT50M",
"keywords": "cake for a party, coffee",
"recipeYield": "10 servings",
"recipeCategory": "Dessert",
"recipeCuisine": "American",
"nutrition": {
"@type": "NutritionInformation",
"calories": "270 calories"
},
"recipeIngredient": [
"2 cups of flour",
"3/4 cup white sugar",
"2 teaspoons baking powder",
"1/2 teaspoon salt",
"1/2 cup butter",
"2 eggs",
"3/4 cup milk"
],
"recipeInstructions": [
{
"@type": "HowToStep",
"text": "Preheat the oven to 350 degrees F. Grease and flour a 9x9 inch pan."
},
{
"@type": "HowToStep",
"text": "In a large bowl, combine flour, sugar, baking powder, and salt."
},
{
"@type": "HowToStep",
"text": "Mix in the butter, eggs, and milk."
},
{
"@type": "HowToStep",
"text": "Spread into the prepared pan."
},
{
"@type": "HowToStep",
"text": "Bake for 30 to 35 minutes, or until firm."
},
{
"@type": "HowToStep",
"text": "Allow to cool."
}
],
"review": {
"@type": "Review",
"reviewRating": {
"@type": "Rating",
"ratingValue": "4",
"bestRating": "5"
},
"author": {
"@type": "Person",
"name": "Julia Benson"
},
"datePublished": "2018-05-01",
"reviewBody": "This cake is delicious!",
"publisher": "The cake makery"
},
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "5",
"ratingCount": "18"
},
"video": [
{
"name": "How to make a Party Coffee Cake",
"description": "This is how you make a Party Coffee Cake.",
"thumbnailUrl": [
"https://domain.co.il/photos/1x1/photo.jpg",
"https://domain.co.il/photos/4x3/photo.jpg",
"https://domain.co.il/photos/16x9/photo.jpg"
],
"contentUrl": "http://www.domain.co.il/video123.mp4",
"embedUrl": "http://www.domain.co.il/videoplayer?video=123",
"uploadDate": "2018-02-05T08:00:00+08:00",
"duration": "PT1M33S",
"interactionCount": "2347",
"expires": "2019-02-05T08:00:00+08:00"
}
]
}
</script>הקוד נראה ארוך, אך הוא נבנה פעם אחת בלבד כתבנית. הערכים מאוכלסים דינמית משדות המטא של המתכון.
סכמת קרוסלה לעמודי ארכיון
לעמודי ארכיון המציגים מספר מתכונים, השתמשו בסכמת ItemList להצגת קרוסלה בתוצאות החיפוש:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "ItemList",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"url": "https://domain.co.il/peach-pie/"
},
{
"@type": "ListItem",
"position": 2,
"url": "https://domain.co.il/blueberry-pie/"
},
{
"@type": "ListItem",
"position": 3,
"url": "https://domain.co.il/cherry-pie/"
}
]
}
</script>כל כתובת URL ב-ListItem חייבת להפנות לעמוד מתכון יחיד שמכיל את סכמת Recipe המלאה.
מימוש סכמת מתכונים בוורדפרס
בוורדפרס, נתוני המתכון בדרך כלל נמצאים ב-Custom Post Type עם שדות מטא לכל מתכון. קוראים את הנתונים דינמית ומוציאים אותם כ-JSON-LD.
להדרכה מלאה להוספת סכמה בוורדפרס, ראו את המדריך שלנו על סכמה ונתונים מובנים בוורדפרס. הנה המבנה הבסיסי ל-CPT בשם recipe:
<?php
/******* BEGIN HERE ******/
function json_ld_recipe() {
// Schema.org JSON for Recipes Single Page
// Only on single recipe CPT
if ( is_singular('recipe') ) {
// Open script
$html = '<script type="application/ld+json">';
//****** HERE SHOULD EXISTS YOUR JSON-LD CONTENT ******//
// Close script
$html .= '</script>';
echo $html;
}
}
add_action('wp_head', 'json_ld_recipe');הקוד למעלה מטרגט עמודי מתכון יחידים. לעמוד הארכיון, השתמשו בתנאי is_post_type_archive() במקום:
<?php
/******* BEGIN HERE ******/
function json_ld_recipe() {
// Schema.org JSON for Recipes Archive Page
// Only on single recipe CPT
if ( is_post_type_archive('recipe') ) {
// Open script
$html = '<script type="application/ld+json">';
//****** HERE SHOULD EXISTS YOUR JSON-LD CONTENT ******//
// Close script
$html .= '</script>';
echo $html;
}
}
add_action('wp_head', 'json_ld_recipe');בדקו את התקינות באמצעות Rich Results Test או Schema Markup Validator. כלים אלו מראים האם גוגל יכולה לפרסר את ה-markup ולאילו סוגי תוצאות עשירות הוא זכאי להן.
אם יש שגיאות (נפוץ בניסיון הראשון), הכלים מספקים פירוט על מה צריך תיקון. תוצאה מוצלחת נראית כך:

שאלות נפוצות
סיכום
הוספת נתונים מובנים למתכונים היא משימת פיתוח חד-פעמית שמשתלמת באופן שוטף. ברגע שתבנית ה-JSON-LD מוכנה, כל מתכון חדש מייצר אוטומטית את הסכמה הנכונה משדות המטא.
עם מימוש נכון, המתכונים שלכם יכולים להופיע כתוצאות עשירות עם תמונות, דירוגים וזמני בישול – ולבלוט בתוצאות החיפוש ולמשוך יותר קליקים.


אחלה פוסט! תוכל להרחיב על ההכנסה הדינמית של השדות מ ACF? האם יש צורך לתת להם את השמות שהסכמה דורשת, לדוגמה: recipeIngredient?
הדינמיות מתבטאת רק עבור התוכן בכל אחת מהתכונות, כך ש recipeIngredient, recipeInstructions הם קבועים וכתובים ברמת הקוד, אך התוכן שלהם מגיע דינמית – בין אם מ ACF או בכל דרך אחרת. זאת מכיוון וזהו התוכן שבעל האתר מכניס בהתאם לכל מתכון.
לצורך הדוגמה, התכן היחיד שיהיה דינמי בהקשר של התכונה recipeIngredient הוא:
היי רועי,
אם אני משתמשת בפלאגין מתכונים שמחלק ממש כך את המתכון (זמן הכנה, מצרכים וכו'…), האם יש צורך להכניס קודי SCHEMA?
היי יעל,
מתנצל אך רק עכשיו ראיתי את השאלה שלך… כן, מומלץ להכניס קוד סכמה ללא קשר לתוסף שמאפשר לך להכניס את נתוני המתכון.
היי, אשמח לדעת אם אתה מכיר תוסף חינמי לאתר שמשלב בתוכו בלוג מתכונים 🙂
עדי
היי עדי,
איני מכיר תוסף שמשלב מתכונים (אך זה לא אומר שאין)..