WordPress Gutenberg - Белый экран на экране редактирования страницы с использованием настраиваемой категории блоков в шаблоне

Я пытаюсь настроить шаблон и использовать блок, содержащийся в настраиваемой категории. Блокирует слово a-ok при обычном использовании в редакторе Гутенберга.

Создаю категорию как таковую:

add_filter( 'block_categories', function( $categories, $post ) {
 return array_merge(
   $categories,
   array(
     array(
       'slug'  => 'mycustomcat',
       'title' => 'My Custom Category',
     ),
   )
 );
}, 10, 2 );

И сделаем блок (ACF):

    acf_register_block_type(array(
        'name'              => 'column-text',
        'title'             => __('Column Text'),
        'render_template'   => 'template-parts/blocks/column-text-block.php',
        'category'          => 'mycustomcat',
        'icon'              => 'menu-alt2',
        'keywords'          => array( 'column', 'text' ),
        'post_types'        => $supportedPostTypes,
        'mode'              => 'auto',
        'supports'          => array( 'align' => false ),
    ));

Все хорошо, пока мы не доберемся сюда:

function myplugin_register_template() {
   $post_type_object = get_post_type_object( 'page' );
   $post_type_object->template = array(
       array( 'mycustomcat/column-text' ),
   );
}
add_action( 'init', 'myplugin_register_template' );

Затем при создании новой страницы в админке WordPress я получаю пустой белый экран. Единственная найденная ошибка - в консоли:

Uncaught (in promise) TypeError: Cannot read property 'attributes' of undefined
    at Te (blocks.min.js?ver=6.7.2:2)
    at blocks.min.js?ver=6.7.2:2
    at c (lodash.min.js?ver=4.17.15:6)
    at ru (lodash.min.js?ver=4.17.15:67)
    at pn (blocks.min.js?ver=6.7.2:2)
    at editor.min.js?ver=9.7.5:11
    at u (editor.min.js?ver=9.7.5:11)
    at Generator._invoke (editor.min.js?ver=9.7.5:11)
    at Generator.forEach.e.<computed> [as next] (editor.min.js?ver=9.7.5:11)
    at redux-routine.min.js?ver=3.6.2:1

comment
Не совсем уверен, но я думаю, что массив ('mycustomcat / column-text') должен быть массивом ('column-text'), категория не является частью имени блока !?   -  person VA79    schedule 09.12.2019
comment
Изменить: вы должны добавить имя блока с помощью acf! массив ('acf / текст-столбец')   -  person VA79    schedule 09.12.2019
comment
Могу ошибиться, но я так не думаю, если вы поменяете его местами на основной блок, как в array( 'core/image' ), он отлично работает. Я ссылаюсь на developer.wordpress.org/block -editor / developers / block-api /   -  person trible    schedule 09.12.2019
comment
Извините, я опубликовал это одновременно с вашим ответом. Ваш второй ответ кажется правильным. Замена array( 'acf/column-text' ) делает свое дело.   -  person trible    schedule 09.12.2019


Ответы (1)


Для других с той же проблемой. Имена блоков Acf должны быть разделены именами acf / blockname.

В этом случае массив ('mycustomcat / column-text') должен быть массивом ('acf / column-text').

person VA79    schedule 09.12.2019