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.
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;
}
Related Post: Adding PHP to the Divi Theme
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