با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
فید رسانه یک شی JSON است که شامل مجموعهای از موجودیتها است که محتوای رسانه را در کاتالوگ شما نشان میدهد، مانند سریالهای تلویزیونی، فیلمها، آهنگها، آلبومها و موارد دیگر. اولین مرحله در فرآیند ورود، شروع به توسعه فیدهای خود است. پس از آماده شدن فایلها، باید فید را با استفاده از یکی از روشهای میزبانی پشتیبانی شده میزبانی کنید تا Google به طور منظم واکشی کند.
الزامات فرمت فایل خوراک
شرایط زیر برای فایل(های) فید است:
فایل فید باید دارای پسوند نام فایل .json باشد.
فایل فید خود را رمزگذاری نکنید.
فایل فید خود را در UTF-8 رمزگذاری کنید (تنظیمات ویرایشگر فایل خود را بررسی کنید).
اگر فایل فید شما بزرگتر از 1 گیگابایت است (فشرده نشده) فایل را به چند فایل تقسیم کنید.
توصیه می کنیم برای هر نوع موجودیت یک فایل ایجاد کنید (به عنوان مثال tvseries.json ، tvseasons.json ، tvepisodes.json ، movies.json ، و غیره).
اگر هر یک از این فایلها بیش از 1 گیگابایت باشد، موجودیتهای آن را به چندین فایل تقسیم کنید (به عنوان مثال tvepisodes_01.json ، tvepisodes_02.json ، و غیره).
تا زمانی که حجم فایل کمتر از 1 گیگابایت باشد، محدودیتی در مورد تعداد موجودیت هایی که می توانید در یک فایل قرار دهید وجود ندارد.
مطمئن شوید که فایل طبق مشخصات JSONبدون BOM کدگذاری شده است. برای بررسی سیستم عامل لینوکس، hexdump file.json | head -n 1 نباید با BBEF در آدرس 0x00 شروع شود.
انواع خوراک
خوراک تولید
این مجموعه فایل(های) فید json را نشان می دهد که با هم کل کاتالوگ شما را که می خواهید در Google راه اندازی کنید را نشان می دهد. در بخش زیر می توانید نحوه ایجاد فید را بیاموزید.
اگر برای اولین بار با Google ادغام میشوید، این تنها خوراکی است که به آن نیاز دارید.
هنگامی که این فید به Google ارسال شد، به طور گسترده تجزیه و تحلیل میشود و چند بار تکرار میشود تا قبل از دریافت و راهاندازی نهایی، به نواری با کیفیت بالاتر بر اساس میزان اطلاعات گرفتهشده و صحت آنها دست یابد.
خوراک صحنه سازی
موارد استفاده خاصی وجود دارد که نیاز به گسترش خوراک تولید دارد. چند نمونه از این سناریوها عبارتند از:
گسترش فید برای شامل انواع موجودیتهای جدید، که قبلاً راهاندازی نشدهاند.
گسترش فید برای شامل تعداد زیادی نهاد/فراداده جدید برای راهاندازی در مناطق جدید.
گسترش خوراک به انواع پلت فرم جدید. به عنوان مثال، هنگامی که فید تولید فقط در جستجوی Google راه اندازی می شود و اکنون می خواهید راه اندازی را به Google TV گسترش دهید.
در چنین مواردی، خوراک مرحلهبندی مورد نیاز است. این فید یک کپی از فید تولید است با این تفاوت که دارای ابرداده های اضافی است، به عنوان مثال، پیوندهای عمیق برای یک پلت فرم جدید، ابرداده برای یک منطقه جدید و غیره.
مشابه خوراک تولید، این به طور گسترده تجزیه و تحلیل می شود و چند بار تکرار می شود تا به نوار با کیفیت بالاتر بر اساس مقدار اطلاعات گرفته شده و صحت آن دست یابد. هنگامی که نوار کیفیت به دست آمد، این خوراک جایگزین خوراک تولید فعلی می شود تا به خوراک تولید جدید تبدیل شود.
این فید به ما امکان میدهد راهاندازی اولیه را از راهاندازیهای اضافی جدا کنیم، همه آزمایشهای لازم را انجام دهیم، بدون اینکه روی خوراک تولید تأثیر بگذاریم. این تضمین می کند که هیچ اختلالی در تجربه کاربر نهایی ایجاد نشود.
با نماینده Google خود همکاری کنید تا هر گونه سوالی که ممکن است در مورد موارد بالا داشته باشید را روشن کنید.
قبل از ساختن فید حاوی تمام محتوای کاتالوگ شما، توصیه می کنیم یک فید نمونه فقط با مجموعه کوچکی از موجودیت ها ایجاد کنید. در حین کار بر روی فید خود، احتمالاً با مشکلاتی مواجه خواهید شد. با محدود کردن اندازه مجموعه موجودیتها، میتوانید این خطاها و هشدارها را راحتتر رفع کنید.
ما ابزارهایی را ارائه می دهیم که اطمینان حاصل می کنند که فید شما با مشخصات مطابقت دارد. توصیه می کنیم از این ابزارها برای رفع تمام خطاها و هشدارهای موجود در فید نمونه خود استفاده کنید.
پس از اینکه تأیید کردید که ساختار خوبی برای مجموعه کوچکی از موجودیت های خود دارید، یک فید برای کل کاتالوگ خود ایجاد کنید.
یک فید نمونه ایجاد کنید
یک نهاد نماینده از کاتالوگ خود انتخاب کنید. موجودیتی با ساختار نسبتاً پیچیده انتخاب کنید، اما همچنان برای یک موجودیت در کاتالوگ معمولی است.
از ابزار Data Feed Validation برای بررسی خطاهای نحوی و عدم وجود ویژگی های مورد نیاز استفاده کنید. (برای جزئیات بیشتر به بخش بعدی مراجعه کنید.)
مثالی از فید با یک موجودیت Movie
{"@context":"http://schema.org","@type":"DataFeed","dateModified":"2018-07-20T00:44:51Z","dataFeedElement":[{"@context":["http://schema.org",{"@language":"en"}],"@type":"Movie","@id":"http://www.example.com/my_favorite_movie","url":"http://www.example.com/my_favorite_movie","name":"My Favorite Movie","potentialAction":{"@type":"WatchAction","target":{"@type":"EntryPoint","urlTemplate":"http://www.example.com/my_favorite_movie?autoplay=true","inLanguage":"en","actionPlatform":["http://schema.org/DesktopWebPlatform","http://schema.org/MobileWebPlatform","http://schema.org/AndroidPlatform","http://schema.org/AndroidTVPlatform","http://schema.org/IOSPlatform","http://schema.googleapis.com/GoogleVideoCast"]},"actionAccessibilityRequirement":{"@type":"ActionAccessSpecification","category":"subscription","requiresSubscription":{"@type":"MediaSubscription","name":"Example Package","commonTier":true,"@id":"[partner determined string]"},"availabilityStarts":"2018-07-21T10:35:29Z","availabilityEnds":"2019-10-21T10:35:29Z","eligibleRegion":[{"@type":"Country","name":"US"},{"@type":"Country","name":"CA"}]}},"sameAs":"https://en.wikipedia.org/wiki/my_favorite_movie","releasedEvent":{"@type":"PublicationEvent","startDate":"2008-01-20","location":{"@type":"Country","name":"US"}},"description":"This is my favorite movie.","actor":[{"@type":"Person","name":"John Doe","sameAs":"https://en.wikipedia.org/wiki/John_Doe"},{"@type":"Person","name":"Jane Doe","sameAs":"https://en.wikipedia.org/wiki/Jane_Doe"}],"identifier":[{"@type":"PropertyValue","propertyID":"IMDB_ID","value":"tt0123456"}]}]}
فید نمونه را اعتبار سنجی کنید
ابزارهای زیر برای کمک به اعتبارسنجی یک فید نمونه با مشخصات داده های ساخت یافته Google برای فیدهای رسانه در دسترس هستند.
ابزار اعتبار سنجی خوراک داده ها
ابزار Data Feed Validation می تواند یک موجودیت واحد را در یک زمان تایید کند. از این ابزار برای تأیید اعتبار یک موجودیت نمونه از کاتالوگ خود برای خطاهای ساختاری و خطاهای رایج محتوایی استفاده کنید. شما می توانید جزئیات بیشتر در مورد ابزار را در اینجا بیابید.
ابزار اعتبارسنجی طرحواره JSON
ابزار JSON Schema Validation می تواند تمام فایل های موجود در فید را تایید کند. از این ابزار در طول توسعه خوراک استفاده کنید تا از اشتباهات ساختاری رایج جلوگیری کنید. شما می توانید جزئیات بیشتر در مورد ابزار را در اینجا بیابید.
یک خوراک تولید ایجاد کنید
هنگامی که همه خطاها و هشدارهای موجود در فید نمونه برطرف شد، فید را گسترش دهید تا همه موجودیتهای موجود در کاتالوگ شما را شامل شود.
از ابزار Data Feed Validation مکرراً برای تأیید اعتبار تعداد کمی از موجودیت ها در فید خود در یک زمان استفاده کنید (چسباندن تعداد زیادی از موجودیت ها در ابزار ممکن است مرورگر وب را مسدود کند). با مقایسه تعداد موجودات موجود در فید خود با تعداد موارد موجود در کاتالوگ، تأیید کنید که فید شما شامل همه موجودات موجود در کاتالوگ شما می شود.
[null,null,[],[[["\u003cp\u003eThe Media feed is a JSON object that contains media content, and onboarding begins with developing and hosting these feeds.\u003c/p\u003e\n"],["\u003cp\u003eFeed files must be in \u003ccode\u003e.json\u003c/code\u003e format, UTF-8 encoded without BOM, unencrypted, and potentially split into multiple files if exceeding 1GB.\u003c/p\u003e\n"],["\u003cp\u003eTwo types of feeds exist: Production feed for initial launch of your entire catalog and Staging feed for subsequent expansions or new platform integrations.\u003c/p\u003e\n"],["\u003cp\u003eBefore creating a full production feed, it is recommended to start with a sample feed, validate it using provided tools, and then expand it to include your entire catalog.\u003c/p\u003e\n"]]],["The initial step in onboarding is developing media feeds, which are JSON files representing your catalog's content. Once developed, these files must be hosted for regular Google fetching. Feed files must be in `.json` format, UTF-8 encoded, unencrypted, and under 1GB (uncompressed); splitting larger files is recommended. Two types exist: production (for initial launch) and staging (for expansion), both are validated and iterated. You should start with a small sample feed for validation, then use tools to validate it, and expand to a production feed.\n"],null,["# Create a feed\n\nThe Media feed is a JSON object that contains a collection of entities that represent the\nmedia content in your catalog, such as TV Series, Movies, Songs, Albums, and more. The first step in\nthe onboarding process is to start developing your feeds. Once the files are ready, you need to [host](./host-the-feed)\nthe feed using one of the supported hosting methods for Google to fetch regularly.\n| **Note:** If you haven't gathered all the required information for your content, see the [Collect Information](../collect-information/) section.\n\nFeed file format requirements\n-----------------------------\n\nThe following are the requirements for the feed file(s):\n\n- Feed file must have the filename extension `.json`.\n- Don't encrypt your feed file.\n- Encode your feed file in UTF-8 (check your file editor setting).\n\n- Split the file into multiple files if your feed file is larger than 1 GB (uncompressed).\n\n- We recommend you create a file per entity type (for example, `tvseries.json`, `tvseasons.json`, `tvepisodes.json`, `movies.json`, etc).\n\n - If any of these files exceeds 1GB, split its entities into multiple files (for example, `tvepisodes_01.json`, `tvepisodes_02.json`, etc).\n - As long as the file size is less than 1 GB, there is no limitation on how many entities you can include in a single file.\n- Ensure that the file is encoded **without** BOM, as per [JSON specification](https://tools.ietf.org/html/rfc7159#section-8.1). To check on a linux OS, `hexdump file.json | head -n 1` must not start with `BBEF` at address 0x00.\n\nTypes of feeds\n--------------\n\n### Production feed\n\n- This represents the set of json feed file(s) that together represent your entire catalog you want to launch on Google. You can learn how to create a feed in the section below.\n- This is the only feed you need if you are integrating with Google for the first time.\n- Once this feed is submitted to Google, it will be extensively analyzed and iterated on a few times to achieve a higher quality bar w.r.t the amount of information being captured and its correctness before it is finally ingested and launched.\n\n### Staging feed\n\n- There are certain use cases that require the expansion of the production feed. A few examples of such scenarios are:\n - Expansion of the feed to include new entity types, not previously launched.\n - Expansion of the feed to include a huge number of new entities/metadata to launch in new locales.\n - Expansion of the feed to new platform types. For example, when the production feed is only launched on Google Search and now you want to expand the launch to Google TV.\n- In such cases, a staging feed is required. This feed is a copy of the production feed except that it has additional metadata, for example, deep links for a new platform, metadata for a new locale and so on.\n- Similar to the production feed, this will be extensively analyzed and iterated on a few times to achieve a higher quality bar w.r.t the amount of information being captured and its correctness. Once the quality bar is achieved, this feed replaces the current production feed to become the new production feed.\n- This feed allows us to separate the initial launch from the additional launches, perform all required testing, without affecting the production feed. This ensures no disruptions to the end user experience.\n\nWork with your Google representative to clarify any questions you may have on the above.\n\nCreate a feed file\n------------------\n\nFollow these best practices when creating the feed:\n\n1. [Create a sample feed using a small set of entities](#create_a_sample_feed)\n\n Before building a feed that contains all the content in your catalog, we recommend you create a\n sample feed with only a small set of entities. While working on your feed, you're likely to run into\n issues. By limiting your the size of the set of entities, you will be able to debug these errors and\n warnings more easily.\n2. [Validate the sample feed](#validate_the_sample_feed)\n\n We provide tools that ensure that your feed is compliant with the specifications. We recommend\n you use these tools to resolve all the errors and warnings found in your sample feed.\n3. [Create a production feed](#create_a_production_feed)\n\n After you've verified that you have a good structure for the small set of your entities, develop a feed for your entire catalog.\n\n### Create a sample feed\n\n1. Select one representative entity from your catalog. Choose an entity with a reasonably complex structure, but is still typical for an entity in the catalog.\n 2. Use the [Data Feed Validation tool](https://actions.google.com/tools/feed-validator/u/0/) to check for syntax errors and missing required properties. (See the next section for details.) Example of a feed with a single `Movie` entity \n\n ```carbon\n {\n \"@context\": \"http://schema.org\",\n \"@type\": \"DataFeed\",\n \"dateModified\": \"2018-07-20T00:44:51Z\",\n \"dataFeedElement\": [\n {\n \"@context\": [\"http://schema.org\", {\"@language\": \"en\"}],\n \"@type\": \"Movie\",\n \"@id\": \"http://www.example.com/my_favorite_movie\",\n \"url\": \"http://www.example.com/my_favorite_movie\",\n \"name\": \"My Favorite Movie\",\n \"potentialAction\": {\n \"@type\": \"WatchAction\",\n \"target\": {\n \"@type\": \"EntryPoint\",\n \"urlTemplate\": \"http://www.example.com/my_favorite_movie?autoplay=true\",\n \"inLanguage\": \"en\",\n \"actionPlatform\": [\n \"http://schema.org/DesktopWebPlatform\",\n \"http://schema.org/MobileWebPlatform\",\n \"http://schema.org/AndroidPlatform\",\n \"http://schema.org/AndroidTVPlatform\",\n \"http://schema.org/IOSPlatform\",\n \"http://schema.googleapis.com/GoogleVideoCast\"\n ]\n },\n \"actionAccessibilityRequirement\": {\n \"@type\": \"ActionAccessSpecification\",\n \"category\": \"subscription\",\n \"requiresSubscription\": {\n \"@type\": \"MediaSubscription\",\n \"name\": \"Example Package\",\n \"commonTier\": true,\n \"@id\": \"[partner determined string]\"\n },\n \"availabilityStarts\": \"2018-07-21T10:35:29Z\",\n \"availabilityEnds\": \"2019-10-21T10:35:29Z\",\n \"eligibleRegion\": [\n {\n \"@type\": \"Country\",\n \"name\": \"US\"\n },\n {\n \"@type\": \"Country\",\n \"name\": \"CA\"\n }\n ]\n }\n },\n \"sameAs\": \"https://en.wikipedia.org/wiki/my_favorite_movie\",\n \"releasedEvent\": {\n \"@type\": \"PublicationEvent\",\n \"startDate\": \"2008-01-20\",\n \"location\": {\n \"@type\": \"Country\",\n \"name\": \"US\"\n }\n },\n \"description\": \"This is my favorite movie.\",\n \"actor\": [\n {\n \"@type\": \"Person\",\n \"name\": \"John Doe\",\n \"sameAs\": \"https://en.wikipedia.org/wiki/John_Doe\"\n },\n {\n \"@type\": \"Person\",\n \"name\": \"Jane Doe\",\n \"sameAs\": \"https://en.wikipedia.org/wiki/Jane_Doe\"\n }\n ],\n \"identifier\": [\n {\n \"@type\": \"PropertyValue\",\n \"propertyID\": \"IMDB_ID\",\n \"value\": \"tt0123456\"\n }\n ]\n }\n ]\n }\n ```\n\n### Validate the sample feed\n\nThe following tools are available to help you validate a sample feed with Google's structured data\nspecifications for media feeds.\n\n- **Data Feed Validation tool**\n\n The Data Feed Validation tool can validate a single entity at a time. Use this tool to validate a sample\n entity from your catalog for structural errors and common content errors. You can find more\n details about the tool [here](../tools/troubleshoot-using-the-data-feed-validation-tool).\n- **JSON Schema Validation tool**\n\n The JSON Schema Validation tool can validate all files in a feed. Use this tool during the\n development of the feed to avoid common structural errors. You can find more details about the\n tool [here](../tools/jsonschemas).\n\n### Create a production feed\n\n1. Once all the errors and warnings in the sample feed are resolved, expand the feed to include all the entities in your catalog.\n2. Use the [Data Feed Validation tool](https://actions.google.com/tools/feed-validator/u/0/) frequently to validate a small number of entities in your feed at a time (Pasting a large number of entities on the tool may freeze the web browser). Confirm that your feed includes all the entities in your catalog by comparing the number of entities in your feed with the number of items in your catalog."]]