我正在开发一个 joomla 模块,在该模块中我正在访问外部文件(ajax 调用)我遇到了路径问题“致命错误:在 C 中找不到类 'JFactory':”但最终经过几天的搜索,我找到了真正的解决方案。这是代码
define( '_JEXEC', 1 );
chdir("../../");
getcwd();
define('JPATH_BASE', getcwd() );
define( 'DS', DIRECTORY_SEPARATOR );
require_once (JPATH_BASE .DS.'includes'.DS.'defines.php' );
require_once ( JPATH_BASE .DS.'includes'.DS.'framework.php' );
global $mainframe;
$mainframe =& JFactory::getApplication('site');
$mainframe->initialise();
现在我试图了解代码中发生了什么,除了一点,chdir("../../"); 作品??是更改包含该代码的文件的目录吗?(在我的例子中是getuser.php)或者它改变joomla核心文件的路径,比如define.php和framework.php?到底是怎么回事??如果你们有任何其他解决方案或对现有代码进行更好的更改,那么请与我分享,我将非常感激。
还有一件事如果我改变会有什么影响
$mainframe =& JFactory::getApplication('site') to $mainframe =& JFactory::getApplication('administrator')
因为我改变了它,但它对结果没有影响。