Получить идентификатор главной страницы для каждого под-сайта имеет смешанные результаты - PullRequest
0 голосов
/ 29 сентября 2018

Я пытаюсь получить список всех идентификаторов домашней страницы для всех сайтов в многосайтовой установке WordPress.Я использую этот код ниже, чтобы сделать это ..

$subsites = get_sites();

foreach ( $subsites as $site ) {
    switch_to_blog( $site->blog_id );

    $site_data = [
        'id' => get_current_blog_id(),
        'home_id' => get_option( 'page_on_front' )
    ];

    restore_current_blog();
    $sites[] = $site_data;
}

Но я получаю некоторые странные результаты, используя get_option( 'page_on_front' ).Некоторые идентификаторы возвращаются как строки, другие - как целые числа, а некоторые из них - как ложные.Каждому сайту назначена статическая титульная страница, а в параметре «Страница на лицевой стороне» в отдельных настройках сайта указаны значения.Любые идеи о том, почему я получаю смешанные результаты при попытке получить идентификатор домашней страницы?Или есть другой способ найти идентификатор, отличный от опции get_option( 'page_on_front' )?

$ сайты dump

array(11) {
  [0]=>
  array(2) {
    ["id"]=>
    int(1)
    ["home_id"]=>
    string(4) "1862"
  }
  [1]=>
  array(2) {
    ["id"]=>
    int(2)
    ["home_id"]=>
    string(4) "2542"
  }
  [2]=>
  array(2) {
    ["id"]=>
    int(3)
    ["home_id"]=>
    string(3) "905"
  }
  [3]=>
  array(2) {
    ["id"]=>
    int(4)
    ["home_id"]=>
    int(1384)
  }
  [4]=>
  array(2) {
    ["id"]=>
    int(5)
    ["home_id"]=>
    string(2) "13"
  }
  [5]=>
  array(2) {
    ["id"]=>
    int(6)
    ["home_id"]=>
    string(4) "2885"
  }
  [6]=>
  array(2) {
    ["id"]=>
    int(7)
    ["home_id"]=>
    bool(false)
  }
  [7]=>
  array(2) {
    ["id"]=>
    int(8)
    ["home_id"]=>
    bool(false)
  }
  [8]=>
  array(2) {
    ["id"]=>
    int(9)
    ["home_id"]=>
    int(7)
  }
  [9]=>
  array(2) {
    ["id"]=>
    int(10)
    ["home_id"]=>
    string(1) "2"
  }
  [10]=>
  array(2) {
    ["id"]=>
    int(11)
    ["home_id"]=>
    string(1) "5"
  }
}
...