Javascript 如何在Wordpress中列出、重新排列或操作Gutenberg块类别

Javascript 如何在Wordpress中列出、重新排列或操作Gutenberg块类别,javascript,php,wordpress,wordpress-gutenberg,Javascript,Php,Wordpress,Wordpress Gutenberg,任何人都知道如何在Wordpress的Gutenberg编辑器中重新排列、操作块类别,我甚至无法返回它们的列表,就像你可以返回块本身一样,我所能找到的只是“getCategories”,它似乎没有任何作用。。。新文档一点也不好。这让我注册了一个自定义Guttenberg块,并将其作为WP管理编辑器的第一个选项: function custom_block_category( $categories ) { $custom_block = array( 'slug' =&

任何人都知道如何在Wordpress的Gutenberg编辑器中重新排列、操作块类别,我甚至无法返回它们的列表,就像你可以返回块本身一样,我所能找到的只是“getCategories”,它似乎没有任何作用。。。新文档一点也不好。

这让我注册了一个自定义Guttenberg块,并将其作为WP管理编辑器的第一个选项:

function custom_block_category( $categories ) {
    $custom_block = array(
        'slug'  => 'my-blocks',
        'title' => __( 'My Test Blocks', 'my-blocks' ),
    );

    $categories_sorted = array();
    $categories_sorted[0] = $custom_block;

    foreach ($categories as $category) {
        $categories_sorted[] = $category;
    }

    return $categories_sorted;
}
add_filter( 'block_categories', 'custom_block_category', 10, 2);

下面是一个简短的解决方案:

function custom_block_category( $categories ) {
    return array_merge(
        array(
            array(
                'slug' => 'my-blocks',
                'title' => __( 'My Test Blocks', 'my-blocks' ),
            ),
        ),
        $categories
    );
}
add_filter( 'block_categories', 'custom_block_category', 10, 2 );

其次,我只能找到get_block_categories()钩子-,但它所做的只是列出可用的块,似乎根本找不到操作它的方法。这会从列表中删除任何其他类别。你确定吗?它看起来非常简单,基本上应该将新类别附加到现有类别。我也刚刚检查过。之前是6类,之后是7类。此外,它基本上与WordPress开发手册()中列出的方法相同,只是改变了顺序,从而在前面插入了自己的类别。