Comment obtenir la langue actuellement sélectionnée à l'aide de la fonction JFactory::getLanguage();
d'un autre répertoire?
Je sais le faire quand j'y suis:
mais je dois l'appeler de ...
J'ai essayé d'importer Joomla Framework:
// Set flag that this is a parent file.
define('_JEXEC', 1);
define('DS', DIRECTORY_SEPARATOR);
if (file_exists(dirname(__FILE__) . '/../../defines.php')) {
include_once dirname(__FILE__) . '/../../defines.php';
}
if (!defined('_JDEFINES')) {
define('JPATH_BASE', dirname(__FILE__));
require_once JPATH_BASE.'/../../includes/defines.php';
}
require_once JPATH_BASE.'/../../includes/framework.php';
// Instantiate the application.
$app = JFactory::getApplication('site');
// Initialise the application.
$app->initialise();
$lang =& JFactory::getLanguage()->getTag();
La définition de JPATH_BASE
est toujours absent de votre code. Pour importer l'API Joomla, vous pouvez simplement utiliser les éléments suivants:
define( '_JEXEC', 1 );
define( 'JPATH_BASE', realpath(dirname(__FILE__).'/..' ));
require_once ( JPATH_BASE . '/includes/defines.php' );
require_once ( JPATH_BASE . '/includes/framework.php' );
$app = JFactory::getApplication('site');
$app->initialise();
Ensuite, pour obtenir l'étiquette de langue:
$lang = JFactory::getLanguage();
$tag = $lang->getTag();
Vous devez vous assurer que JPATH_BASE
a été défini correctement. Je ne sais pas exactement où se trouve votre fichier PHP) par rapport à votre installation de Joomla, mais vous devrez modifier la ligne 2 du code d'importation de l'API.
J'espère que cela t'aides