Блок Гутенберга получить последние страницы - PullRequest
0 голосов
/ 16 октября 2018

На основе примера динамического блока для получения блока последних сообщений я пытаюсь создать блок для извлечения страниц.

В компоненте php-сервера я изменил:

$recent_posts = wp_get_recent_posts( array(
    'numberposts' => 1,
    'post_status' => 'publish',
) );

to:

 $recent_posts = get_pages( array(
    'post_type' => 'page',
    'post_status' => 'publish'
) );

и получение журнала ошибок php:

Неустранимая ошибка: Uncaught Ошибка: невозможно использовать объект типа WP_Post в качестве массива в mysite....: 24

  1. render_block_latest_pages (Array, '') /mysite/wp-content/plugins/gutenberg/lib/class-wp-block-type.php:108
  2. WP_Block_Type-> render (Array, '') /mysite/wp-content/plugins/gutenberg/lib/blocks.php:238
  3. do_blocks ('') / mysite / wp-includes / class-wp-hook.php: 286
  4. WP_Hook-> apply_filters ('
  5. apply_filters (' the_content ','
  6. the_content () / mysite / themes / bt-sass-blank-theme / template-parts / page / content-default.php: 7

Я также пробовал обычный запрос, и он не работает. Гутенберг работает с Wordpress REST API, не уверен, что может бытьвыпуск там.

1 Ответ

0 голосов
/ 15 января 2019

wp_get_recent_posts возвращает массив почтовых массивов по умолчанию, тогда как get_pages возвращает и массив объектов страницы.Если вы используете дословно связанный пример, вам необходимо заменить $post_id = $post['ID'] на $post_id = $post->ID.

...