Home >Backend Development >PHP Tutorial >Joomla language translation class Jtext usage analysis
The example in this article describes the usage of Jtext in Joomla language translation class. Share it with everyone for your reference, the details are as follows:
Basic usage:
Jtext is an object that implements multi-language translation in Joomla. The most basic usage is as follows:
Jtext::_('LANGUAGE CODE');
If it is used as a variable, directly Use, such as:
$var = Jtext::_('LANGUAGE CODE');
If you need to display it, you can use the echo command to make it display. This method is the most common in template files, such as:
echo Jtext::_('LANGUAGE CODE');
Language pack file:
Joomla can Supports multiple languages. The files of each language pack are stored in the folder of languages, such as:
The folder name of the English language pack is: languages/en-GB/
Traditional Chinese The folder name of the language pack is: languages/zh-TW/
Each language has a basic language pack file, which will be loaded when any program in Joomla is running, such as:
English The language pack file is: en-GB.ini
The language pack file for Traditional Chinese is: zh-TW.ini
Each component (Component) will have a language pack file for each language. This language The package file is loaded by default when the component is running. For example: The English language package of
com_community is: en-GB.com_community.ini The Chinese language package of
com_community is: zh-TW.com_community.ini
How to reference language pack files across components:
If you want to use the language pack of other components, you must first introduce the language pack of that component before you can use it. For example, if you want to use the com_stock language pack in com_community, you can introduce it in the following way:
$lang =& JFactory::getLanguage(); $lang->load('com_stock');//组件的名称,即语言包文件名的中间部分:en-GB.com_stock.ini
Advanced usage:
If variables appear in the statement to be translated, you need to use the JText::sprintf() method For translation, JText::sprintf() supports the use of variables in language packages, and can support up to 3 variables. The format of JText::sprintf() is as follows:
Jtext::sprintf('LANGUAGE CODE',$var1,$var2,$var3);
The corresponding language package is written:
LANGUAGE CODE=语言代码%1$s,%2$s,%3$s
For example:
JomSocial has a piece of code written like this. It needs to pass in the affiliate link and name, which is the video. To link three variables, the program code is written like this:
JText::sprintf('CC ACTIVITIES FEATURED VIDEO', $ownerUrl, $ownerName, $videoUrl);
The corresponding language pack is written like this:
CC ACTIVITIES FEATURED VIDEO=%2 $s's video is featured.
Readers who are interested in more Joomla-related content can check out the special topics of this site: "Introduction to Symfony Framework Tutorial", "Introduction to Yii Framework and Summary of Common Techniques", "Summary of PHP Excellent Development Framework", "Basic Tutorial for Getting Started with Smarty Templates" , "Summary of Common Methods in ThinkPHP", "Introduction Tutorial on PHP Object-Oriented Programming", "Summary of PHP String Usage", "Introduction Tutorial on PHP+MySQL Database Operation" and "Summary of Common PHP Database Operation Skills"
Hope What is described in this article will be helpful to everyone when designing programs based on Joomla.
The above introduces the usage analysis of Jtext for Joomla language translation, including the content of joomla and text. I hope it will be helpful to friends who are interested in PHP tutorials.