【发布时间】:2019-08-08 15:37:21
【问题描述】:
我在 Wordpress 中有一个灵活的内容字段类型(使用 ACF),我在尝试构建 gatsby 时遇到错误。
我使用以下插件:
- ACF 到 REST api
- ACF 到 REST api 递归
- 高级自定义字段专业版
对于 gatsby,我使用 gatsby-source-wordpress。
{
allWordpressPage {
edges {
node {
title
acf {
page_builder_page {
... on WordPressAcf_hero {
title
subtitle
}
... on WordpressAcf_text {
text
}
}
}
}
}
}
}
只有当某些页面的 page 类型上的块 page_builder 使用 hero 并且文本块。如果我是第一次设置此页面,或者创建具有相同 page_builder 字段的新自定义帖子类型,我需要为每个灵活的内容块类型填充至少一个字段,然后 graphql-query 才能工作。
否则,对于每个未使用的块,我都会收到与此类似的错误(例如,如果 hero-type 有内容但没有 text-type):
GraphQL request: Fragment "TextBlockFragment" cannot be spread here as objects of
type "WordPressAcf_hero" can never be of type "WordPressAcf_text".
有解决办法吗?我想它不应该是这样的。就像现在一样,我需要在第一次设置页面时用虚拟内容填充整个页面,然后才能使用 Gatsby 实际构建它。
【问题讨论】: