2015-08-26 114 views
0

我想实例化一个Joomla2.5组件(JoomShopping)并通过它的一些方法从它获取一些信息。但我想从另一个PHP应用程序执行此操作。我试图从Joomla的index.php中包含如下所示的主要项目,但JSFactory对象没有实例化。我如何激活这个组件,以便我可以查询它?从外部脚本查询组件

define('_JEXEC', 1); 
define('DS', DIRECTORY_SEPARATOR); 
define('JPATH_BASE', dirname(__FILE__)); 
require_once JPATH_BASE.'/includes/defines.php'; 
require_once JPATH_BASE.'/includes/framework.php'; 
$app = JFactory::getApplication('site'); 
$app->initialise(); 
$app->route(); 
$app->dispatch(); 

$pm_method = JSFactory::getTable('paymentMethod', 'jshop'); 
$pmconfigs = $pm_method->getConfigs(); 
print_r($pmconfigs); 
+0

也许你可以扩展JoomShopping有一些URL在JSON中输出你需要的东西,并让其他应用程序读取它? – Samuel

回答

0

找到我自己的答案:-)

只需设置$ _ SERVER [“REQUEST_URI”]的东西,会导致的Joomla框架将请求路由到您想要的组件。在我的情况下,将URI设置为'/ Loja'导致JoomShopping组件被安装,所以它的所有类都存在供我查询。