Quali sono tutti i parametri di query per getEntityRecords?

10 feb 2019, 14:34:06
Visualizzazioni: 18.1K
Voti: 12

Sto lavorando a un plugin che definisce un blocco personalizzato per l'editor Gutenberg/Block. Il blocco mostra una casella select di articoli. Quando ne selezioni uno, genero HTML con alcuni campi dell'articolo selezionato, come titolo, data, ecc.

Quando interrogo i miei articoli nel metodo edit, il mio codice produce correttamente un elenco di pagine (nel mio caso, un custom post type chiamato product), ma i campi personalizzati, che questo post type ha, non sono inclusi.

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

Sto cercando di trovare documentazione sui parametri di query di getEntityRecords, ma sembra non essercene. È possibile includere campi personalizzati nella query? Penseresti che questo dovrebbe essere spiegato su https://wordpress.org/gutenberg/handbook/designers-developers/developers/data/data-core/#getentityrecords

La mia unica altra idea era: quando il blocco viene salvato ("durante" il metodo save), è possibile fare un'altra query che seleziona solo il singolo post per ID e recupera i suoi dati, magari includendo i campi personalizzati? Sembra che non possa interrogare nulla durante il salvataggio.

0
Tutte le risposte alla domanda 2
0
17

Se esamini il codice sorgente di getEntityRecords, vedrai che la libreria core/data crea entità utilizzando l'API di WordPress in entities.js.

Quindi puoi utilizzare qualsiasi parametro disponibile nella REST API. Ecco le opzioni per i post:

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 gen 2020 06:49:39
0

La documentazione di Gutenberg non è ancora completa, ma ci sono alcuni commit non rilasciati nel repository ufficiale di Gutenberg. Questo potrebbe aiutare: 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