自Joomla对3.8的最后更新以来,我无法通过" non-joomla-script"调用以下功能。
$db=JFactory::getDBO();
我收到以下错误消息:
致命错误:未被发现的错误:
中找不到类'jfactory'
我通过require_once加载了几个joomla级,这是自JOOMLA 3.7.x以来工作的,例如:
require_once("[RootToPath]/libraries/joomla/database/factory.php");
我必须加载哪个joomla级,再次使用此类?
感谢您的帮助。
classmap.php是Sven提到的关键。就特别利用它而言,这对我有用:
define( '_JEXEC', 1 );
define( 'JPATH_BASE', '/Full/Server/Path/To/Joomla/Folder' );
require_once ( JPATH_BASE . '/includes/defines.php' );
require_once ( JPATH_BASE . '/includes/framework.php' );
将访问jfactory和其他" j"项目作为framework.php加载classmap文件。
带有Joomla 3.8的类结构更改。JXXX被替换为"普通"类名称。您需要进行一些类映射,以便可以再次找到旧的JXXX名称。
本课程应该让您入门:https://github.com/joomla/joomla-cms/blob/staging/libraries/classmap.php