问题标签 [wp-graphql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
171 浏览

reactjs - 生成站点地图时,WP GraphQL 查询仅返回前 100 个帖子

我正在创建一个动态站点地图,并试图将所有博客文章包含在站点地图中。WP 中 GraphiQL IDE 中的 WP GraphQL Query 显示了所有帖子,但是在执行代码时,它只显示前 100 个。我可能忽略了一些东西,但不知道为什么会这样。

GraphQL 查询:

站点地图.xml

0 投票
1 回答
103 浏览

reactjs - 如何在 WPGraphQL 上获取自定义字段数据

如何在 WPGraphQL 上获取自定义字段数据

我添加了一个自定义字段来上传类别的特色图片。现在我想在 WPGraphQL Query 上获得这个值。

如何在 WPGraphQL 上获取自定义字段数据

在此处输入图像描述

0 投票
0 回答
33 浏览

wordpress - 在 graphql 请求后找不到 Woo-GraphQL woocommerce-session 令牌?

我正在尝试创建一个以 Nuxt.js 作为前端的 woocommerce 商店。WordPress 应该是无头的并且仅用于管理目的。

根据 Woo-GraphQL 插件文档,当我通过 graphql 查询查询当前购物车数据时,我需要传递 woocommerce-session 令牌。此令牌应存在于本地存储中,并出现在每个 graphQL 查询之后。但我在那里找不到。我实际上做错了什么?

0 投票
0 回答
13 浏览

javascript - WPGraphQL 中的和/或运算符

可以使用它们吗?特别是在哪里......像:

如果没有,任何人都可以想到实现相同目标的解决方法吗?

我想我可以这样做:

然后对返回的数据进行一些操作,以过滤掉具有虚假类别对象的帖子?

我可以看到一个潜在的缺点是我们正在获取我们不需要的数据。

0 投票
0 回答
42 浏览

wordpress - 在 Graphql 中获取帖子的 categoryId

这是我从无头 wordpress 获取帖子的 Graphql 查询:

当我这样做时:console.log("DATAAAA", data.posts.edges);

我得到:

但是当尝试更进一步,里面node,像这样:console.log("DATAAAA", data.posts.edges.node);为了得到categoryId里面的内容categories: [Object],我得到了未定义。

如何获得categoryId基于此查询?

我想要做的是只获取给定类别的帖子getStaticProps,但我不知道如何categoryId动态获取。这就是我的getStaticProps函数的样子:

这是我的getStaticPaths功能:

这就是我从上下文中得到的console.log("THE CONTEXT", context);

任何帮助,将不胜感激。

0 投票
1 回答
39 浏览

graphql - WpGraphQL query returns null

I'm having this GraphQL query from headless Wordpress in Nexjs via WpGraphQl plugin:

And this is my getStaticProps function:

If i pass it like this in props:

i get an error saying:

But when i JSON.parse as the code above, i get null

Whats wrong with this query?

0 投票
1 回答
55 浏览

graphql - Next.js 应用程序中使用 Apollo 的授权查询

我正在开发一个用 Next.js 开发的 PWA,它必须从 Wordpress 站点读取数据,而且我对这些技术还很陌生。

我安装了这些 Wordpress 插件:

  • WPGraphQL
  • WPGraphQL CORS
  • WPGraphQL JWT 身份验证

具体来说,问题出现在最初的“登录表单”中。此表格只需要插入一个字母数字 ID(不是用户名/密码)。提交表单后,将使用查询的“where”参数中的 ID 向 Wordpress 端点运行 GraphQL 查询。就像是:

可公开访问的数据没有问题,一切正常。另一方面,如果我必须请求私人数据(例如用户电子邮件),我需要运行经过身份验证/授权的查询(授权:Bearer <token_here>)。

我知道在WPGraphQL JWT Authentication中有 2 个令牌:

  • authToken:持续5分钟,然后你需要使用refreshToken生成另一个
  • refreshToken:1 年持续时间

考虑到我不需要用户输入用户名/密码来执行允许生成令牌的变异登录,我可以使用什么方法?有没有类似没有过期的固定令牌(这可能是一个安全漏洞)?

谢谢

0 投票
2 回答
43 浏览

javascript - 查询在 nextjs 中的 [slug].js 文件中不起作用 - 使用 acf

我最近建立了一个 Next.js 项目以及一个无头 Wordpress CMS。我的帖子和页面使用自定义 Gutenberg 块来提取内容。我在 CMS 上设置了以下插件:

WP GraphQl、WP GraphQL Gutenberg、WPGraphQL for Advanced Custom Fields 和 ACF Pro。

在 ACF 中,我设置了一个“图像”块,它有一个文本字段和一个图像字段。

在我的代码中,我的lib/api.js文件中有一个查询,如下所示(14 是当前所选图像的 ID - 这将改变):

我的文件夹结构如下。

  • 成分
    • 通用图像.js
  • 页面
    • 博客
      • index.js
      • [蛞蝓].js
  • 上市

如果我在index.js文件中调用查询,它会返回有关媒体图像的信息:

但是,如果我尝试在我的[slug].js文件中调用它,我会返回一个空数组

[slug].js代码

我是 Next.js 和 React 的新手,所以也许我遗漏了一些明显的东西,但是任何帮助都将不胜感激,因为我无法在项目中取得进一步进展。

另外,如果您需要更多信息,请告诉我。

FetchAPI 函数是:

0 投票
0 回答
45 浏览

wordpress - 自定义 ACF Gutenberg 块未出现在 WPGraphQL 架构中

我将headless使用 WordPress 作为我的 CMS 进行设置。为此,我使用了以下 WordPress 插件:

  1. Advanced Custom Fields PRO- 使用专业版以获得blocks选项
  2. WP GraphiQL
  3. WP GraphQL
  4. WPGraphQL for Advanced Custom Fields- 使 ACF 字段出现在架构中

现在,我创建了自定义 ACF Gutenberg 块以实现两件事:

  1. 视觉上更干净的后端
  2. 更容易创建页面(不需要添加到ACF组,只需在后端拖放模块即可)

以下是我创建hero块 ( acf-blocks/blocks.php) 的方式:

这是我注册它的方式(acf-blocks/function.php):

ACF插件中,我创建了一个名为hero. hero具有单个text字段并且具有“如果块等于英雄则显示此字段组”的规则。

注意:我已经在字段中Show in GraphQL启用了。GraphQL Field Nameblock_hero

现在,我创建了一个名为的页面homepage,在该页面中,我添加了Hero块并给文本字段一个值。

然后,在 中GraphiQL IDE,当我查看可用选项时,pages我没有看到任何与hero. 即使我在架构中搜索“英雄”,也不会出现任何内容。

WPGraphQL不适用于自定义古腾堡块?

0 投票
1 回答
20 浏览

reactjs - Gatsby-Wordpress GraphQL 从 Wordpress 添加时不会更新数据

我有一个使用 Gatsby 开发的网站。我使用 WordPress 为网站发布博客,并且正在使用 GraphQL 获取博客。一切正常,我在 S3 上部署了网站。生产部署后,当我在 WordPress 中发布新博客时,它没有在使用 GraphQL 的网站中列出。我不得不重新部署代码以使其正常工作。

有没有其他方法可以在生产中加载 WordPress GraphQL 数据而无需重建和重新部署?