Como alterar "Você deve estar logado para postar um comentário."

8

Alguns dos meus usuários mencionaram que meu site é confuso para eles. Como esse é o caso, eu gostaria de criar links para o Login / Registro para que meus visitantes não registrados o façam rapidamente, caso desejem deixar um comentário.

No momento, apenas diz "Você deve estar logado para postar um comentário". sem nenhum link para o login. Onde posso editar isso e alterá-lo para "Você deve se registrar ou fazer login para publicar um comentário". com links para eles?

Aidan Knight
fonte

Respostas:

9

Você pode tentar modificá-lo com o 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;
});

onde usamos os wp_registration_url()e wp_login_url()principais funções.

ps: as informações no comment_form_defaultsfiltro parecem estar ausentes no Codex.

Birgire
fonte
Obrigado pela ajuda. Desculpe ser estúpido, mas onde coloco isso, functions.php?
Aidan Knight
Que tal esta parte do código wp_login_url (get_permalink ()));
Brad Dalton
Sim, isso deve funcionar também. Eu só queria imitar como isso é feito no núcleo. @BradDalton
birgire
Claro, mas por que retornar apply_filters ao modificar a saída padrão para o texto em um tema filho?
Brad Dalton
Eu acho que se o usuário estivesse usando esse filtro para modificar os links permanentes (como adicionar seqüências de consulta extras), seria consistente aplicá-lo aqui também?
22815 birgire