使用REST API嵌入自定义帖子

时间:2016-12-15 作者:Rafal

我正试图找到一种方法来嵌入基于自定义的帖子信息,例如其他网站上的帖子标题和少量自定义meta。

最简单的方法似乎是在iFrame中完成,但有很多“不”,你不能按照你想要的那样设计样式。所以在更新到4.7和REST API I的可用性之后,尽管使用它会很好,但通过API调用检索所需的值。但是当我尝试使用https://example.com/wp-json/wp/v2/posts/11 哪里11 是否调用自定义帖子类型st_activity, 我正在获取帖子内容和所有信息,但我的自定义元丢失了。

我已经注册了API支持的自定义帖子类型,如下所示

http://v2.wp-api.org/extending/custom-content-types/

正在添加

\'show_in_rest\'       => true,
\'rest_base\'          => \'activity-api\',
\'rest_controller_class\' => \'WP_REST_Posts_Controller\',
和调整后的元:

function slug_register_rate_review() {
            register_rest_field( \'st_activity\',
                \'rate_review\',
            array(
                \'get_callback\' => \'slug_get_st_activity\',
                \'update_callback\' => null,
                \'schema\' => null,
            )
        );
    }

    function slug_get_st_activity($post, $field_name, $request) {
        return get_post_meta($post[\'id\'], \'rate_review\' );
    }
嗯,很明显我做错了什么,但不知道到底是什么。

尽管如此,是否有可能以及如何在没有所有其他值的情况下仅获取标题、链接和自定义元?非常感谢。

1 个回复
SO网友:Jesús Franco

您的端点错误,/wp/v2/posts 仅适用于具有post_type=\'post\'. 如果您的自定义帖子类型已注册到“活动api”,则端点将是/wp/v2/activity-api/11.

那是因为那是你注册的子弹\'rest_base\' => \'activity-api\' 您的帖子类型的参数。没有自定义rest_base 参数,端点将位于/wp/v2/st_activity

相关推荐

组合emed_oemed_html和oembed_Result

我有两个完全相同的函数,因为它们应用于不同的过滤器。。。有没有办法把它们组合起来,这样我就不用写两遍了?我的代码:function embed_oembed($html) { if (preg_match(\'/(vimeo.com)/\', $html)) { return str_replace(\'<iframe\', \'<iframe class=\"video\"\', $html); } else {