wordpress 如何在posts wpgraphql查询中获取postmeta字段值?

lokaqttq  于 2023-04-05  发布在  WordPress
关注(0)|答案(1)|浏览(227)

我使用wpgraphql与WordPress数据库进行通信。我有一个帖子表,在其中我可以看到帖子的所有属性都已填充。还有一个自定义字段字段,我可以看到postMeta表中自定义字段的填充值,但无法在graphql查询中获得帖子子字段中的meta字段属性。

qxgroojn

qxgroojn1#

你的 meta仍然需要注册到GraphQL schema,然后才能从请求中检索它。这里有一个例子。只需将PostTypeNamefield_nameFieldType替换为你需要的,将其放入主题的functions.php或插件中,在plugins_loaded钩子之后和graphql_register_types钩子之前运行,它应该可以工作。

add_action( 'graphql_register_types', function() {
    register_graphql_field( 'PostTypeName', 'field_name', [
        'type' => 'FieldType',
        'resolve' => function( $post ) {
            $meta = get_post_meta( $post->databaseId, 'meta_key'  );
            return ! empty( $meta ) ? $meta : null;
        }
    ]);
});

WPGraphQL文档提供了有关此here的更多信息

相关问题