Change the Divi Email Optin Module Placeholder Text

|

The Divi Email Optin module is an easy way to add a signup form for you mailing list. It can include several fields: First Name, Last Name, Name and Email. There isn't an option in the email optin module to change the placeholder text for these fields. However, they are translatable. While there are translation plugins that can help translate these placeholders, if you just want to change the placeholders in these fields without setting up a translation plugin, you can do so with the PHP code given below.

Before

After

Change the Email Optin Module Placeholders with PHP Code

The following code can be used to change the email optin module's placeholder text:

add_filter('et_pb_module_shortcode_attributes', 'db_translate_email_optin_placeholders', 10, 5);

function db_translate_email_optin_placeholders($props, $attrs, $render_slug, $_address, $content) {
    if ('et_pb_signup' === $render_slug) {
        add_filter('gettext', 'db_email_optin_translations', 10, 3);
        add_filter("{$render_slug}_shortcode_output", 'db_remove_filters', 99, 3);
    }
    return $props;
}

function db_email_optin_translations($translated_text, $text, $domain) {
    if ('et_builder' === $domain) {
        switch ($text) {
            case 'Last Name':
                $translated_text = 'Nachname';
                break;
            case 'Email':
                $translated_text = 'E-Mail';
                break;
            case 'Name':
                $translated_text = 'Name';
                break;
            case 'First Name':
                $translated_text = 'Vorname';
                break;
        }
    }
    return $translated_text;
}

function db_remove_filters($output, $render_slug, $module) {
    if ('et_pb_signup' === $render_slug) {
        remove_filter('gettext', 'db_email_optin_translations', 10);
    }
    return $output;
}

You can add this code in the functions.php file of a child theme, or using a plugin such as Code Snippets. The example above translates the text into German – just change the translated text in the db_email_options_translations function to suit your needs.

0 Comments

Submit a Comment

Comments are manually moderated and approved at the time they are answered. A preview is shown while pending but may disappear if your are cookies cleared - don't worry though, the comment is still in the queue.

Your email address will not be published. Required fields are marked *.

We may earn a commission when you visit links on our website.