Cómo cambiar "Debe iniciar sesión para publicar un comentario".


8

Algunos de mis usuarios han mencionado que mi sitio es confuso para ellos. Como este es el caso, me gustaría hacer enlaces a Iniciar sesión / Registrarse para que mis visitantes no registrados lo hagan rápidamente si desean dejar un comentario.

En este momento solo dice "Debes iniciar sesión para publicar un comentario". sin enlace para iniciar sesión. ¿Dónde puedo editar esto y cambiarlo a "Debe registrarse o iniciar sesión para publicar un comentario"? con enlaces a ellos?

Respuestas:


9

Puedes intentar modificarlo con el comment_form_defaultsfiltro:

/**
 * Modify the "must_log_in" string of the comment form.
 *
 * @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">
                 You must <a href="%s">Register</a> or 
                 <a href="%s">Login</a> to post a comment.</p>' 
        ),
        wp_registration_url(),
        wp_login_url( apply_filters( 'the_permalink', get_permalink() ) )   
    );
    return $fields;
});

donde usamos las funciones principales wp_registration_url()y wp_login_url().

ps: la información sobre el comment_form_defaultsfiltro parece faltar en el Codex.


Gracias por la ayuda. Lamento ser estúpido, pero ¿dónde pongo esto, functions.php?
Aidan Knight

¿Qué tal esta parte del código wp_login_url (get_permalink ()));
Brad Dalton

Sí, eso también debería funcionar. Solo quería emular cómo se hace en el núcleo. @BradDalton
birgire

Claro, pero ¿por qué devolver apply_filters al modificar la salida predeterminada para el texto en un tema secundario?
Brad Dalton

Supongo que si el usuario usara ese filtro para modificar los enlaces permanentes (como agregar cadenas de consulta adicionales), ¿sería coherente aplicarlo aquí también?
Birgire
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.