Немного были другие дела. Сейчас вернулся опять к этому же вопросу с выводом размера вложений К2. Вот чего удалось достигнуть благодаря участникам этого форума:
Отыскал папку шаблон/html/com_k2/templates/default/ - в ней хранятся файлы отвечающие за вывод категории, материала и т.д.
Создал там файл function.php - в нем будет код проверки на существования файла вложения и вычисления его размера:
Далее переходим к файлу вывода категории, файл: category_item.php
На верху файла после: "defined('_JEXEC') or die('Restricted access');" я подключил мой function.php
И объявил переменную $size, которая возвращается функцией get_filesize.
<?php
include_once "function.php";
$size = get_filesize ($_SERVER['DOCUMENT_ROOT'].'/index.php/sved/item/download/135_1df191053474b87343882d0a0e767b18');
?>
В этом же файле category_item.php, ниже где идет цикл с вложениями я добавил строку:
echo "( <strong>".$size."</strong> )";
Плучается типа: файл.doc (
100 КБ )
Все работает отлично если указать конкретный путь к какому-либо файлу на сервере в get_filesize
Но у вложений К2, путь к файлам немного странный: /index.php/sved/item/download/135_1df191053474b87343882d0a0e767b18
На конце ссылки нет расширения и по этому функция, на первом этапе проверки файла на сущствование возвращает: Файл не найден
Можете подсказать как правильно нужно составить эту строку с путем к вложению:
$size = get_filesize ($_SERVER['DOCUMENT_ROOT'].'/index.php/sved/item/download/135_1df191053474b87343882d0a0e767b18');
В цикле этого же файла ссылка выводится так:
<li> <a title="<?php echo K2HelperUtilities::cleanHtml($attachment->titleAttribute); ?>" href="<?php echo $attachment->link; ?>"> <?php echo $attachment->title ; ?> </a>
<?php if($this->item->params->get('catItemAttachmentsCounter')): ?>
<span>(<?php echo $attachment->hits; ?> <?php echo ($attachment->hits==1)? JText::_('K2_DOWNLOAD') : JText::_('K2_DOWNLOADS'); ?>)</span>
<?php endif; ?>
</li>
Подозреваю, что нужно как-то использовать: $attachment->link