¿Cuáles son todos los parámetros de consulta para getEntityRecords?

10 feb 2019, 14:34:06
Vistas: 18.1K
Votos: 12

Estoy trabajando en un plugin que define un bloque personalizado para el editor Gutenberg/Block Editor. El bloque muestra una caja select con posts. Cuando seleccionas uno, genero HTML con algunos campos del post seleccionado, como título, fecha, etc.

Cuando consulto mis posts en el método edit, mi código produce correctamente una lista de páginas (en mi caso, un tipo de post personalizado llamado product), pero los campos personalizados que tiene este tipo de post no se incluyen.

var pages = select('core').getEntityRecords('postType', 'product', { per_page: -1 });

Estoy intentando encontrar documentación sobre los parámetros de consulta de getEntityRecords, pero parece que no hay ninguno. ¿Es posible incluir campos personalizados en la consulta? Uno pensaría que esto debería estar explicado en https://wordpress.org/gutenberg/handbook/designers-developers/developers/data/data-core/#getentityrecords

Mi única otra idea era: cuando el bloque se guarda ("durante" el método save), ¿es posible hacer otra consulta que solo seleccione el post individual por ID y recupere sus datos, quizás incluyendo campos personalizados? Parece que no puedo consultar nada durante el guardado.

0
Todas las respuestas a la pregunta 2
0
17

Si revisas el código fuente de getEntityRecords, verás que la biblioteca core/data crea entidades usando la API de WordPress en entities.js.

Por lo tanto, puedes usar cualquier parámetro disponible en la API REST. Aquí están las opciones para publicaciones:

context
page
per_page
search
after
author
author_exclude
before
exclude
include
offset
order
orderby
slug
status
categories
categories_exclude
tags
tags_exclude
sticky
15 ene 2020 06:49:39
0

La documentación de Gutenberg aún no está completa, pero hay algunos commits no publicados en el repositorio oficial de Gutenberg. Esto podría ayudar: https://github.com/WordPress/gutenberg/blob/b7ad77d15f32ca234ff2f3df4994e47a5cf2e6d7/packages/editor/src/components/page-attributes/README.md

[...]
    var query = {
            per_page: -1,
            exclude: postId,
            parent_exclude: postId,
            orderby: 'menu_order',
            order: 'asc',
            status: 'publish,future,draft,pending,private',
        };
        return {
            parentItems: isHierarchical ?
                selectCore.getEntityRecords( 'postType', postTypeSlug, query ) :
                []
        };
[...]
7 mar 2019 12:49:14