@freeman0204

Почему the_field acf работает именно так?

В документации указано что нужно вставлять таксономию и айди через нижнее подчеркивание.

$post_id = false;           // current post
$post_id = 123;             // post ID = 123
$post_id = "user_123";      // user ID = 123
$post_id = "term_123";      // term ID = 123
$post_id = "category_123";  // same as above
$post_id = "option";        // options page
$post_id = "options";       // same as above

the_field( 'my_field', $post_id );


get_queried_object возвращает и айди а таксономию, и много чего еще и это работает качестве параметра айди, почему?

WP_Term Object
(
    [term_id] => 24
    [name] => Test
    [slug] => test
    [term_group] => 0
    [term_taxonomy_id] => 24
    [taxonomy] => product_cat
    [description] => 
    [parent] => 23
    [count] => 33
    [filter] => raw
)
  • Вопрос задан
  • 102 просмотра
Пригласить эксперта
Ответы на вопрос 1
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
Потому что плагин (ACF) пытается максимально угадать, что же вы имели в виду. Посмотрите код функции acf_get_valid_post_id( $post_id ) в файле acf/includes/api/api-helpers.php. Именно эта функция вызывается в начале get_field() (которая, в свою очередь, вызывается в the_field()).
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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