问题描述
我将 wordpress 与 WPGraphQL 一起使用。在主题定制器中,我通过 wordpress 的 $wp_customize->add_control
函数添加了一些输入。
如何将这些添加到 WPGraphQL Schema 以便我可以查询它们?
解决方法
WPGraphQL 具有函数 register_graphql_field
,您可以将其与此结构一起使用。
在解析函数中,只需返回带有主题模组 ID 的 get_theme_mod
。像这样:
add_action( 'graphql_register_types',function() {
$field_config = [
'type' => 'String','resolve' => function( $source,$args,$context,$info ) {
return get_theme_mod('my_theme_mod');
},];
register_graphql_field( 'RootQuery','my_theme_mod',$field_config);
});
add_action
仅在使用 graphql 时执行此操作。
他们的文档网页中的更多信息:https://www.wpgraphql.com/2020/03/11/registering-graphql-fields-with-arguments/
感谢@xadm 的提示。