我正在尝试构建一个joomla模板,并希望包含一个图片上传选项,供用户上传徽标的自定义图像。
目前我有这样的结构:
在我的templateDetails.xml
:
<config>
<fields name="params">
<fieldset name="basic">
<field name="logofile" type="media"
directory="images"
label = "Logo"
description ="Choose a logo"/>
</fieldset>
</fields>
</config>
然后在我的index.php
:
// Getting params from template
$params = JFactory::getApplication()->getTemplate(true)->params;
$app = JFactory::getApplication();
$doc = JFactory::getDocument();
$this->language = $doc->language;
$this->direction = $doc->direction;
// Detecting Active Variables
$option = $app->input->getCmd('option', '');
$view = $app->input->getCmd('view', '');
$layout = $app->input->getCmd('layout', '');
$task = $app->input->getCmd('task', '');
$itemid = $app->input->getCmd('Itemid', '');
$sitename = $app->getCfg('sitename');
$logo = $this->params->get('logo');
然后在我的身体深处,我尝试输出$logo
变量,但它在屏幕上什么也没显示....
<a href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template; ?>/<?php echo $logo;?>
任何人都知道我可能会出错?非常感谢任何帮助或建议。
EDIT 取得了一些进展。
当我上传图像时,它们存储在joomla目录的默认图像文件夹中。我将图像复制到我的模板图像文件夹中并设法使用它来显示:
<img src="<?php echo $this->baseurl ?>/templates/<?php echo $this->template; ?>/images/logo2.png"
然而,由于未使用$logo
,因此它不是动态的。它似乎根本没有赋予任何价值。