Codex

Plugin API/Filter Reference/gettext

Contents

Description

This filter hook is applied to the translated text by the internationalization functions (__(), _e(), _x(), etc.). This filter is always applied even if internationalization is not in effect, and if the text domain has not been loaded.


Arguments

Filter function arguments are: 'translated text', 'untranslated text' and 'text domain'. apply_filters( 'gettext', $translations->translate( $text ), $text, $domain );


Examples

Change the Comment Form

Change the default field names of the comment form. Assumes the current form includes field names "Name" and "Email" and that 'theme_text_domain' is the name of your theme's text domain.

add_filter( 'gettext', 'theme_change_comment_field_names', 20, 3 );
/**
 * Change comment form default field names.
 *
 * @link http://codex.wordpress.org/Plugin_API/Filter_Reference/gettext
 */
function theme_change_comment_field_names( $translated_text, $text, $domain ) {

    if ( is_singular() ) {

        switch ( $translated_text ) {

            case 'Name' :

                $translated_text = __( 'First Name', 'theme_text_domain' );
                break;

            case 'Email' :

                $translated_text = __( 'Email Address', 'theme_text_domain' );
                break;
        }

    }

    return $translated_text;
}

Remove Text from Admin Form

add_filter('gettext', 'remove_admin_stuff', 20, 3);
/**
 * Remove the text at the bottom of the Custom fields box in WordPress Post/Page Editor.
 *
 * @link http://codex.wordpress.org/Plugin_API/Filter_Reference/gettext
 */
function remove_admin_stuff( $translated_text, $untranslated_text, $domain ) {

    $custom_field_text = 'Custom fields can be used to add extra metadata to a post that you can <a href="http://codex.wordpress.org/Using_Custom_Fields" target="_blank">use in your theme</a>.';

    if ( is_admin() && $untranslated_text === $custom_field_text ) {
        return '';
    }

    return $translated_text;
}