摘要:
近 来随着i18n(国际化)的逐渐标准化,我也来讲一讲在PHP中如何实现国际化支持。跟其他程序语言一样,在 PHP 也可以利用 gettext 套件写作 i18n 程序,实现 NLS(Native Language Support) 国际化支持,具体请参考官方文档( http://www.gnu.org/software/gettext/manual/gettext.html ) 这里我们主要介绍window平台下使用php的扩展gettext实现程序的国际化。 gettext简介: GNU gettext是翻译项目的重要一步,它提供了一个工作框架,由一些集成的工具和文档组成,帮助程序员、翻译 阅读全文
摘要:
WordPress 默认的主题中都会有一个 languages 的文件夹,你一定知道,这就是用来放语言包的,其中一定会有成双成对的 mo/po 文件。如果你已经对一些国外的 WordPress 主题或者插件有汉化的经验,那你一定知道我们可以用 Poedit 这个小软件来修改 po 文件,从而对主题进行汉化。对于要提交到 WordPress 官方主题站的朋友,我觉得让主题支持多国语言还是挺有用的,毕竟要让咱的主题与国际接轨嘛,再者把语言从代码中分离出来可以方便二次开发的时候进行统一管理。那我们在做主题的时候如何让 WordPress 支持多国语言呢?这里我就简单说一下英文主题制作中文汉化包的过程 阅读全文
摘要:
制作过WordPress主题或插件的朋友都知道,只要使用__(字符串,文字域名)或_e(字符串,文字域名),即可使用PoEdit提取字符串,然后进行翻译成其他语言。 WordPress用的就是GUN的gettext。 觉得这个功能很有趣,就想在今后的程序中用用。看了网上的教程, 多是在php中开启php_gettext.dll,然后用gettext(字符串),似乎和WordPress有些差别。感觉上还是WordPress的好点。 晚上用了点时间研究了一下WordPress的多语言系统, 主要的文件在 wp-includes/pomo/*.* wp-includes/l10n.php wp-in 阅读全文
摘要:
下面步骤指导您将现有的英文 WordPress 站点切换为中文。 通过 FTP、SSH 等方式打开并编辑站点根目录下的 wp-config.php 文件。查找 define('WPLANG', ''); 一行,在第二个参数处填入 zh_CN,变成 define('WPLANG', 'zh_CN'); 并保存文件。进入站点控制板(dashboard),看到更新提示后进行升级即可。WordPress 会自动从官方网站下载中文语言包并安装。 若您当前正在使用非官方的中文语言包,请您注意:非官方语言包通常会替换 WordPress 程序本 阅读全文
摘要:
再看do_action函数。位于plugin.php352行。我把源码放在西街口这里,略去了其它辅助处理的语句。 如下: function do_action($tag, $arg = '') { ++$wp_actions[$tag]; //计数器加1,did_action中用到 do { foreach ( (array) current($wp_filter[$tag]) as $the_ ) if ( !is_null($the_['function']) ) call_user_func_array($the_['function'], 阅读全文
摘要:
再看template-laoder.php,这个文件总共只有45行。它的作用是基于访问的URL装载正确的模板. 文件第六行,也是第一条语句,如下: if ( defined('WP_USE_THEMES') && WP_USE_THEMES ) do_action('template_redirect'); 首先判断是否使用Themes,这个WP_USE_THEMES常量在index.php中第一句就被设置为true。因此条件成立,会执行do_action(‘template_redirect’)语句。 do_action('templa 阅读全文
摘要:
一、文件简介 .po文件,.mo文件,.pot文件是由gettext程序生成或者使用的源代码和编译结果。其中, 1、.pot文件 是一种模板文件,其实质与.po文件一样,其中包含了从源代码中提取所有的翻译字符串的列表,主要提供给翻译人员使用。 2、.po文件 (1)用程序msginit来分析pot文件,生成各语言对应的po文件,比如中文就是zh_CN.po,法语就是fr.po文件。 (2)PO是Portable Object(可移植对象)的缩写形式,它是面向翻译人员的、提取于源代码的一种资源文件。 (3).po文件可以用任何编辑器如poEdit,vi,Emacs,editplus打开,交给翻译 阅读全文