Joomla语言翻译类Jtext用法分析


Posted in PHP onMay 05, 2016

本文实例讲述了Joomla语言翻译类Jtext用法。分享给大家供大家参考,具体如下:

基本使用方法:

Jtext是Joomla中实现多语言翻译的一个对象,最基本的使用方法如下:

Jtext::_('LANGUAGE CODE');

如果是作为变量的话,则直接使用,如:

$var = Jtext::_('LANGUAGE CODE');

如果需要显示出来,可以用echo的命令让它显示,这种方式在模板文件中是最常见的,如:

echo Jtext::_('LANGUAGE CODE');

语言包文件:

Joomla可以支持多语言,每一种语言包的文件以文件夹的形式存在languages的文件夹下,如:

英文的语言包的文件夹名是: languages/en-GB/

繁体中文的语言包的文件夹名称是:languages/zh-TW/

每种语言有一个基本的语言包文件,这个文件在Joomla的任何一个程序运行中都会被载入,如:

英文的语言包文件为:en-GB.ini

繁体中文的语言包文件为:zh-TW.ini

每个组件(Component)的每个语言都会有一个语言包文件,这个语言包文件默认在该组件运行时才被载入,如:

com_community的英文语言包为:en-GB.com_community.ini

com_community的中文语言包为:zh-TW.com_community.ini

如何跨组件引用语言包文件:

如果要使用其他组件的语言包,必须先引入该组件的语言包才可以使用。如com_community中要使用com_stock的语言包,可以采用以下的方式引入:

$lang =& JFactory::getLanguage();
$lang->load('com_stock');//组件的名称,即语言包文件名的中间部分:en-GB.com_stock.ini

高级使用方法:

如果在要翻译的语句中出现变量,那么需要用到JText::sprintf()的方法进行翻译,JText::sprintf()支持在语言包中使用变量,最多可以支持3个变量。JText::sprintf()的格式如下:

Jtext::sprintf('LANGUAGE CODE',$var1,$var2,$var3);

对应的语言包的写法:

LANGUAGE CODE=语言代码%1$s,%2$s,%3$s

如:

JomSocial有一段代码是这样写的,需要传入会员链接和名称即视频的链接三个变量,程序的代码是这样写的:

JText::sprintf('CC ACTIVITIES FEATURED VIDEO', $ownerUrl, $ownerName, $videoUrl);

对应的语言包则是这样写的:

CC ACTIVITIES FEATURED VIDEO=<a href=\”%1$s\”>%2$s</a>的 <a href=\”%3$s\”>??</a> 被列??精?。

希望本文所述对大家基于joomla程序设计有所帮助。

PHP 相关文章推荐
isset和empty的区别
Jan 15 PHP
php与paypal整合方法
Nov 28 PHP
PHP学习散记_编码(json_encode 中文不显示)
Nov 10 PHP
简单实用的PHP防注入类实例
Dec 05 PHP
PHP常用处理静态操作类
Apr 03 PHP
php使用CURL不依赖COOKIEJAR获取COOKIE的方法
Jun 17 PHP
PHP邮箱验证示例教程
Jun 01 PHP
PHP之十六个魔术方法详细介绍
Nov 01 PHP
PHP实现删除多重数组对象属性并重新赋值的方法
Jun 07 PHP
PHP开发中解决并发问题的几种实现方法分析
Nov 13 PHP
PHP APP微信提现接口代码
Sep 30 PHP
php中Swoole的热更新实现代码实例
Mar 04 PHP
Yii2超好用的日期和时间组件(值得收藏)
May 05 #PHP
joomla实现注册用户添加新字段的方法
May 05 #PHP
Joomla数据库操作之JFactory::getDBO用法
May 05 #PHP
100多行PHP代码实现socks5代理服务器[2]
May 05 #PHP
PHP随机数 C扩展随机数
May 04 #PHP
PHP正则表达式过滤html标签属性(DEMO)
May 04 #PHP
Joomla使用Apache重写模式的方法
May 04 #PHP
You might like
给海燕B411配件机起死回生配上件
2021/03/02 无线电
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
2014/01/03 PHP
PHP队列用法实例
2014/11/05 PHP
php中二分法查找算法实例分析
2016/09/22 PHP
js滚动条多种样式,推荐
2007/02/05 Javascript
JavaScript CSS菜单功能 改进版
2008/12/20 Javascript
基于jQuery的简单九宫格实现代码
2012/08/09 Javascript
javascript禁用键盘功能键让右击及其他键无效
2013/10/09 Javascript
Javascript自定义函数判断网站访问类型是PC还是移动终端
2014/01/10 Javascript
JavaScript使用concat连接数组的方法
2015/04/06 Javascript
JS实现的自定义右键菜单实例二则
2015/09/01 Javascript
JavaScript“尽快失败”的原则实例详解
2016/10/08 Javascript
Bootstrap滚动监听组件scrollspy.js使用方法详解
2017/07/20 Javascript
redux中间件之redux-thunk的具体使用
2018/04/17 Javascript
在vue使用clipboard.js进行一键复制文本的实现示例
2019/01/15 Javascript
详解Vue+ElementUI从零开始搭建自己的网站(一、环境搭建)
2019/04/30 Javascript
微信小程序中网络请求缓存的解决方法
2019/12/29 Javascript
JQuery实现折叠式菜单的详细代码
2020/06/03 jQuery
浅谈python import引入不同路径下的模块
2017/07/11 Python
Django中使用CORS实现跨域请求过程解析
2019/08/05 Python
python3通过qq邮箱发送邮件以及附件
2020/05/20 Python
python Matplotlib基础--如何添加文本和标注
2021/01/26 Python
HTML5 CSS3新的WEB标准和浏览器支持
2009/07/16 HTML / CSS
REN Clean Skincare官网:英国本土有机护肤品牌
2019/02/23 全球购物
Bibloo罗马尼亚网站:女装、男装、童装及鞋子和配饰
2019/07/20 全球购物
贝佳斯官方网站:Borghese
2020/05/08 全球购物
高中运动会广播稿
2014/01/21 职场文书
求职信的七个关键技巧
2014/02/05 职场文书
教师党员承诺书
2014/03/25 职场文书
最新大学生创业计划书写作攻略
2014/04/02 职场文书
工厂标语大全
2014/10/06 职场文书
2015国庆节66周年演讲稿
2015/03/20 职场文书
nginx搭建图片服务器的过程详解(root和alias的区别)
2021/03/31 Servers
超详细Python解释器新手安装教程
2021/05/10 Python
vue3语法糖内的defineProps及defineEmits
2022/04/14 Vue.js
Android开发手册Chip监听及ChipGroup监听
2022/06/10 Java/Android