Если посмотреть на хорошую функцию скачивания, то есть количества загрузок файла по ссылке или который загружен на ваш сайт, но вы этим не останавливаетесь и хотите дать пользователям хороший сервис и используйте другие дополнительные поля к примеру для ссылок, или еще хуже когда пользователи выставляют ссылки прямо в тексте, и тогда счетчик не считает не чего.
Внимание данный код работает как в модуле
каталога файлов так и в
каталоге сайтов , проверка на работу была сделана на нашем сайте http://ucozon.ru , скажу вам что тест драйв пройден успешно и можно располагать на своем сайте подобные работы для улучшения ведения самой статистики в каждой новости на скачивание.
Ниже пред ставленый скрипт позволяет в корне эту проблему изменить тем что он создает поиск ссылок в заключенном коде, и если кто то по этой ссылке кликает то происходит параллельный клики и по ссылке за груженого файла что выдает нам счет кликов уникальных по любой ссылке на один счетчик скачиваний.
Как работает скрипт все просто, посылается запрос на "
адрес_материала-20", что на Ucoz отвечает за ссылку на скачивание с удаленного сервера. Юкоз по этому адресу возвращает ошибку (так как файла на скачку нету), однако счетчик скачек при этом срабатывает.
Вот такой вот нужный и полезный скриптик, единственный минус того что автор описывает то что при правом клике и открытие ссылки не срабатывает счет скачиваний, но как правило так не кто не использует форму вашего сайта.
Установка скрипта:
Вся установка производится в шаблоне "
Страница материала и комментариев к нему". Для начала поместим код
$MESSAGE$ в блок, в котором будет происходить поиск ссылок:
Code
<div id="files">$MESSAGE$</div>
Я выбрал jQuery версию так как она более меньше и работает реально и проверено, данный код скрипта вставляем или после
$MESSAGE$,
$BODY$ или перед закрывающемся
body, главное что бы было ниже ID files
Code
<!-- Счетчик загрузок -->
<script type="text/javascript">
var messageContainer = document.getElementById('files');
var sites = new Array('depositfiles', 'letitbit', 'vip-file', 'turbobit', 'upload24', 'hotfile', 'uploadbox', 'ifolder', 'rapidshare', 'hitfile', 'shareflare', 'ucozon', 'narod');
var links = messageContainer.getElementsByTagName('a');
for (var i = 0; i < links.length; i++) {
for (var j = 0; j < sites.length; j++) {
if (links[i].href.indexOf(sites[j]) != -1) {
links[i].onclick = load_count;
}
}
}
function load_count(){
var counterLoc = location.pathname + '-20';
$.get(counterLoc);
}
</script><!-- /Счетчик загрузок -->
Настройка :
В ниже указанной строке скрипта необходимо прописать таким же образом нужные вам хранилище файлов, как по примеру остальных.
Code
var sites = new Array('depositfiles', 'letitbit', 'vip-file', 'turbobit', 'upload24', 'hotfile', 'uploadbox', 'ifolder', 'rapidshare', 'hitfile', 'shareflare', 'ucozon', 'narod');
Это массив со списком файловиков. Скрипт проверяет наличие этих строк в ссылках. Так, что если вам понадобится добавить еще пару файло-обменников, просто допишите часть их доменов в эту строку.
Автор: Arkadievich