meta_robots: String
Pre-v2.2 backward-compatibility field. Preserved indefinitely so v1 storefront integrations don't break, but new code should use seo.robots instead.
Schema
interface CategoryInterface {
meta_robots: String @doc(description: "The meta robots for category page.")
}
type CmsPage implements RoutableInterface {
meta_robots: String @doc(description: "The meta robots for CMS page.")
}
type CmsPageItem implements RoutableInterface {
meta_robots: String @doc(description: "The meta robots for CMS page.")
}
Note: this field is not on ProductInterface — that was added later in seo: SeoMetadata. Products always use the new field.
Resolution
Same precedence as seo.robots:
- Entity-level
meta_robotsif non-empty AND not the literalsystem - Store config
design/search_engine_robots/default_robots null
Why keep it
- Storefronts built against v1.x of the suite still query it
- Public Marketplace listings of partner storefronts may reference it
- Removing it would be a breaking GraphQL schema change requiring a major version bump
Migration
If you're writing new storefront code, replace:
{
categoryList {
meta_robots
}
}
…with:
{
categoryList {
seo { robots title description canonical }
}
}
Same data, plus everything else you'll inevitably need.
Resolver classes
| Field | Resolver |
|---|---|
CategoryInterface.meta_robots | Byte8\SeoSuite\Model\Resolver\Category\MetaRobots |
CmsPage.meta_robots | Byte8\SeoSuite\Model\Resolver\Cms\CmsPageMetaRobots |
CmsPageItem.meta_robots | Byte8\SeoSuite\Model\Resolver\Cms\CmsPageMetaRobots (same class, both CMS types share it) |
These remain at their v1 namespaces and signatures.