Cum să modifici mesajul "Trebuie să fii autentificat pentru a posta un comentariu" în WordPress
Unii dintre utilizatorii mei au menționat că site-ul meu este confuz pentru ei. În acest context, aș dori să adaug linkuri către Login/Înregistrare pentru vizitatorii neînregistrați, astfel încât să poată acționa rapid dacă doresc să lase un comentariu.
În prezent apare doar mesajul "Trebuie să fii autentificat pentru a posta un comentariu." fără niciun link către Login. Unde pot edita acest mesaj și să-l schimb în "Trebuie să te Înregistrezi sau să te Autentifici pentru a posta un comentariu." cu linkuri către aceste pagini?

Puteți încerca să-l modificați cu filtrul comment_form_defaults
:
/**
* Modifică textul "must_log_in" din formularul de comentarii.
*
* @see http://wordpress.stackexchange.com/a/170492/26350
*/
add_filter( 'comment_form_defaults', function( $fields ) {
$fields['must_log_in'] = sprintf(
__( '<p class="must-log-in">
Trebuie să vă <a href="%s">înregistrați</a> sau
să vă <a href="%s">autentificați</a> pentru a posta un comentariu.</p>'
),
wp_registration_url(),
wp_login_url( apply_filters( 'the_permalink', get_permalink() ) )
);
return $fields;
});
unde folosim funcțiile core wp_registration_url()
și wp_login_url()
.
ps: informațiile despre filtrul comment_form_defaults
par să lipsească din Codex.

Mulțumesc pentru ajutor. Îmi pare rău că întreb lucruri stupide, dar unde pun asta, în functions.php?

da, și asta ar trebui să funcționeze. Voiam doar să emulez cum se face în nucleu. @BradDalton

Sigur, dar de ce să folosești return apply_filters când modifici output-ul implicit pentru text într-un child theme?

Presupun că dacă utilizatorul folosea acel filtru pentru a modifica permalink-urile (cum ar fi adăugarea de parametri suplimentari în query string), ar fi consistent să-l aplici și aici?

Deci nu poți folosi acel filtru dacă nu-l returnezi în funcția ta personalizată de filtrare?

nu este nevoie să adaugi propriul tău filtru the_permalink
, deoarece această configurație va returna pur și simplu valoarea get_permalink()
.

Iată linkul către codex pentru comment_form_defaults
https://developer.wordpress.org/reference/hooks/comment_form_defaults/
