Cum să citești datele din tipuri personalizate de postări în modul Headless CMS

12 sept. 2021, 23:50:05
Vizualizări: 194
Voturi: 0

Îmi construiesc site-ul din două părți – CMS-ul Headless pe un subdomeniu unde se introduce conținutul și domeniul principal unde afișez datele. Doar WordPress este instalat pe subdomeniu, nu și pe domeniul principal. Pe subdomeniu, am creat un tip de postare personalizat numit Staff, iar elementele din interior sunt de tip Member. Am observat că nu pot folosi URL-ul...

https://example.com/wp-json/wp/v2/posts

(WP REST API)

...pentru a citi aceste elemente. Uitându-mă în documentație, văd că le pot accesa ca...

https://example.com/wp-json/wp/v2/staff

Când folosesc /staff, îmi arată câmpurile de bază ale postării, dar nu și grupurile de câmpuri personalizate. (Notă: folosesc plugin-ul Custom Post Types de la TotalPress.org.)

Cum pot obține proprietățile câmpurilor personalizate pentru un anumit membru al staff-ului? Pot accesa un membru astfel:

https://example.com/wp-json/wp/v2/staff/?slug=john-smith

...dar nu există câmpuri personalizate înregistrate pe acest record.

Cum pot folosi API-ul REST pentru a obține câmpurile personalizate atașate unui tip de postare personalizată?

5
Comentarii

ai declarat că sunt disponibile prin REST API în timpul înregistrării? Nu există cod în întrebarea ta

Tom J Nowell Tom J Nowell
13 sept. 2021 00:39:30

@TomJNowell Folosesc pluginul Custom Post Types de la TotalPress.org, care mă scutește de codare. Acesta se ocupă de înregistrare. De asemenea, am aflat de ce /staff nu funcționa în API - era modul în care l-am declarat. Voi edita această postare în privința aceasta, cel puțin. Doar că nu reușesc să obțin câmpurile personalizate.

Volomike Volomike
13 sept. 2021 01:14:32

Am crezut că l-ai folosit și apoi l-ai abandonat pe baza întrebării tale. Suportul pentru pluginuri terțe este în afara temei aici. Acesta nu este un loc pentru a obține ajutor pentru pluginul Custom Post Types.

Tom J Nowell Tom J Nowell
13 sept. 2021 09:16:20

De menționat, răspunsul canonic la această problemă este să te asiguri că permalink-urile sunt resetate și că tipul de postare (CPT) în cauză are setat show_in_rest pe true, dar din moment ce ai folosit un plugin pentru a-ți crea tipurile de postări, această soluție nu este disponibilă pentru tine. Cu toate acestea, tipurile de postări personalizate sunt destul de simple și există generatoare de cod online care scriu codul pentru tine pe baza unor intrări și casete de bifat. Nu ai nevoie de un plugin care să înregistreze automat tipurile de postări pentru tine.

Tom J Nowell Tom J Nowell
13 sept. 2021 09:18:30

Și trebuie să înregistrezi metadate pentru ca acestea să apară în REST API

Tom J Nowell Tom J Nowell
13 sept. 2021 09:19:06
Toate răspunsurile la întrebare 1
3

Am găsit soluția fără cod. Am instalat Pluginul Rest API Helper și acum afișează câmpurile personalizate pentru un tip de postare dat.

13 sept. 2021 01:31:59
Comentarii

definiție interesantă a expresiei „fără cod”, poate ai vrut să spui „fără a scrie eu cod” :)

Mark Kaplun Mark Kaplun
13 sept. 2021 05:17:37

doar să fii conștient că plugin-ul nu pare să fie întreținut. s-ar putea să funcționeze corect pentru mult timp, dar îți asumi un risc

Mark Kaplun Mark Kaplun
13 sept. 2021 05:20:49

@MarkKaplun 'fără cod pe care l-am scris eu' -- da, ai dreptate. Și mulțumesc pentru celălalt sfat.

Volomike Volomike
16 sept. 2021 21:05:31