@ligisayan

Как убрать предупреждение в wordpress acf_get_value was called incorrectly?

Всем привет!

Есть сайт на wordpress с подключенным плагином произвольные полей Advanced custom fields PRO Настроил так, чтобы можно было заводить и менять переменную acf в админке и затем её получать в js. Всё отрабатывает ок, но получаю предупреждение:

PHP Notice: acf_get_value was called incorrectly. Advanced Custom Fields PRO - We've detected one or more calls to retrieve ACF field values before ACF has been initialized. This is not supported and can result in malformed or missing data. Learn how to fix this. Please see Debugging in WordPress for more information. (This message was added in version 5.11.1.)


Что делаю не так и как это можно исправить так, чтобы предупреждение ушло без нарушения функционала?

functions.php
if( function_exists('acf_add_local_field') ):

add_action( 'acf/init', function() {
    acf_add_local_field(array(
        'key' => 'field_534g44fsdf22q',
        'label' => 'Ссылка перехода',
        'name' => 'main_registration',
        'type' => 'text',
        'parent' => 'group_534g44b4173es'
    ));
});
endif;

add_action('wp_enqueue_scripts', 'my_scripts_method');

function my_scripts_method()
{
  wp_enqueue_script('custom', get_stylesheet_directory_uri() . '/assets/scripts/main.min.js', array(), CSS_VERSION, true);
  wp_add_inline_script('custom',
      'var lhref = ' . json_encode(array(
          "registration" => esc_attr(get_field("field_534g44fsdf22q", get_option("page_on_front")))
      )), 'before');
}
  • Вопрос задан
  • 49 просмотров
Решения вопроса 1
init0
@init0
Старый моряк
Замените функцию
get_field("field_534g44fsdf22q", get_option("page_on_front"))

на функцию WP и замените ключ поля field_534g44fsdf22q на имя (посмотреть можно в меню ACF). В итоге должно получится так:

get_post_meta( (int) get_option( 'page_on_front' ), 'имя_поля', true );
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы