Come modificare "Devi essere loggato per pubblicare un commento."

7 dic 2014, 13:09:23
Visualizzazioni: 16.1K
Voti: 9

Alcuni dei miei utenti hanno segnalato che il mio sito risulta confuso. Vorrei quindi aggiungere link diretti a Login/Registrazione per i visitatori non registrati che desiderano lasciare un commento.

Attualmente viene mostrato solo "Devi essere loggato per pubblicare un commento." senza alcun link al Login. Dove posso modificare questo testo per cambiarlo in "Devi Registrarti o effettuare il Login per pubblicare un commento." con i relativi link?

0
Tutte le risposte alla domanda 1
9
11

Puoi provare a modificarlo con il filtro comment_form_defaults:

/**
 * Modifica la stringa "must_log_in" del modulo dei commenti.
 *
 * @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">
                 Devi <a href="%s">Registrarti</a> o 
                 <a href="%s">Accedere</a> per pubblicare un commento.</p>' 
        ),
        wp_registration_url(),
        wp_login_url( apply_filters( 'the_permalink', get_permalink() ) )   
    );
    return $fields;
});

dove utilizziamo le funzioni core wp_registration_url() e wp_login_url().

ps: le informazioni sul filtro comment_form_defaults sembrano mancare dal Codex.

7 dic 2014 13:59:26
Commenti

Grazie per l'aiuto. Scusa se sono stupido ma dove devo metterlo, functions.php?

Aidan Knight Aidan Knight
7 dic 2014 15:12:32

E questa parte del codice wp_login_url( get_permalink() ) );?

Brad Dalton Brad Dalton
7 feb 2015 11:22:59

sì, dovrebbe funzionare anche quello. Volevo solo emulare come viene fatto nel core. @BradDalton

birgire birgire
7 feb 2015 15:36:18

Certo, ma perché restituire apply_filters quando si modifica l'output predefinito per il testo in un child theme?

Brad Dalton Brad Dalton
7 feb 2015 15:37:22

Immagino che se l'utente stesse usando quel filtro per modificare i permalink (come aggiungere query string extra), sarebbe coerente applicarlo anche qui?

birgire birgire
7 feb 2015 15:42:31

Quindi non puoi usare quel filtro se non viene restituito nella tua funzione di filtro personalizzata?

Brad Dalton Brad Dalton
7 feb 2015 15:44:08

non è necessario aggiungere il proprio filtro the_permalink, perché questa configurazione restituirà semplicemente il valore di get_permalink().

birgire birgire
7 feb 2015 15:48:56

Ecco il link al codex per comment_form_defaults https://developer.wordpress.org/reference/hooks/comment_form_defaults/

theKing theKing
28 dic 2021 14:43:23

Grazie per l'aggiornamento @theKing

birgire birgire
28 dic 2021 15:09:06
Mostra i restanti 4 commenti