Title: esc_attr__
Published: April 25, 2014
Last modified: August 20, 2026

---

# esc_attr__( string $text, string $domain = 'default' ): string

## In this article

 * [Description](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#description)
 * [Parameters](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#parameters)
 * [Return](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#return)
 * [Source](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#source)
 * [Related](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#related)
 * [Changelog](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#changelog)

[ Back to top](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#wp--skip-link--target)

Retrieves the translation of $text and escapes it for safe use in an attribute.

## 󠀁[Description](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#description)󠁿

If there is no translation, or the text domain isn’t loaded, the original text is
returned.

## 󠀁[Parameters](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#parameters)󠁿

 `$text`stringrequired

Text to translate.

`$domain`stringoptional

Text domain. Unique identifier for retrieving translated strings.
 Default `'default'`.

Default:`'default'`

## 󠀁[Return](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#return)󠁿

 string Translated text on success, original text on failure.

## 󠀁[Source](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#source)󠁿

    ```php
    function esc_attr__( $text, $domain = 'default' ) {
    	return esc_attr( translate( $text, $domain ) );
    }
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/l10n.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/7.1/src/wp-includes/l10n.php#L322)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/7.1/src/wp-includes/l10n.php#L322-L324)

## 󠀁[Related](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#related)󠁿

| Uses | Description | 
| [translate()](https://developer.wordpress.org/reference/functions/translate/)`wp-includes/l10n.php` |

Retrieves the translation of $text.

  | 
| [esc_attr()](https://developer.wordpress.org/reference/functions/esc_attr/)`wp-includes/formatting.php` |

Escaping for HTML attributes.

  |

| Used by | Description | 
| [network_edit_site_nav()](https://developer.wordpress.org/reference/functions/network_edit_site_nav/)`wp-admin/includes/ms.php` |

Outputs the HTML for a network’s “Edit Site” tabular interface.

  | 
| [WP_Customize_Nav_Menus::enqueue_scripts()](https://developer.wordpress.org/reference/classes/wp_customize_nav_menus/enqueue_scripts/)`wp-includes/class-wp-customize-nav-menus.php` |

Enqueues scripts and styles for Customizer pane.

  | 
| [WP_Comments_List_Table::handle_row_actions()](https://developer.wordpress.org/reference/classes/wp_comments_list_table/handle_row_actions/)`wp-admin/includes/class-wp-comments-list-table.php` |

Generates and displays row actions links.

  | 
| [WP_Screen::render_screen_options()](https://developer.wordpress.org/reference/classes/wp_screen/render_screen_options/)`wp-admin/includes/class-wp-screen.php` |

Renders the screen options tab.

  | 
| [Plugin_Upgrader_Skin::after()](https://developer.wordpress.org/reference/classes/plugin_upgrader_skin/after/)`wp-admin/includes/class-plugin-upgrader-skin.php` |

Performs an action following a single plugin update.

  | 
| [update_nag()](https://developer.wordpress.org/reference/functions/update_nag/)`wp-admin/includes/update.php` |

Returns core update notification message.

  | 
| [wp_dashboard_browser_nag()](https://developer.wordpress.org/reference/functions/wp_dashboard_browser_nag/)`wp-admin/includes/dashboard.php` |

Displays the browser update nag.

  | 
| [_wp_dashboard_recent_comments_row()](https://developer.wordpress.org/reference/functions/_wp_dashboard_recent_comments_row/)`wp-admin/includes/dashboard.php` |

Outputs a row for the Recent Comments widget.

  | 
| [wp_media_insert_url_form()](https://developer.wordpress.org/reference/functions/wp_media_insert_url_form/)`wp-admin/includes/media.php` |

Creates the form for external url.

  | 
| [edit_form_image_editor()](https://developer.wordpress.org/reference/functions/edit_form_image_editor/)`wp-admin/includes/media.php` |

Displays the image and editor in the post editor

  | 
| [get_media_item()](https://developer.wordpress.org/reference/functions/get_media_item/)`wp-admin/includes/media.php` |

Retrieves HTML form for modifying the image attachment.

  | 
| [WP_Media_List_Table::get_columns()](https://developer.wordpress.org/reference/classes/wp_media_list_table/get_columns/)`wp-admin/includes/class-wp-media-list-table.php` |  | 
| [WP_Comments_List_Table::extra_tablenav()](https://developer.wordpress.org/reference/classes/wp_comments_list_table/extra_tablenav/)`wp-admin/includes/class-wp-comments-list-table.php` |

Displays extra controls between bulk actions and pagination.

  | 
| [Walker_Nav_Menu_Edit::start_el()](https://developer.wordpress.org/reference/classes/walker_nav_menu_edit/start_el/)`wp-admin/includes/class-walker-nav-menu-edit.php` |

Start the element output.

  | 
| [wp_nav_menu_item_post_type_meta_box()](https://developer.wordpress.org/reference/functions/wp_nav_menu_item_post_type_meta_box/)`wp-admin/includes/nav-menu.php` |

Displays a meta box for a post type menu item.

  | 
| [wp_nav_menu_item_taxonomy_meta_box()](https://developer.wordpress.org/reference/functions/wp_nav_menu_item_taxonomy_meta_box/)`wp-admin/includes/nav-menu.php` |

Displays a meta box for a taxonomy menu item.

  | 
| [WP_Posts_List_Table::get_columns()](https://developer.wordpress.org/reference/classes/wp_posts_list_table/get_columns/)`wp-admin/includes/class-wp-posts-list-table.php` |  | 
| [_wp_menu_output()](https://developer.wordpress.org/reference/functions/_wp_menu_output/)`wp-admin/menu-header.php` |

Display menu.

  | 
| [wp_timezone_choice()](https://developer.wordpress.org/reference/functions/wp_timezone_choice/)`wp-includes/functions.php` |

Gives a nicely-formatted list of timezone strings.

  | 
| [WP_Customize_Widgets::enqueue_scripts()](https://developer.wordpress.org/reference/classes/wp_customize_widgets/enqueue_scripts/)`wp-includes/class-wp-customize-widgets.php` |

Enqueues scripts and styles for Customizer panel and export data to JavaScript.

  |

[Show 15 more](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#)
[Show less](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#)

## 󠀁[Changelog](https://developer.wordpress.org/reference/functions/esc_attr__/?output_format=md#changelog)󠁿

| Version | Description | 
| [2.8.0](https://developer.wordpress.org/reference/since/2.8.0/) | Introduced. |

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Ffunctions%2Fesc_attr__%2F)
before being able to contribute a note or feedback.