Postarea comentariilor folosind WP REST API v2 în WordPress

13 ian. 2016, 21:30:08
Vizualizări: 20K
Voturi: 5

Folosesc o aplicație AngularJS cu backend WordPress. Pot să preiau comentariile folosind WP REST API v2, folosind următorul URL

/wp-json/wp/v2/comments?post=1324

Dar există vreo modalitate de a posta comentarii în WP REST API v2? Nu am reușit să găsesc nimic în documentație. Mulțumesc.

2
Comentarii

În documentație există o secțiune intitulată „Crearea unui comentariu”. Puteți începe de acolo și reveni dacă întâmpinați probleme în utilizarea ei.

cybmeta cybmeta
14 ian. 2016 09:20:16

Endpoint-ul REST pentru comentarii este inconsecvent deoarece schema pentru conținut este diferită la ieșire (partea GET) față de intrare (POST/PUT). Când citiți, primiți un obiect cu proprietăți raw/rendered. Când adăugați/actualizați un comentariu, vi se așteaptă să furnizați un șir simplu pentru conținut.

kodbuse kodbuse
14 aug. 2016 03:20:24
Toate răspunsurile la întrebare 3
3

Problemă similară, primeam următorul răspuns:

{"code":"rest_comment_login_required","message":"Ne pare rău, trebuie să fiți autentificat pentru a comenta.","data":{"status":401}}

Căutând acel cod 'rest_comment_login_required', acesta este unul dintre primele rezultate: WP_REST_Comments_Controller::create_item_permissions_check.

Deci începând cu versiunea 4.7.0 există un filtru numit 'rest_allow_anonymous_comments' care implicit returnează false. Astfel, implicit nu puteți comenta chiar dacă setările din Wordpress indică altceva.

Puteți reactiva această funcționalitate adăugând:

function filter_rest_allow_anonymous_comments() {
    return true;
}
add_filter('rest_allow_anonymous_comments','filter_rest_allow_anonymous_comments');
19 dec. 2016 10:40:06
Comentarii

Poți folosi și callback-ul __return_true

birgire birgire
19 dec. 2016 10:51:19

Codul furnizat nu funcționează mai sus, ai inversat filtrul și callback-ul :-) https://developer.wordpress.org/reference/functions/add_filter/. Acesta este codul corect... function filter_rest_allow_anonymous_comments() { return true; } add_filter('rest_allow_anonymous_comments', 'filter_rest_allow_anonymous_comments');

Michael Cropper Michael Cropper
6 mar. 2017 13:11:20

Ai dreptate: Am actualizat codul.

Sjeiti Sjeiti
6 mar. 2017 15:27:06
0

Consultă documentația pentru comentarii - http://v2.wp-api.org/reference/comments/

Și următoarea sintaxă:

https://www.example.com/wp-json/wp/v2/comments?author=Your%20Name%20Here&author_email=your-email-address@website-address-here.com&author_name=Your%20Name%20Here&content=Your%20Comment%20Here&post=1604252

14 nov. 2016 22:39:21
1

Iată aici: http://www.contradodigital.com/2016/04/06/post-comments-wordpress-rest-api-version-2/

Tocmai am făcut asta și eu, documentația oficială pentru WordPress API v2 nu este chiar cea mai bună în acest moment.

6 apr. 2016 23:33:11
Comentarii

Deși acest link ar putea răspunde la întrebare, este mai bine să incluzi părțile esențiale ale răspunsului aici și să furnizezi linkul ca referință. Răspunsurile care conțin doar link-uri pot deveni invalide dacă pagina la care face referire se schimbă.

Gabriel Gabriel
7 apr. 2016 00:06:12