Счётчик скачанных файлов для блога


Недавно я снова поднимал тему о счётчиках просмотра страниц в блоге, теперь самое время рассказать об ещё одном счётчике, который отсутствует "из коробки" в Blogger - это счётчик загрузок, классическая цифра "сколько раз скачали" рядом с ссылкой на загрузку файла.
Работать данный способ будет на любом блогодвижке!

Сначала смотрим демку (учитывается каждое обращение к файлу, не забудьте обновить страницу, чтобы увидеть новое значение счётчика):

Скачать библиотеку jQuery v.1.4
Этот файл скачали раз.

Прежде чем начать, перечислю всё, что понадобится для установки:
-- внимательность
-- знание клиента ftp FileZilla
-- хороший внешний хостинг (бесплатный тоже подойдёт), поддерживающий php/желательно (но необязательно) со своим доменом

Установка.
** Если вы ещё не догадались, то мы будем делать собственный сервис для своего блога со счётчиком и сбором статистики по закачкам.

Теперь скакачиваем к себе на жёсткий диск полный набор скриптов под названием Click (Download) Counter. Скрипт немного шароварный, предлагается потратить 14 баксов на лицензию. Для индивидуального использования она не нужна, а внешняя ссылка на разработчика в админке мешать не будет, поскольку скрипт у нас не в блоге, а на хостинге. Других ссылок я не нашёл.

Распаковываем архив в папку ccount.
Его структура такая:


Инструкция на английском языке находится в readme.htm. В ней говорится о первичной настройке:
Открываем конфиг settings.php через любой html редактор или wordpad. У меня Linux, и я использую для этого блокнот gedit.

В этом конфиге данные приводим к таком виду:

/* Password for admin area */
$settings['apass']='пароль-админа-на-латинской-раскладке-или-цифрах';

/* URL of the click.php file */
$settings['click_url']='http://ваш-хостинг/ccount/click.php';

/* Count UNIQUE clicks ONLY? 1 = YES, 0 = NO   */
$settings['count_unique']=0;

/* Number of hours a visitor is considered as "unique" */
$settings['unique_hours']=24;

/*** OPTIONAL SETTINGS BELOW ***/

/* Name of the log file */
$settings['logfile']='clicks.txt';

/* Name of the file where last ID number is stored */
$settings['idfile']='ids.txt';

Первые два пункта, думаю, объяснять не надо. Третий, unique clicks - это "уникальные" скачивания, то есть статистика ведётся по кукисам браузера: 1 браузер - 1 закачка, и не важно, сколько вы раз щёлкнули по ссылке. Для "да" ставим 1, для "нет" оставляем 0. Четвёртый параметр определяет время, сколько будут учитываться эти самые кукисы. По умолчанию стоит 24 часа (сутки). После два параметра - пути к лог-файлу и файлу с id-линками трогать не надо.
На этом первый этап настройки завершён.

Открывайте FileZilla и закачивайте папку ccount на свой хостинг. После этого поставьте права 666 для файлов clicks.txt и ids.txt.
Попробуйте зайти в админку по адресу http://ваш_хостинг.ру/ссount/ , введя пароль, который указывали в settings.php.

Использование.
Админка выглядит так (я уже намулевал кисточкой на скриншоте):


Админ-панель скрипта состоит из трёх частей:
В первой, верхней (выделена жёлтым), отображена статистика файлов
Во второй, средней (выделена голубым) добавляется ссылка и название для неё.
В третьей, нижней (выделена оранжевым) снимаются и восстанавливаются бекапы (вот для этого и хорошо иметь хостинг со своим доменом, чтобы на случай переезда не пришлось редактировать все ссылки).

После того, как вы введёте линк на файл, предположим, это http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js и название jQuery (длинные админка не разрешает) и нажмёте кнопку add link, появится окно, в котором будет показан новый линк вида: http://ваш-хостинг.ру/ccount/click.php?id=1. Это новая ссылка для вашего файла!
Если щёлкнуть по ней, скрипт на хостинге примет запрос и переадресует на http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js, а в статистику запишет +1 обращение к файлу.

Ну а чё в блог-то писать?
Ссылка без счётчика.
При написании поста вставленная ссылка вместо:
<a href="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" rel="nofollow">Скачать библиотеку jQuery</a>

будет выглядеть так:
<a href="http://ваш-хостинг.ру/ccount/click.php?id=1" rel="nofollow">Скачать библиотеку jQuery</a> 

Ссылка + счётчик.
Для того, чтобы задействовать счётчик нужно сделать ещё кое что.
А именно: прописать в <head></head> шаблона своего блога такой линк:
<script language="Javascript" rel="nofollow" src="http://ваш-хостинг.ру/ccount/display.php">
<!--
//-->
</script>

Теперь вспомним, что в http://ваш-хостинг.ру/ccount/click.php?id=1 наш самодельный сервис присвоил ссылке id=1 . Запоминаем эту цифру-идентификатор линка в базе (на примере это единичка).

А полностью код для вставки в блог будет выглядить вот так:
<a href="http://ваш-хостинг.ру/ccount/click.php?id=1" rel="nofollow">Скачать библиотеку jQuery</a> 
Этот файл скачали <script language="Javascript">
ccount_display('1')
</script> раз.
В который нужно записать идентификатор (в display('id вашей ссылки')), а также текст, который будет спровождать счётчик, типа: "этот файл скачали_раз"

Лёгкий тюнинг.
Вы можете внести небольшое разнообразие, раскрасив счётчик. Для этого подставьте текст с ссылкой и скриптом внутрь тега <font color="цвет_фона"></font>.
Где вместо цвет_фона надо подставить его html номер. Выбрать цвет можете здесь.

Заключение
Проделав все вышеописанные шаги, вы получаете свой собственный сервис со статистикой и счётчиком закачек для блога. Как я и говорил, этот способ будет работать на любом движке, поддерживающем javascript.

Да, и не забудьте поблагодарить автора этого шедевра! Потратьте одну минуту: перейдите на эту страницу и поставьте свою оценку (полоска с перцами).

Что ещё интересного?
Настраиваем счётчик просмотров страницы для Blogger.

7 комментариев:

  1. В качестве постскриптума:
    это отличный способ прятать реферальные ссылки :)

    ОтветитьУдалить
  2. Анонимный13 мая 2012 г., 19:28

    Да...дизайн явно надо было бы сменить:)
    Тёмно-зелёный цвет отлично подошёл бы xD

    ОтветитьУдалить
  3. Да статья интересная спасибо у меня только вопрос, я это в вордпресс прикручу?) Если да то вообще супер будет)))

    ОтветитьУдалить
  4. Да, конечно прикрутите. Скрипт изначально рассчитан на standalone блоги, типа вордпресс. Кидайте в отдельную папку на своём хостинге.

    ОтветитьУдалить
  5. Этот комментарий был удален автором.

    ОтветитьУдалить
  6. Можно все зделать и без скрипта! Только РНР!
    Всего лиш надо зделать файл download.php где будет стоять щетчик (например запись в файл) и делать редирект на сам файл что скачиваетса (через header('Location: ''); ). Вот и все! И никакого скрипта :)!

    ОтветитьУдалить