wp-graphql - невозможно запросить acf globalOptions

Я создаю новое поле в Custom Fields и задаю ему местоположение, например:

введите описание изображения здесь

После этого я активирую кнопку Показать в GraphQL и задаю имя acf:

введите описание изображения здесь

Теперь я пытаюсь сделать запрос acf globalOptions в wp-graphql, и это дает мне ошибку. Более того, я не могу найти globalOptions ни в предложениях, ни в схеме.

GraphiQL-IDE:  детская площадка

Документы:

schema

Как я мог решить эту проблему?

Заранее спасибо.


person Daniel Barbakadze    schedule 16.03.2021    source источник
comment
без локации?   -  person xadm    schedule 16.03.2021
comment
что значит «без местоположения»? Мне удалить или выбрать что-то другое?   -  person Daniel Barbakadze    schedule 16.03.2021
comment
вы использовали этот термин   -  person xadm    schedule 16.03.2021
comment
Я использовал его из-за картинки, я имею в виду Правила, которые определяют, где показывать выбранные acf   -  person Daniel Barbakadze    schedule 16.03.2021
comment
как это (местоположение) связано (может быть) связано с API-интерфейсом graphql?   -  person xadm    schedule 16.03.2021
comment
1. Создание acf дает мне возможность создавать новые поля в acf. 2. Установка правил дает мне возможность отображать эти поля в глобальных параметрах и загружать реальные данные. 3. Плагин WPGraphQL for Advanced Custom Fields дает мне возможность добавлять acfs в схему graphql. 4. Если я прав, после этого я смогу запрашивать эти поля из графической среды разработки. Где я ошибаюсь?   -  person Daniel Barbakadze    schedule 16.03.2021
comment
СТРАНИЦА параметров! = Глобальные параметры? в контексте API нет СТРАНИЦЫ   -  person xadm    schedule 16.03.2021
comment
Advanced Custom Fields PRO содержит глобальные параметры, которые автоматически генерируют это правило.   -  person Daniel Barbakadze    schedule 16.03.2021
comment
Итак, каково решение, как я могу достичь своей цели? Я просто хочу запросить глобальные параметры в graphql (p.s другие запросы acf работают)   -  person Daniel Barbakadze    schedule 16.03.2021
comment
а это не имеет отношения к /wp-admin/options-general.php? термины экрана и страницы в правиле ничего не значат? ... Я не думаю, что это связано с типом graphql ... вероятно (не читал документацию ACL по этому поводу), вам нужно использовать register_graphql_field, чтобы `` вручную '' расширить тип graphql globalOptions   -  person xadm    schedule 16.03.2021
comment
Я уже добавил в functions.php этот кусок кода: if (function_exists('acf_add_options_page')) { acf_add_options_page(array( 'page_title' => __('Global Options'), 'menu_title' => __('Global Options'), 'autoload' => true, )); } Вы имеете в виду это при регистрации «вручную»?   -  person Daniel Barbakadze    schedule 16.03.2021


Ответы (1)


Проблема была в файле functions.php:

это было как:

acf_add_options_page(array(
    'page_title' => __('Global Options'),
    'menu_title' => __('Global Options'),
    'autoload' => true,
));

Но должно быть так:

acf_add_options_page(array(
    'page_title' => __('Global Options'),
    'menu_title' => __('Global Options'),
    'autoload' => true,
    'show_in_graphql' => true
));

Мне не хватало пары 'show_in_graphql' => true ключ: значение.

person Daniel Barbakadze    schedule 16.03.2021
comment
хммм, я должен проверить эти параметры ... имя ключа взято из заголовков? связан ли язык / перевод? graphql_single_name или graphql_plural_name можно использовать? ... вы можете принять свой ответ - person xadm; 16.03.2021
comment
Я могу принять свой ответ через день. Имя ключа берется из имени поля GraphQL, и после этого вы можете сделать запрос типа globalOptions { acfGlobalOptions { //...} }. Что вы подразумеваете под именем во множественном или единственном числе? - person Daniel Barbakadze; 17.03.2021
comment
single / plural - это параметры CPT, используемые плагином wp-graphql, используемые для определения корневых ключей, таких как post и posts ... в этом случае его можно (если работает) использовать для переименования globalOptions имени ключа - определить его независимо, не связанное с меню / страница [переведено] название - person xadm; 17.03.2021
comment
Я думаю, что он единый, потому что иерархия похожа на globalOptions ›acfGlobalOptions› [массив полей, определенных в acfGlobalOption]. Также в Rules у меня есть только один (выбранный) вариант. - person Daniel Barbakadze; 17.03.2021
comment
возможно ... но ... это ('globalOptions' имя ключа) можно изменить с помощью graphql_single_name параметра? - person xadm; 17.03.2021
comment
Думаю, да, изменив значения ключей page_title и / или menu_title в functions.php - person Daniel Barbakadze; 17.03.2021
comment
... но ... с graphql_single_name вместо [возможно переведенных названий]? - person xadm; 17.03.2021
comment
Я пробовал оба (single и plural), но безрезультатно. page_title (см. Img) изменение значения вызывает изменение имени поля последнего выбора правила - person Daniel Barbakadze; 17.03.2021
comment
.....хорошо спасибо - person xadm; 17.03.2021
comment
Спасибо вам тоже;) Если это вам помогло, пожалуйста, поднимите вверх мой ответ, я буду очень признателен - person Daniel Barbakadze; 18.03.2021