我的CPT分类法meta_fields没有在Wordpress REST API中显示

时间:2017-12-18 09:27:47

标签: wordpress custom-taxonomy

我使用“{$ taxonomy} _add_form_fields”为我的cpt分类法添加了一个自定义元字段。 到目前为止它工作正常(添加,编辑和保存)但我无法在API / wp-json / wp / v2 / rest_base中找到此字段。

这是过滤器问题还是我将此字段“添加”到API?

2 个答案:

答案 0 :(得分:0)

...这回答了一个与上面的问题略有不同的问题......

您需要在定义分类标准的地方启用REST API。

只需添加'show_in_rest_api' => true

即可

这样的事情:

<?php
add_action( 'init', 'create_book_tax' );

function create_book_tax() {
    register_taxonomy(
        'genre',
        'book',
        array(
            'label' => __( 'Genre' ),
            'rewrite' => array( 'slug' => 'genre' ),
            'hierarchical' => true,
            'show_in_rest_api' => true // <-- Do This!
        )
    );
}
?>

答案 1 :(得分:0)

您注册了调用register_term_meta的元字段,请注意,使用show_in_rest键不仅设置为true,而且至少具有模式描述,它在查询中都可用以获取数据,并且使用OPTIONS方法获取该端点的模式。

register_term_meta('replica', 'nice_field', [
    'type' => 'string',
    'description' => 'a nice description',
    'single' => true,
    'show_in_rest' => [
        'schema' => [
            'type' => 'string',
            'format' => 'url',
            'context' => ['view', 'edit'],
            'readonly' => true,
       ]
    ],
]);

使用schemaits currently documented only for non scalar types,但它也适用于标量值。