1. 神秘命名的 _e、_n 和 __ 函数
在编写 WordPress 主题或插件时,您可能会经常看到 _e、_n 和 __ 函数的使用。这些函数是 WordPress 国际化和本地化的重要组成部分,它们可以让您的主题或插件更加易于本地化,并允许它们在不同的语言环境中工作。
在本文中,我们将深入探讨这些函数的功能和用法。
2. _e 函数
2.1 什么是 _e 函数?
_e 函数用于输出可本地化的字符串。如果您的主题或插件需要输出文本字符串,那么您应该考虑使用 _e 函数,因为它可以使您的主题或插件更加易于本地化。
请注意,使用 _e 函数输出的字符串应慎重使用,因为它会直接输出到页面上。因此,您应该根据需要选择要输出的字符串,并注意避免 XSS 和其他安全问题。
2.2 _e 函数的用法示例
// 示例1
echo _e( 'Hello, World!' );
// 示例2
$text = __( 'Welcome to my website!', 'my_theme_textdomain' );
echo _e( $text );
在示例1中,我们直接使用 _e 函数输出字符串 "Hello, World!" 到页面上。
在示例2中,我们首先使用 __ 函数获取可本地化的字符串,并将相应的文本域设置为 'my_theme_textdomain'。然后,我们用 _e 函数将该字符串输出到页面上。
3. _n 函数
3.1 什么是 _n 函数?
与 _e 函数类似,_n 函数也用于本地化字符串。不同的是,_n 函数可以处理单数和复数形式的字符串,这对于需要根据数量来确定输出字符串的应用程序非常有用。
3.2 _n 函数的用法示例
// 示例1
$count = 1;
$text = _n( '%d apple', '%d apples', $count );
echo sprintf( $text, $count );
// 示例2
$count = 3;
$text = _n( '%d apple', '%d apples', $count );
echo sprintf( $text, $count );
在示例1中,我们首先使用 _n 函数获取可本地化的字符串,并设置单数和复数形式的字符串。然后,我们使用 sprintf 函数将相应的字符串输出到页面上。由于我们将 $count 设置为 1,因此输出的字符串为 "1 apple"。
在示例2中,我们将 $count 设置为 3,因此输出的字符串为 "3 apples"。
4. __ 函数
4.1 什么是 __ 函数?
__ 函数用于获取可本地化的字符串。这个函数用于获取与当前主题或插件相关的字符串,并将其标记为可本地化。
请注意,使用 __ 函数获取的字符串不会直接输出到页面上。相反,它们被存储在可供本地化使用的字符串列表中,直到被 _e 或 _n 函数调用为止。
4.2 __ 函数的用法示例
// 示例1
$text = __( 'Hello, World!', 'my_theme_textdomain' );
echo $text;
// 示例2
$text = __( 'Welcome to my website!', 'my_theme_textdomain' );
echo $text;
在示例1中,我们使用 __ 函数获取可本地化的字符串 "Hello, World!",并将相应的文本域设置为 'my_theme_textdomain'。然后,我们将该字符串输出到页面上。
在示例2中,我们使用 __ 函数获取可本地化的字符串 "Welcome to my website!",并将相应的文本域设置为 'my_theme_textdomain'。然后,我们将该字符串输出到页面上。
总结
在本文中,我们深入学习了 _e、_n 和 __ 函数的功能和用法。这些函数是 WordPress 国际化和本地化的重要组成部分,它们可以使您的主题或插件更加易于本地化,并允许它们在不同的语言环境中工作。因此,在编写 WordPress 主题或插件时,您应该始终考虑使用这些函数。