当前位置: 首页>>WEB开发>>正文


什么是主题文本域?

webfans WEB开发 , , , 去评论

问题描述

我发现任何WordPress主题都使用这个函数,但我不明白它的目的是什么,它是什么,在这种情况下'themify'?以下是Themify functions.php中的一些示例:

1)。

load_theme_textdomain( 'themify', TEMPLATEPATH.'/languages' );

2)。

if (function_exists('register_nav_menus')) {
        register_nav_menus( array(
            'main-nav' => __( 'Main Navigation', 'themify' ),
            'footer-nav' => __( 'Footer Navigation', 'themify' ),
        ) );
    }

并在tempate文件中:

3)。 <?php _e( 'Sorry, nothing found.', 'themify' ); ?>

还有很多!我怀疑'themify'代表什么?他们的目的是什么?我可以更改或删除它吗? 'themify'的用途是什么?

最佳解决办法

在这种情况下,'themify'是主题的已定义文本域,用于使主题可翻译。 (食典参考:load_theme_textdomain())。

制作主题translation-ready需要几个步骤。

  1. 定义主题的textdomain:

    load_theme_textdomain( 'themify', TEMPLATEPATH.'/languages' );
    
  2. 在模板中定义可翻译字符串。这是使用以下几个转换函数之一完成的:__()(用于返回的字符串),_e()(用于回显字符串)和_x() /_ex()(用于gettext上下文字符串)。还有其他的,但你明白了……静态文本字符串,如<p>Hello world!</p>,包含在适当的翻译功能中,例如<p><?php _e( 'Hello World!', 'themify' ); ?></p>,以使其可用于翻译。

  3. how to edit语言文件上生成.mo /.po文件参考

参考资料

本文由朵颐IT整理自网络, 文章地址: https://duoyit.com/article/2472.html,转载请务必附带本地址声明。