Получить пользовательское поле ACF в пользовательском меню - PullRequest
0 голосов
/ 14 ноября 2018

У меня есть меню в Wordpress с полем ACF под названием "svg"

Чтобы создать мое меню, я делаю это:

function b_get_menu_id( $location )
{
  $a = get_nav_menu_locations();
  if (isset($a[$location])) return $a[$location];
  return false;
}

function b_get_nav_items($location) {
  $id = b_get_menu_id($location);
  $nav = [];
  $children = [];
  if(!$id) {
    return $nav;
  }
  foreach(wp_get_nav_menu_items($id) as $object) {
    $item = new stdClass();
    $item->url = $object->url;
    $item->label = $object->title;
    $item->id = $object->object_id;
    $item->icon = $object->classes[0];
    $item->parent = intval($object->menu_item_parent);
    $item->children = [];
    if($item->parent){
      $children[] = $item;
    } else {
      $nav[$object->ID] = $item;
    }
  }
  foreach($children as $item) {
    $nav[$item->parent]->children[] = $item;
  }
  return $nav;
}

Я отображаю свое меню так:

@foreach(b_get_nav_items('primary_navigation') as $item)
... my html here...
@endforeach

В моем foreach я пытаюсь вызвать поля ACF из моего меню следующим образом:

<?php get_field('svg', $item->id)

Но это не работает (ноль). Я потерялся. Как я могу получить свое поле ACF?

большое спасибо

...