获取模板作者和许可证

时间:2019-04-19 10:03:43

标签: php joomla3.0

基于此示例代码,在Joomla 3.9.5上

$app            = JFactory::getApplication();
$getTemplateId  = $app->getTemplate('template')->id;

我正在尝试从XML / SQLdb获取模板作者和许可证

$app                = JFactory::getApplication();
$getTemplateAuthor  = $app->getTemplate('template')->author;
$getTemplateLicense = $app->getTemplate('template')->license;

这当然是行不通的,所以我会对任何建议感到满意。

1 个答案:

答案 0 :(得分:0)

在phpMyAdmin中调查了数据库之后,我想出了这个解决方案

// get app
$app = JFactory::getApplication();
// get template
$templateName = $app->getTemplate();
// hook Joomla Database API
$db = JFactory::getDbo();
// set query
$db->setQuery("SELECT manifest_cache FROM #__extensions where `type` = 'template' AND `element` = '".$templateName."'");
// extract the manifest_cache column
$templateMETA = $db->loadObject()->manifest_cache; 
// decode JSON and build an object
$templateMETA = json_decode( $templateMETA );
// set author&license
$author = $templateMETA->author;
$license = $templateMETA->license;

manifest_cache包含模板以及任何Joomla扩展元信息。

希望这对某人有帮助。