WordPress 如何使用 gettext 钩子替换本地化翻译文本

在放大镜下,你可以看到每一片雪花都是一幅幅精美的图案:有的是晶莹的薄片,有的像白亮的银针,有的像一把张开的小扇,有的像夜空的星星……

gettext 是一个非常不错的filter钩子,可以用来查找和替换本地化翻译文本,也就是替换 __()、_e()、_x()、_ex() 和 _n() 函数包含的文本。比如,你发现某个主题或插件的汉化文本不符合你的要求,但是你不想每次更新主题或插件后重新折腾语言包,那你就可以使用 gettext 钩子来自定义翻译文本。说了这么多,一起来看看例子吧,比较好理解。

比如 woocommerce 插件有一句文本是这样的:

1
<?php _e( 'Related Products', 'woocommerce' ); ?>

<?php _e( 'Related Products', 'woocommerce' ); ?>

你可以使用下面的函数替换 'Related Products' :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/**
* WordPress 使用 gettext 钩子替换本地化翻译文本
* https://www.wpdaxue.com/gettext.html
*/
function my_text_strings( $translated_text, $text, $domain ) {
	switch ( $translated_text ) {
		// 这是原来的文本		case 'Related Products' :			// 这是要替换的文本			$translated_text = __( 'Check out these related products', 'woocommerce' );			break;	}
	return $translated_text;
}
add_filter( 'gettext', 'my_text_strings', 99, 3 );

/** * WordPress 使用 gettext 钩子替换本地化翻译文本 * https://www.wpdaxue.com/gettext.html */ function my_text_strings( $translated_text, $text, $domain ) { switch ( $translated_text ) { // 这是原来的文本 case 'Related Products' : // 这是要替换的文本 $translated_text = __( 'Check out these related products', 'woocommerce' ); break; } return $translated_text; } add_filter( 'gettext', 'my_text_strings', 99, 3 );

上面的代码就将 'Related Products' 替换为 'Check out these related products' 了,当然,你也可以修改为中文。

如果你要替换更多文本,按照 7-11 行代码复制修改一下即可。更多使用说明,请查看 gettext 文档

相关推荐:

  • WordPress翻译中 __()、_e()、_x、_ex 和 _n 的用法及区别
  • 让WordPress主题支持语言本地化
  • 让WordPress插件支持语言本地化

以上就是WordPress 如何使用 gettext 钩子替换本地化翻译文本。考研,苦大仇深者必胜。更多关于WordPress 如何使用 gettext 钩子替换本地化翻译文本请关注haodaima.com其它相关文章!

您可能有感兴趣的文章
WordPress站点Gravatar头像前后台不显示的如何解决办法

WordPress做公司官网好吗?会不会显得档次很低?

WordPress主题需要支持https吗?WordPress站点如何如何实现https?

WordPress站点的页面/标签/分类URL地址如何添加.html?

WordPress站点更换了域名后数据库应该如何操作替换新旧域名?