Как ограничить возвращаемые поля Wordpress REST-API при использовании узла узла WP-API

Если я назову этот URL-адрес блога Wordpress в браузере

<root...>wp-json/wp/v2/posts?per_page=5&fields=id,link,title

Я возвращаю JSON, и результат ограничен 3 полями

Итак, как я могу сделать это при использовании модуля node js wp-api?

Я хотел бы что-то похожее на .fields([]), но в документах ничего нет, в коде модуля ничего не могу найти. TypeError: wpapi.posts(...).perPage(...).fields не является функцией

Или что-то вроде .filter({}) TypeError: wpapi.posts(...).perPage(...).filter не является функцией. Но я думаю, что это может быть связано с другим необходимым плагином Wordpress.

        wpapi.posts()
            .perPage(5)
            .fields(['id','link','title'])
            .search( 'search-term' ) //= (search in title or content)
            .filter({
                category_name: 'islands',
                fields: [ 'id','link','title' ]
            })
            .get(function (err, data) {

..... так далее.

TypeError: wpapi.posts(...).perPage(...).fields не является функцией

Может кто-то указать мне верное направление? Спасибо


person macasas    schedule 18.11.2017    source источник


Ответы (2)


Похоже, что модуль узла wp-api не позволяет этого.

Поэтому я удалил его и теперь использую axios вместе со стандартными текстовыми URL-адресами.

person macasas    schedule 19.11.2017

Это сработало для меня:

wpapi.posts().param('_fields', 'id,title,content').get()

документация по node-wpapi, по-видимому, предлагает сказать, что perPage() и подобные функции являются вспомогательными функциями. этот звонок param(props, value).

wpapi.posts().param('_fields', ['id','title','content']).get()

также кажется, что работает, но первый вариант дает результирующий URL-адрес запроса, который больше похож на формат Wordpress REST API. Справочник использует

person woody42    schedule 04.08.2021