我有一个销售下载的Joomla 3.4.8网站。我的购物车是一个插件。我想将购物车插件指向另一台我的下载服务器。这将减轻我的网站服务器的负担。我找到了一个指向下载文件目录的函数,但我不确定如何改变它,因为它似乎有一些自定义的Joomla代码。我意识到这个函数示例只显示了文件大小,但是如果我能弄清楚如何更改这个部分,我还可以改变引用这个目录/media/com_eshop/files/
的其他PHP文件。
所以我基本上需要改变
/media/com_eshop/files/
到
http://example.com
不知。
/**
*
* Function to display list downloads for user
* @param string $tpl
*/
function _displayDownloads($tpl)
{
$user = JFactory::getUser();
if ($user->id)
{
$tax = new EshopTax(EshopHelper::getConfig());
$currency = new EshopCurrency();
$downloads = $this->get('Downloads');
foreach ($downloads as $download)
{
$size = filesize(JPATH_SITE.'/media/com_eshop/files/'.$download->filename);
$i = 0;
$suffix = array(
'B',
'KB',
'MB',
'GB',
'TB',
'PB',
'EB',
'ZB',
'YB'
);
while (($size / 1024) > 1)
{
$size = $size / 1024;
$i++;
}
$download->size = round(substr($size, 0, strpos($size, '.') + 4), 2) . $suffix[$i];
}
$this->downloads = $downloads;
// Warning message
$session = JFactory::getSession();
if ($session->get('warning'))
{
$this->warning = $session->get('warning');
$session->clear('warning');
}
parent::display($tpl);
}
else
{
$mainframe = JFactory::getApplication();
$uri = JUri::getInstance();
$mainframe->redirect('index.php?option=com_users&view=login&return=' . base64_encode($uri->toString()));
}
}
答案 0 :(得分:0)
好JPATH_SITE。'/ media / com_eshop / files /'表示http://example.com/media/com_eshop/files
JPATH_SITE是已安装的Joomla网站的路径。
所以我认为你基本上可以改变这一行:JPATH_SITE。'/ media / com_eshop / files /'
到'http://downloads.example.com/files/'
或者其他什么。 请注意,我没有测试这个,但我认为它会起作用