自定义分类法未在Post Gutenberg编辑器中显示

问题描述 投票:0回答:2

我已经在Wordpress中注册了一个自定义分类,我无法弄清楚为什么它没有在标准的Wordpress帖子中显示,因为Gutenberg已经被引入。我的意思是,在添加或编辑帖子时,它不会显示在文档侧栏中。 “类别”和“标签”也是如此,它们显然是标准分类法。

我确保'show_in_rest'=> true存在是分类法注册,但它没有任何区别。

似乎他们正在进行部分注册,因为它们显示在左侧主菜单中的“帖子”下,这表明它可能与古腾堡有关?

有任何想法吗?

// Register taxonomy
add_action( 'init', 'register_taxonomy_articles_element' );

function register_taxonomy_articles_element() {

    $labels = array( 
        'name' => _x( 'Elements', 'articles_element' ),
        'singular_name' => _x( 'Element', 'articles_element' ),
        'search_items' => _x( 'Search Elements', 'articles_element' ),
        'popular_items' => _x( 'Popular Elements', 'articles_element' ),
        'all_items' => _x( 'All Elements', 'articles_element' ),
        'parent_item' => _x( 'Parent Element', 'articles_element' ),
        'parent_item_colon' => _x( 'Parent Element:', 'articles_element' ),
        'edit_item' => _x( 'Edit Element', 'articles_element' ),
        'update_item' => _x( 'Update Element', 'articles_element' ),
        'add_new_item' => _x( 'Add New Element', 'articles_element' ),
        'not_found' => _x( 'No Elements found', 'articles_element' ),
        'new_item_element' => _x( 'New Element', 'articles_element' ),
        'separate_items_with_commas' => _x( 'Separate Elements with commas', 'articles_element' ),
        'add_or_remove_items' => _x( 'Add or remove elements', 'articles_element' ),
        'choose_from_most_used' => _x( 'Choose from the most used elements', 'articles_element' ),
        'menu_name' => _x( 'Elements', 'articles_element' )
    );

    $args = array( 
        'labels' => $labels,
        'public' => true,
        'publicly_queryable' => true,
        'show_in_nav_menus' => true,
        'show_in_rest' => true,
        'show_ui' => true,
        'show_tagcloud' => true,
        'hierarchical' => true,
        'rewrite' => true,
        'query_var' => true
    );

    register_taxonomy( 'element', array('post'), $args );
}
php wordpress custom-taxonomy wordpress-gutenberg
2个回答
0
投票

由于Gutenberg基于REST API工作,因此您需要为任何自定义帖子类型和分类启用REST API支持。您需要在show_in_rest = true数组中添加额外的密钥$args。您的完整代码应如下所示:

$args = array( 
    'labels' => $labels,
    'public' => true,
    'show_in_rest' => true, // add support for Gutenberg editor
    'publicly_queryable' => true,
    'show_in_nav_menus' => true,
    'show_in_rest' => true,
    'show_ui' => true,
    'show_tagcloud' => true,
    'hierarchical' => true,
    'rewrite' => true,
    'query_var' => true
);

0
投票

似乎经过多次调查后,问题不在于上面的代码(这是正确的)。问题在于第二个自定义分类法,名为“类型”。事实证明,Wordpress包含许多'reserved terms',其中一个是'type'。一旦重新命名了这个分类法,两个分类法都能正常工作,包括Gutenberg。

© www.soinside.com 2019 - 2024. All rights reserved.