Postavljanje komentara u WordPressu. Dopuštanje korisnicima da ostavljaju anonimne komentare u WordPressu Kako potpuno ukloniti polja Ime i Email iz obrasca za komentare

💖 Sviđa li vam se? Podijelite vezu sa svojim prijateljima

WordPress ima nekoliko vrsta sadržaja kao što su postovi, stranice, komentari. WordPress je vrlo fleksibilna platforma koja vam omogućuje prilagodbu osnovnog sadržaja kako bi odgovarao vašoj web stranici. Može se mijenjati izgled i funkcionalnost. U ovom vodiču pokazat ćemo vam kako promijeniti ponašanje i izgled komentara na WordPress stranici.

Korak 1. Razumijevanje funkcije comment_form i njenih argumenata

Pogledajmo funkciju WordPress comment_form. Odgovoran je za prikaz obrasca za komentar koji se pojavljuje na stranici ili objavi. Poziv ovoj funkciji uglavnom se može pronaći u datoteci comments.php u mapi teme. Ova datoteka uključeni na raznim mjestima, kao što su datoteke single.php i page.php, izravno ili putem poziva funkcije comments_template.

Opis funkcije nalazi se u WordPress kodeksu.

Ako koristite funkciju comment_form za prikaz obrasca, on će se prikazati pomoću zadanih parametara i sadržavat će polja poput imena, e-pošte (oba su polja obavezna), web stranice i sadržaja komentara. U zadanoj temi Twenty Eleven obrazac će izgledati ovako.

Neki važni argumenti za funkciju comment_form:

  • polja - možete ga koristiti za kontrolu prikaza polja u obrascu za komentar.
  • comment_notes_before i comment_notes_after - koriste se za prikaz informacija prije i poslije obrasca.
  • title_reply - koristi se za promjenu naslova odgovora, koji je zadano "Ostavi odgovor".
  • label_submit - koristi se za promjenu teksta na gumbu za slanje komentara.
Korak 2. Prilagodite obrazac komentara pomoću funkcije comment_form

Postavimo sada obrazac za komentar prosljeđivanjem argumenata funkciji comment_form.

U slučaju da trebamo prilagoditi polja u obrascu za komentare, moramo proslijediti njihov popis funkciji comment_form. Prema zadanim postavkama funkcija koristi sljedeći popis polja:

$fields = array("author" => "

" . "" . __("Ime") . " " . ($req ? "*" : "") . "

", "e-mail" => " ", "url" => "

" . __("Web stranica") . "" . "

",);

Ako trebamo ukloniti polje, na primjer web stranicu, jednostavno ga trebamo isključiti iz niza i proslijediti niz funkciji comment_form.

$komentar = wp_get_current_commenter(); $req = get_option("require_name_email"); $aria_req = ($req ? " aria-required="true"" : ""); $fields = array("author" => "

" . "" . __("Ime") . " " . ($req ? "*" : "") . "

", "e-mail" => " ",); $comments_args = array("fields" => $fields); comment_form($comments_args);

Osim toga, promijenit ćemo i naziv forme u ‘Molimo da nam date svoj vrijedan komentar’, a natpis na gumbu u ‘Pošalji moj komentar’.

Da bismo dovršili zadatak, prosljeđujemo sljedeće argumente funkciji comment_form:

$komentar = wp_get_current_commenter(); $req = get_option("require_name_email"); $aria_req = ($req ? " aria-required="true"" : ""); $fields = array("author" => "

" . "" . __("Ime") . " " . ($req ? "*" : "") . "

", "e-mail" => " ",); $comments_args = array("fields" => $fields, "title_reply"=>"Molimo da nam date svoj vrijedan komentar", "label_submit" => "Pošalji moj komentar"); comment_form($comments_args);

Obrazac za komentar sada će izgledati ovako:

3. korak Uklanjanje polja iz obrasca pomoću kuke

Također oblik WordPress komentari može se mijenjati pomoću kuka i filtara. Ova postavka može biti posebno korisna kada radite s dodatkom, kada trebate prilagoditi nekoliko elemenata, ali ne i promijeniti datoteke teme. Filter za dodavanje ili uklanjanje polja iz forme - ‘ comment_form_default_fields ‘

Uklonimo URL polje pomoću filtra. Gornji kôd može se koristiti u dodatku ili u datoteci functions.php aktivne teme.

Funkcija remove_comment_fields($fields) ( unset($fields["url"]); return $fields; ) add_filter("comment_form_default_fields","remove_comment_fields");

Korak 4. Dodajte podatke u obrazac za komentar pomoću kuke

Možemo dodati polja obrascu pomoću filtra 'comment_form_default_fields'. Dodajmo polje autorove dobi pomoću filtra i spremimo ovo polje s dodatnim podacima i prikažimo ga u komentaru.

Dodajte ovakvo polje:

Funkcija add_comment_fields($fields) ( $fields["age"] = "

" . __("Dob") . "" . "

"; vrati $polja; ) add_filter("comment_form_default_fields","add_comment_fields");

#respond .comment-form-author label, #respond .comment-form-email label, #respond .comment-form-url label, #respond .comment-form-age label, #respond .comment-form-comment label ( pozadina: #eee; -webkit-box-shadow: 1px 2px 2px rgba(204,204,204,0.8); -moz-box-shadow: 1px 2px 2px rgba(204,204,204,0.8); 0,8); display: font-size: 4px; min-width: 40px;

Sada će naš obrazac za komentare izgledati ovako:

Sada je dob pohranjena kao dodatne informacije. Morate upotrijebiti kuku u 'comment_post':

Funkcija add_comment_meta_values($comment_id) ( if(isset($_POST["age"])) ( $age = wp_filter_nohtml_kses($_POST["age"]); add_comment_meta($comment_id, "age", $age, false); ) ) add_action("comment_post", "add_comment_meta_values", 1);

Nakon što su podaci spremljeni, mogu se ispisati kao komentar poput ovog:

Korak 5. Postavljanje komentara za određene vrste postova

Ponekad želite koristiti polja za komentare samo za određene vrste objava. Promijenimo kod tako da prikazuje polje dobi samo za vrstu zapisa knjige:

Funkcija add_comment_fields($fields) ( if(is_singular("books")) ( $fields["age"] = "

" . __("Dob") . "" . "

"; ) vrati $polja; ) add_filter("comment_form_default_fields","add_comment_fields");

Korak 6. Stvorite funkciju povratnog poziva za prikaz komentara

Funkcija wp_list_comments koristi se za prikaz komentara na objave. U WordPress kodu funkcija je detaljno opisana.

wp_list_comments ima ' callback ' argument u kojem možete definirati funkciju koja se poziva kada se komentar prikaže.

U temi Twenty Eleven u datoteci comments.php možete pronaći redak:

Wp_list_comments(array("callback" => "twentyeleven_comment"));

Promijenimo to u:

Wp_list_comments(array("callback" => "my_comments_callback"));

Funkcija my_comments_callback bit će pozvana za svaki post.

Korak 7: Komentari stila

Sada ćemo malo promijeniti stil komentara. Jednostavno ćemo prikazati sadržaj objave i polja za dob koje smo prethodno dodali. Također ćemo promijeniti boju pozadine za komentare.

Kôd funkcije 'my_comments_callback':

Funkcija my_comments_callback($comment, $args, $depth) ( $GLOBALS["comment"] = $comment; ?>

">

reci prijateljima
Pročitajte također