Очередным вопросом, которым я недавно заинтересовался при настройке своего незатейливого авторского проекта, встал вопрос о том, как же считать количество скачиваний того или иного файла, выложенного здесь. Логичнее всего было предположить, что для этого требуется очередной плагин, какой-нибудь download manager, или что попроще – download counter. Порыскав в интернете, оказалось, что как обычно, этих плагинов вагон и маленькая тележка. А вот обзоров их – опять-таки нет. Что выбрать – абсолютно не понятно, и как обычно, пришлось все тестировать на себе. А по результатам тестирования и получился данный обзорчик. Писался он весьма долго, при этом целью не было досканальное тестирование всех приведенных плагинов с полным рассмотрением их настроек, поэтому детальных скриншотов каждого – вы не найдете, но вот ключевые настройки будут. О некоторых вообще говорить не хотелось – настолько бестолковые, но коль уж посмотрел, то совсем ничего не написать – было жалко.
Введение.
Итак, стояла задача – подсчитать количество загрузок того или иного файла, установив счетчик скачиваний для вордпресс. При более внимательном рассмотрении она распадалась на несколько подзадач, а вернее – пожеланий к плагину, который бы ее выполнял. Вот их краткий список:
- Необходимо, чтобы количество скачиваний отображалось где-нибудь в админке, с возможностью сортировки – сколько скачали за день, за неделю, месяц, год, всего
- Желательно, чтобы можно было посмотреть графики/диаграммы скачивания файлов относительно друг друга
- Желательно, чтобы можно было посмотреть графики/диаграммы скачивания файлов во времени
- Желательно, чтобы велась статистика по тому, когда был последний раз скачан файл
- Возможность выводить информацию рядом со ссылкой о том, сколько раз был скачен файл, а также его размер, и дату закачки для пользователя, который только собирается его скачать. Ну или не выводить – по желанию админа
- Возможность вставки кода, за это отвечающего, отдельной кнопочкой в панели написания постов редактора TinyMCE (quicktag-ами пользоваться не люблю)
- Возможность ограничить скорость скачивания (так, на всякий случай)
- Навешивание на данный плагин функции аплоада (загрузки файлов на сервер) – наоборот, нафиг не сдалась. У меня и фтп неплохо работает. Но если не будет особо мешать – то пусть остается
- Неплохо бы иметь возможность прилепить красивую кнопочку к ссылке на скачивание – хотя у меня теперь достаточно прописать class=”button”
1 |
<a class="button" title="Щелк сюда!" href="http://chewriter.ru/downloads/archives/download_counter.rar">Скачать файл!</a> |
Чтобы получилось так:
- Хорошо, если будет считать количество скачиваний не только со своего сайта, а просто по ссылке
- Возможность запретить прямое скачивание файла, не показывая, где же он лежит на сервере.
Такой вот небольшой списочек.
Обзор
После того, как мы определились с ТЗ, приступим к рассмотрению того, что непосредственно нам предлагается.
1. Плагин Download Counter 1.2, скачанный вот здесь.
Изначально страница плагина находилась здесь, но автор уже более 4 лет его не поддерживает. Создаем в директории плагинов для него еще одну папку у меня – download-counter, забрасываем туда оба файла. В результате – где бы вы думали? – в записях появляются для него настройки. Очень оригинально, но ладно.
Заходим внутрь, прописываем путь к файлу download-manager.php (я очень не люблю всякую ерунду прямо в корень бросать). И смотрим, что у нас получилось. Загружаем файл, проверяем, скачивается ли в ручном режиме, если прямую ссылку в браузере ввести, вводим путь в плагине, чтобы создать счетчик. В теории должен создаться ID, который потом необходимо будет везде вставлять. А не получилось ничего – выдает ошибку “Ошибка – Невозможно сохранить запись”. Ну ок, уговорили, перебрасываем в корень download-manager.php – опять ничего, таже ошибка. Ну и черт с тобою, золотая рыбка, не хватало, чтобы я еще разбирался в плагинах, которые автору-то нафиг не сдались. Тем более функциональности – практически ноль.
2. Плагин Download Counter Advanced 1.1, скачанный здесь же.
Скажу сразу, он у меня тоже толком не заработал, поэтому читать о его установке и настройке можно лишь из академического интереса. По сути, это тот же плагин, только слегка видоизмененный. Слава богу, хоть инструкция не переведена – можно нормально прочитать, а не пытаться понять, что же имел ввиду переводчик. Кстати, в админке – представляется совсем другим плагином, предлагая обновиться (да фиг ему). Аналогично предыдущему плагину, его страница находилась здесь, и точно также автор уже более 4 лет его не поддерживает. По аналогии создаем в директории плагинов для него еще одну папку, у меня – download-counter, забрасываем туда все файлы. Настройки выглядят, конечно, побогаче, хотя скорость скачивания ограничивается сразу для всех файлов, а не устанавливается для каждого своя. Где лежит файл download-manager.php определить автоматически не смог, пришлось ручками прописывать – http://chewriter.ru/wp-content/plugins/download-counter/download-manager.php (не забыть в конце название файла, а вот где все загрузки лежат – угадал с первого раза, чем поверг меня в жуткое изумление. Как потом оказалось, это я угадал с названием директории, в которую надо закладывать закачки, здесь моя логика отработала на 100% одинаково с автором плагина.
Добавляем имена папок, которые у нас есть на сервере в каталоге downloads (в настройках “рубрики и директории”), чтобы проще было выбирать путь к файлам. Если их не добавить – то придется загружать все в корень downloads. Сохраняем, можно добавлять загрузки. Вот что у нас примерно получается.
Теперь пробуем вставить в пост. Добавляем ссылку, в ней меняем нашу ссылку на код, который выдается прямо в настройках плагина. И тут… А фиг вам! Ошибка HTTP 500 (Internal Server Error): При попытке сервера выполнить запрос возникла неожиданная ситуация. Ну вот, а я только собирался рассказать, как добавлять счетчик прямо в пост, что если к ссылке внутри <a href=”http://chewriter.ru/filename”></a> добавить <img src=”http://chewriter.ru/download/images/knopka.jpg” />, чтобы получилось
1 |
<a href="http://chewriter.ru/filename"><img src="http://chewriter.ru/downloads/images/knopka.jpg" /></a> |
то можно выводить кнопку скачивания – криво, правда. Вот вам и плагин, зря время потратил. Статистику он особо не ведет, потому где глюк – разбираться не будем.
3. Плагин WP-DownloadCounter 1.01
Это как раз тот плагин, на который предлагался обновится вышеуказанный Download Counter Advanced. Ну предлагает – и ладно, скачаем, посмотрим. Плагин тоже не обновлялся уже более 3 лет, и некоторые пользователи даже сами вносили исправления в его код. Устанавливается вполне успешно, аскетизм настроек оптимизма не вселяет. Кстати, тоже молодцы, догадались, куда настройки разместить – не хуже, чем в предыдущем случае. Добавляем счетчики на странице настройки, все вроде высвечивается, как и должно.
Смотрим, что у нас с добавлением в пост. Ага, никаких кнопок нет. А, ну конечно, я забыл тут же все интуитивно понятно. Лезем в инструкцию. Необходимо городить сложную конструкцию, состоящую из шорткодов типа [downloadsize(archive1)], скачан [downloadcounter(archive1)], и при этом (вероятно из-за чпу) толком он ничего и не считает.
Поэтому дальнейшее его рассмотрение, вместе с идущим к нему плагином Download Counter Chart, выводящим информацию в графическом виде, проводить не будем.
4. Плагин Count Download.
Написан нашим соотечественником, но к сожалению все, что он умеет – это выводить число скачавших файл рядом с его названием – ни статистики, ни каких-либо других плюшек не предусмотрено. Впрочем, если вы любитель минимализма – это то, что надо. Только не забудьте, кнопочек никаких нет, шорткод типа
[download_file url=”upload/countdownload.zip” title=”Счетчик скачиваний”]
счетчик скачиваний для WordPress своими руками
[/download_file]
придется вводить ручками. Весьма хорошо, что автор подробно все расписал, не пришлось тестировать на себе.
5. Плагин Kama’s Click Counter.
Ну если уж речь зашла о плагинах, написанных нашими людьми, то нельзя не упомянуть еще один. Его огромный плюс состоит в том, что он позволяет считать не только количество скачиваний файлов, но также и просто клики на ссылки – не важно, ведут ли они к какому-либо файлу, или просто на другую страницу. Или на файл на чужой странице 🙂 Это он тоже посчитает, ну вернее – теоретически должен посчитать. Со статистикой у него тоже все не ахти как, кнопочек на панели редактирования нет, ограничений по закачкам – тоже. Но посмотреть все же любопытно. Поэтому скачиваем, и устанавливаем. В принципе, достаточно подробное описание есть на сайте автора, поэтому особо распространятся не буду. Необходимо постоянно держать в голове, что если требуется установить счетчик на файл или на ссылку, то следует использовать либо шорткод типа , либо в ссылке вставить класс class=”count”. Это, конечно, напрягает, с кнопочкой было бы гораздо удобнее. Но самое обидное, что после всех телодвижений я так и не смог добиться его адекватной работы – в случае, если использовался шорткод, то не выводилась сама ссылка на закачку, а в случае, если использовался класс – не появлялась в админке статистика по ссылкам. Скриншоты можно посмотреть у автора – если сама идея вам понравилась – пробуйте, может у вас получится.
6. Плагин Simple Download Monitor 0.22
Действительно, очень простой. Не требуется никаких шорткодов, и т.п. Однако, этот плагин предоставляет статистику только для автора, для посетителей же, рядом с ссылкой на файл, она не выводится.
Впрочем, необходимо отметить, что ведется подробная статистика, кто и когда скачал какой файл. Впрочем, пользоваться ей не сильно удобно.
Среди настроек присутствуют следующие:
- Можно указать директорию, из которой разрешено скачивать файлы
- Можно указать типы файлов, которые разрешено скачивать
- Запретить считать скачивание файла автором
- Выставить в секундах интервал, в течение которого повторные нажатия на ссылку с одного и того же IP будут посчитаны только один раз
- Ограничить число файлов, которые можно скачать с одного IP в день
- Использовать какую-либо промежуточную страницу с информацией о том, что скачивание сейчас начнется
Однако, все это работает, только если у вас либо (как бы это попроще-то сказать…) разрешено редактирование файла .htaccess, либо если вы указываете ссылку в прямом виде, вставляя в
“a href” ссылку не типа http://chewriter.ru/downloads/archives/download_counter.rar, а типа http://chewriter.ru/index.php?sdmon=downloads/archives/download_counter.rar
Впрочем, поскольку возможность выводить статистику для пользователей у него отсутствовала, а запоминать вид ссылки не хотелось, на этом я его рассмотрение и прекратил, решив вернуться, только если остальные плагины в очереди не смогут решить поставленной задачи.
7. Плагин Electric Studio Download Counter 1.1
В смысле отображения информации, этот плагин весьма схож с рассмотренным в предыдущем пункте. Отличается тем, что позволяет посмотреть статистику отдельно понедельно, помесячно, за любой период и просто топ-10. По своим возможностям – он гораздо более убог, нет ни статистики по последнему скачиванию, ни по конкретному файлу, не говоря уже о возможности ввести ограничения на скачивание файлов. Внятная документация вообще отсутствует. У меня возникло впечатление, что это просто недоразумение какое-то, а не плагин. Скриншоты даже и приводить не хочется, но чтобы быть объективным – все-таки приведу, авторские.
8. Плагин WordPress Download Monitor 3.3.5.7
Ну вот мы и добрались до чего-то более-менее достойного. Почти пол-миллиона скачиваний – это о чем-то говорит. Официальная страница плагина находится здесь. Для того, чтобы вставить файл в запись, необходимо воспользоваться стрелочкой над визуальным редактором (в нем самом иконки не появляется)
И в появившемся окне выбрать необходимый файл (это пример, если он уже закачан по фтп)
Затем, нажать на кнопку “Save new download”
и, перейдя на следующий экран, выбрать формат скачивания, и нажать на Insert into post. Не исключено, что ничего не произойдет. Плагин слегка проглючивает с последними версиями вордпресс. Поэтому надо дополнительно нажать на ссылку View Downloads
И уже тогда, выбрав сначала формат скачивания, нажать на ссылку Insert напротив именно того файла, который надо вставить.
После чего в записи возникнет соответствующий шорткод типа
1 |
[download id="7592" format="1"] |
Плагин требует тонкой ручной настройки, но никаких WYSIWYG-ов не предусмотрено. Хорошо, что нужно только один раз настраивать. Подробная документация находится на сайте автора.
Вот пример настройки:
1 |
<a href="{url}" title="Скачан {hits,"ни разу","1 раз","% раза"}">{title}</a> - {description}, {size}, Загружен {date,"Y-m-d"}, Скачан {hits} раза |
В этом случае ссылка будет выглядеть следующим образом:
Необходимо отметить, что склонения не поддерживаются, т.е. если файл скачали 21 раз, а у вас в шаблоне стоит “раза” – то звучать это будет несколько не по-русски.
А вот вариант с кнопкой:
1 |
<a href="{url}" title="Скачан {hits,"ни разу","1 раз","% раза"}"><img src="{image_url}" alt="{title}" /></a> - {description}, {size}, Загружен {date,"Y-m-d"}, Скачан {hits} раза |
Выглядит так:
Ну а у меня после некоторой доработки стал выглядеть так (пока еще без кнопочек):
Код строки:
1 |
{filetype_icon} <a href="{url}" title="Скачан {hits,"ни разу","1 раз","% раза"}"><strong>{title}</strong></a> (Размер файла: {size}, Загружен: {date,"d.m.Y"}, Скачан {hits} раза) <br />{description} <br /> |
Список возможностей достаточно широк:
- Можно закачивать файлы как с его помощью (при нажатии на стрелочку), так и указывать место, где они лежат, если были закачаны ранее по фтп, можно просто указать URL
- Скрывает истинное местонахождение файла, можно подставить любую необходимую комбинацию URL
- Можно сконфигурировать таким образом, чтобы для посетителей выводилась информация о том, какой размер файла, сколько раз был скачан, когда загружен
- Можно выводить иконку для соответствющих типов файлов
- Можно использовать кнопку для скачивания, в том числе и свою
- Не считаются скачивания админом, и всех ненужных IP, включенных в лист исключения счетчика
- Можно сбрасывать счетчик, или задавать необходимое значение
- Считать ли повторные скачивания в течение определенного времени с одного и того же IP
- Можно задать несколько форматов – с картинкой, со счетчиком, без счетчика, и т.д., и использовать каждый из них в соответствующей ситуации
- Есть выгрузка лога скачиваний в виде csv файла
В случае, если выкладывается какой-либо mp3 или видео файл – надо для них указать, force download, или нет. Если force – то по клику на него, он будет скачиваться, если галочку не ставить – воспроизводиться, тогда сохранение – правой кнопкой мыши. Хочу отметить то, что файлы, закаченные с его помощью кладутся не туда, где создана ваша спец-директория для файлов, а в создаваемую им wp-content/uploads/downloads/ – необходимо помнить об этом, как и о том, что при удалении их из статистики – удаляются и физически файлы с сервера. С теми, что закачаны по фтп – все ОК. Плюс, если вставить ссылку в разных постах на один и тот же файл – то я не разбирался, будет ли он их суммировать. К сожалению, не поддерживает никаких ограничений по скачиванию, кроме того, что можно запретить скачивание всем, кроме зарегистрированных пользователей. Когда хочется отображать в нижней строке браузера название файла, или необходимо поменять на его ID – необходимо не забыть зайти в параметры->постоянные ссылки, и сохранить там конфигурацию, чтобы все правильно прописалось в .htaccess – без этого файлы скачиваться не будут!
Статистика выводится в сразу в трех местах – в консоли, в информации о файлах, и в логах скачивания. Это создает определенные неудобства, например, когда необходимо посмотреть, когда какой-либо файл был скачен последний раз, но можно выгружать статистику в виде csv файла, и потом разгребать уже в экселе. С учетом того, что эксель имеет дьявольские возможности по построению необходимых таблиц и диаграмм – то может, это и неплохо. Впрочем, думаю скриншоты скажут больше:
Ну и скриншот непосредственно лога:
При этом огромный плюс – в консоли появляется виджет со статистикой вот такого вот вида:
В целом – можно сказать, что после небольшой настройки, плагин свое дело делает просто отлично.
9. Плагин WP-DownloadManager 1.6
Этот плагин был написан тем же автором, что и плагин WP-Polls, который я, к примеру, использую на этом сайте. Хотя и пользуется, по сравнению с ним, на порядок меньшей популярностью. Но давайте смотреть, заслуженно ли. Всю документацию можно найти на сайте автора. По своей сути плагин абсолютно идентичен предыдущему – точно также прописывается темплэйт, отсутствуют ограничения на скачку, кроме зарегистрированных-незарегистрированных пользователей,точно также требуется использовать шорткод вида
1 |
[download id="7592"] |
ну и по остальным пунктам:
- Можно закачивать файлы как с его помощью (до двух Мб, ну или сколько там у вас указано в php.ini), так и указывать место, где они лежат, если были закачаны ранее по фтп, можно просто указать URL
- Скрывает истинное местонахождение файла, но подставить любую необходимую комбинацию URL не представляется возможным, есть только несколько фиксированных вариантов, основной из которых у меня не заработал
- Можно сконфигурировать таким образом, чтобы для посетителей выводилась информация о том, какой размер файла, сколько раз был скачан, когда загружен
- Можно выводить иконку для соответствющих типов файлов
- Можно сбрасывать счетчик, или задавать необходимое значение
Однако, есть и некоторые отличия. Во-первых, отсутствует кнопка в визуальном редакторе, с помощью которой можно вставить шорткод. Вернее, кнопка-то есть, но для того, чтобы ей воспользоваться, необходимо сначала в настройках плагина добавить счетчик для файла, а потом уже этой кнопкой будет добавлен ID счетчика непосредственно в пост. Во-вторых, темплэйт только один, и выводить для разных файлов разную информацию не получится. Из плюсов статистики – показывает, когда последний раз был скачан файл, в остальном – только минусы – ни выгрузки в csv файл, ни просмотра того, кто скачал (отсутствуют IP), ни распределения по датам.
Но вот иконки – посимпатичнее (я их потом приделал к предыдущему плагину). Результат его работы выглядит следующим образом:
Также при удалении записи из базы данных, спрашивает – а необходимо ли еще и сам файл удалить, или оставить. Но по совокупности свойств он мне понравился меньше, чем предыдущий – хотя бы тем, что вставлять файл надо отдельно вне поста, однако и особых минусов не имеет – выбор между ними – дело вкуса, у первого – побольше опций, более подробная статистика, у второго – немного более удобная (хотя и более бедная) статистика, и меньше возможностей.
10. Плагин WP-Filebase Download Manager 0.2.9.19
В дело пошла тяжелая артиллерия. Плагин большей частью руссифицирован, и представляет из себя именно менеджер закачек, а не счетчик. Имеется возможность ограничить скорость скачивания, и количество загрузок на человека в день.
Но я бы сказал, что некоторые возможности данного плагина излишни, а нужных по статистике – не хватает. Очень много настроек, виджеты закачки, сложная система синхронизации, система вывода mp3 тегов, отображение flv файлов, организация мини-файлохранилища, вывод всех указанных на странице файлов в начале или конце поста, и т.д., и т.п.
Скриншоты всех настроек даже и приводить не хочется.
Однако при всем этом – чтобы красиво вывел шаблон в записи – пришлось редактировать в нем файл стиля, уменьшая ширину . Плюс для того, чтобы вывел дефолтный темплейт – приходится после вставления шорткода кнопочкой
вводить ручками в код название темплейта. Какой-то конфликт с русским названием. Выглядит, он кстати, так (приведу сразу три варианта шаблонов):
Считает – через пень-колоду (ну или больше одного скачивания с IP не считает, не знаю уж). Статистика убога чуть менее, чем полностью, весьма схожа с только что рассматривающимся выше плагином.
В общем, у меня оставил впечатление – здоровый, да бестолковый. Годится под какое-нибудь файл-хранилище, да и то – если в совокупности с каким-либо другим плагином. Посмотрел я на него – да и снес.
11. Плагин WordPress Download Manager 2.2.8
Откровенно говоря, когда я прочитал его описание, то подумал – что вот оно, то что мне надо!
Счетчик, защита паролем, шорткод вставляемый кнопкой, редактируемая кнопка, и т.д.
А выглядит вот так (привел сразу два используемых три шаблона):
Однако, для того, чтобы добавить файл – во-первых необходимо добавить для него счетчик в плагинах. Во-вторых – статистика вообще практически отсутствует.
В третьих – нельзя задать вывод отображения размера файла для пользователя. В четвертых – нет ограничения на скорость скачивания, есть только защита файла паролем. Редактировать шаблоны – нельзя. И большая надпись с предложением купить премиум-версию за 45 баксов. Ну, в общем, вы поняли. Всё вкусное – за бабки. Деактивировал, да снес. А красивые рамочки, кнопочки, и т.д. – я и сам в стилях пропишу, когда захочется.
Резюме
Как оказалось, среди 11 рассмотреных плагинов счетчиков загрузок не нашлось ни одного полностью удовлетворившего меня по всем параметрам – в каждом из них чего-то не хватало. Хуже всего обстоит дело со статистикой – графиков и красивых диаграмм, которых я так люблю, днем с огнем не сыщешь – нашлись только в одном (не считая платных). Так что в результате я его и выбрал – WordPress Download Monitor 3.3.5.7 (кстати, пока писал этот обзор, он успел обновиться до 3.3.6.2), доработав его парой иконок из WP-DownloadManager 1.6. Да, в результате отсутствует ограничение по скорости скачивания, и защита файлов паролем – но если немного подумать – а так ли оно нужно, если я выкладываю файлы специально, чтобы поделиться ими с другими? В остальном же, прописав несколько шаблонов – получилось все достаточно неплохо. Для того, чтобы продемонстрировать полученный результат на примере – выложу прямо его (версия 3.3.6.2 с четырьмя замененными иконками и переархивированная в .rar):
WordPress Download Monitor 3.3.6.2 (985 Загрузок )Установить стандартным образом (путем копирования в директорию wp-content/plugins/download-monitor/, дать обновиться, заменить все иконки на иконки из архива в директории wp-content/plugins/download-monitor/img/filetype_icons/ и активировать.
В дальнейшем, если руки дойдут, я думаю оформить ссылки в симпатичные рамочки с помощью css3, о чем скорее всего тоже напишу. Оставайтесь с нами 🙂
Upd. Сейчас автор переработал плагин WordPress Download Monitor, и создал абсолютно отличающуюся от исходной версию. Я проверил ее, но мне она понравилась гораздо меньше по причине того, что темплэйт формы того, как будет выглядеть ссылка на скачивание, теперь так просто не редактируется. Автор решил, что достаточно будет готовых предустановленных видов. К примеру, если в меню downloads, дальше – settings выбираете нужный вид из шести предустановленных, нажимаете сохранить
То при выборе второго варианта получаете что-то типа такого:
Т.е. на новой версии воспользоваться приведенной мною в описании строкой не выйдет, а необходимо будет писать специальный php файл, который этот темплейт вывода описывал бы. Но самое печальное даже не это – а то, что этот php файл, если его положить в директорию с плагином – будет затираться каждый раз при обновлении плагина. А если положить его в каталог с темой – то при смене темы (хотя это, конечно, случается гораздо реже). Но в любом случае – написание его – задача довольно трудоемкая, и пока у меня этим желания заниматься нет. Так что единственный плюс обновленного плагина – в том, что там исправлены ошибки и уязвимости старого, а остальное – имхо только минусы. Но если у вас не работает старая версия – то это, пожалуй, единственный выход.
Дмитрий Черайтер.
Этот материал может быть скопирован при сохранении активной ссылки на оригинал.
Добавить комментарий