14. February 2016


wp-shortstat is a litte statistics plugin for WordPress up to version 3.3.1. The plugin was written by Jeff Minard but the latest original version does not work with WordPress 2.02. I fixed this problem and developed further changes to the plugin. Some changes from other people are also included. To send Patches mail to mk(at)happyarts.de

Download the latest version as zip version.


Installation instructions: copy wp-shortstat.php and your language file *.mo (optional) per ftp to your „your_blog/wp-content/plugins“ directory and activate the plugin in the WordPress|Plugins|Plugins-menu. Now you can visit your statistics in WordPress|DashBoard|ShortStat.

Slovene translation from Vid Kosir, Spanish translation from Jaime Gómez Obregón

Update: If you have a large database, you may delete old statistic entries before 2007 with the SQL „SELECT FROM wp_ss_stats WHERE dt < 1167609599“. More about this topic in article „WordPress Tip: Reduce the Size of the WP-ShortStat Database Table“


Version 1.17a (5. October 2011)

  • lithuanian translation from professional translator Nata Strazda, http://www.webhostinggeeks.com
  • ukrainian translation from professional translator Alyona Lompar, http://webhostingrating.com
  • romanian translation from Alexander Ovsov, Web Geek Science http://webhostinggeeks.com

Version 1.16 ( 25. February 2011)

  • translatetion to Bulgarian language from Dimitar Atanasov
  • encoding fixed (Thx to Alexey Demakov)

Version 1.14c (28. July 2009 )

  • disabled more error warnings
  • added new russian translation from Fat Cow
  • Patch from hacker-piao: fixed possible security vulnerabilities

Version 1.14b (19. February 2009 )

  • fixed php warning
  • patch from Eric Caron: fixed possible security problem (prevent SQL injections)

Version 1.14a (08. January 2009)

  • removed support for wordpress before version 2.3, tested up to version 2.7
  • fixed creation of tables at setup
  • compatibility fix for WP_MU
  • removed deprecated functions
  • disabled the country detection, because whois.happyarts.de is not working anymore and there where no more updates to the country panel
  • little bit more space for the modules
  • language template is now included in standard download file

Version 1.13c (14. April 2008)

  • Small changes, maybe improving compatibility with WordPress 2.5
  • Corrected handling of hits having no referrers as suggested by Stian

Version 1.13a (14. November 2007)

  • fixed Bug with not working Browser and Platform Tabs (Thx to Stian for fixing the bug)
  • show percent in Countries tab
  • calculate percentage in Browsers and Platforms tab relative to all hits, where these information are known, not to all hits

Version 1.12b (2. October 2007)

  • small compatibility fix for WordPress 2.3, tested with WordPress 2.3.1
  • we had to switch off the whois.happyarts.net UDP server because of massive server stability problems. We are investigating the problem and may start the service again. Untils this, there is no country code detection possible. Another way to fix this problem would be a local database with ip-ranges and countries. If someone want to write this…

Version 1.12a (8. Januar 2007)

  • new database format, about half the size of the old format
  • added blogger.com to detected search engines
  • fix for broken referer
  • added debug version which shows all errors
  • some internal fixes (uninitialized variables, …)
  • disabled old country detection code
  • If you wish to compress your SQL database to about half of the original size, execute these SQL statements once (replace all ‚ with the standard character before)

    UPDATE ‚wp_ss_stats‘ SET ‚language‘ = “ WHERE ‚language‘ = ‚empty‘
    UPDATE ‚wp_ss_stats‘ SET ‚browser‘ = “ WHERE ‚browser‘ = ‚Indeterminable‘
    UPDATE ‚wp_ss_stats‘ SET ‚version‘ = “ WHERE ‚version‘ = ‚Indeterminable‘
    UPDATE ‚wp_ss_stats‘ SET ‚platform‘ = “ WHERE ‚platform‘ = ‚Indeterminable‘
    ALTER TABLE ‚wp_ss_stats‘ CHANGE ‚country‘ ‚country‘ CHAR( 2 ) NOT NULL
    ALTER TABLE ‚wp_ss_stats‘ DROP ‚user_agent‘

Whois PHP service switched off (13. December 2006)

Now it is 6 months ago that we wrote and launched the UDP-based whois service on our server to process the whois queries in wp-shortstat. The new service replaces the old PHP based ip2country.php script which should not be used anymore. Please download the latest version of wp-shortstat to use the UDP service because the PHP based is switched off now.

Version 1.11 (27. June 2006)

  • fixed lost referer for some strange php configurations

Version 1.10 (22. May 2006)

  • More timeout handling for UDP connect/usage
  • If UDP connect to http://whois.happyarts.net fails, use old TCP algorithm
  • Show feed hits separatly

Version 1.9b (11. May 2006)

  • We added a new country detection service, using our own server written only for wp-shortstat (using c# with mono) and UDP, instead of HTTP with php/apache/mysql as server. We hope, that we can rise the limit of 5 queries/second to at least 50 queries/second. This should also improve the performance of your weblog. Please donate to allow us to improve this service.
  • search termes with special characters (all chars not included in US-ASCII) where not handled correctly
  • more charset problems fixed, we use html entities instead of unicode for output now
  • added new module: „Last Keywords“, shows the last couple of search keywords extracted from the referrers
  • Improved CSS a little bit

Version 1.8 (23. April 2006)

  • added PHP 5 compatibility
  • added more search engine strings

Version 1.7h (06. April 2006)

  • Localized date strings
  • Search terms are now converted to blog charset
  • Fixed more date/time offset problems. Incorrect timestamps where written to the database if server time and wordpress time are differ (thx to John Holman and James Skemp)
  • Added detection to more newer browsers like Safari 2.0.2-2.0.3 and others (thx to Sean Park)
  • Stripp PHP-SessionID from referrer string
  • Added three russion search engines (from http://register.intruder.ru)
  • Test if function mb_convert_encoding exists, because not all PHP installations have this function
  • Don’t foget to adjust your daylight saving time (+1) in Admin|Options|General

Version 1.6 (27. Feb. 2006)

Version 1.5a (17. Feb. 2006)

  • We from Happy Arts added a new server service: whois.happyarts.net. This service determinates the country from an IP address, using a 300 MB MySQL database from http://www.hostip.info. We could not use hostip, it is to slow and whois.wordpress.de doesn’t work anymore. This fixes the problem that the languages are „Indeterminable“.
  • Fixed some quote marks in incorrect charsets (thx to David), fixed title for links in the two referrers boxes

Version 1.4a

  • for performance reasons show only the last 7 days of hits statistics
  • speedup for weekly statistic (nearly doubled the performance)
  • fixed time difference in weekly statistics

older changes:

  • new host for detecting country code (thx to wordpress.de)
  • fixed time offset calculation in wp_shortstat_display_stats, TodayHits and UniqueHits, now uses time zone configured in WordPress
  • search terms are now saved case insensitive
  • do not check for „is_admin_page“ function anymore, because some plugins like Google Sitemap Plugin from Arne Brachhold include this function an wp-shortstat thinks that we are admin, even on standard pages
  • fixes from http://www.4null4.de/63/wp-shortstat-korrekturen included
  • do not check for „is_admin_page“ function anymore, because some plugins like Google Sitemap Plugin from Arne Brachhold include this function an wp-shortstat thinks that we are admin, even on standard pages
  • multiple fixes for detecting pages that should not been counted
  • page calls from users that are logged in and are admins don’t counted anymore
  • changes from WebKeyDesign included: changed CSS to match WP2 theme (http://www.webkeydesign.com/107/wordpress-20-shortstat-plugin/)
  • naver.com search term recognition added
  • fixed all reported warnings from Zend Code Analyzer


  1. Greetings, how can I fix the shortstat plug-in so that when I look at and select the resources visited on my page uses the correct url.


    if the /football resource is being used and I click on it it goes to http://nelhs.org/football instead of http://www.nelhs.org/football.



  2. Michelle Diener says:

    Hi Markus

    After struggling to get wp-shortstat to work, I found your improved version. Thank you for all your hard work. While it is recording hits, browers, platforms, language and resources, the other tables are blank. I’m using wordpress 2.0.4. Any advice for me?

  3. This is great. Thanks for the fix, now shortstat starts to work on my blog again! Wonderful :)

  4. Hi I’m not getting any info in the following boxes:
    Last Keywords
    Last Resources
    Last Referers

    Any reason why? I’m getting hits to my blog from other pages but there just not showing up. I’m using WordPress 2.04

  5. Does anyone know whether on the Hits+RSS column, the RSS is showning Hits via RSS or Subscribtions to the RSS feed?

    I think it’s the former, but I just wanted to check…


    / Hami

  6. I cant seem to get any stats anymore. It just stopped collecting things on Oct 14th… and just showing 0+0 on the hits now.. any help? I removed it and put it back but still shows the same thing…

  7. Because I can don’t have access to the original sites, i coudn’t solve most of the last bugs from the reports here. At the top of the page is now a debug version available, which could hep to find the remaining problems.

  8. I installed the plugin and it doesn’t seem to have created the database table because I get the following error:

    WordPress database error: [Table ‚Wordpress.wp_ss_stats‘ doesn’t exist]

    The display exists in the Dashboard section – just windows with the above error beginning a list of errors.

    I am using PHP 4.3.10-16, MySQL 4.0.24_Debian-10sarge2-log, WordPress 2.0.4

    Any ideas?

  9. Upekshapriya: please try to disable and reenable the plugin and check, if you have enough privileges to create new tables.

  10. I have disabled and reenabled the plugin several times and I’ve installed other plugins recently that have created new tables – eg today I actiivated Bad Behaviour and it has created a table no problem. Co-incidentally I have found that when I activate Slimstat plugin I also get the problem of the table not being created.

  11. As far as I know, SlimStat uses the same tables, but with different format. You should kill these tables completely and use one of these tools only.

  12. Sorry if I didn’t make myself clear but I have been able to get neither Slimstat nor Shortstat to work. Neither of them will create tables. I would like one of them to work, but I have no tables created for them to get going. At the moment I am trying to get Shortstat going and don’t have Slimstat activated.

    Any suggestions for a workaround?

  13. Only one suggestion: use the debug version (see top of this page) and send me the message (per eMail), if one appears, if you activate the plugin.

  14. Doing as you suggested I replaced the standard version with the debug version and looking at the site with Opera I found no extra information at the bottom of the page.

    Is there any way I can create the table manually, as it were?

  15. To create this tables manually, use a tool like phpMyAdmin and digg trough the source code to the function „setup“, here are the sql scripts to create the tables.

  16. Is there a way to clear the table but keep the data so that once in a while when there are a million rows – they can be cleared without losing the cumulative total to date?

  17. Leanne, it is not possible to clear the data without clearing the summary.

  18. Since
    31 Dec 1969, 16:00


    i just installed it

  19. I love shortstat but mine is screwed up and I’m not sure how to fix it:


  20. Kudos to Markus for fixing Shortstat but also making it faster and lighter!


    John A

  21. firstly, let me say i LOVE this plugin!!!!!
    what i was wondering was whether there is any way to display any of this info on my blog with out having to use an independant hit counter?
    did i mention that i LOVE it??

  22. I have version WP 2.0.5 and it doesnt work at all! I try to disable and activite it. but still no luck. any ideas to make it work for the new version!



  23. I haven’t been able to get the plugin to work on WP 2.0.5 either but I was on an earlier version so I am not sure what the problem was but I foxed itself.

    Don Lapre Lover

  24. Hallo,

    wie kann ich denn einstellen dass meine Logs nicht mitgezählt werden???
    Ich hatte das schon mal mit deinem Plugin so dass es mich nicht mitgezählt hatte.

    Lieben Dank

  25. Detlef: wenn Du eingeloggt bist und bleigst, werden deine Views des Blogs nicht mitgezählt.

  26. Hallo Markus,
    Vielen Dank für Deine Antwort.
    Meine Views wurden immer mitgezählt, das lag aber wohl an einem Fehler in der Datenbank (nach Blogumzug).
    Habe jetzt meine DB Sicherung neu eingespielt und jetzt geht es wieder wie gewohnt.

    Vielen Dank für das klasse Plugin!!!


  27. also das plugin ist super! hatte zu für 1 stunde ein anderes stat-plugin probiert, dieses ist nun aber schon länger angenehmer begleiter :)

    das problem bei meinem blog ist nur dass ca. 80% aller visits von bots stammen (bitte keine kommentare hierzu :) )
    um einigermaßen realistische stats hinzukriegen lösche ich einfach regelmäßig die sql-zeilen die von bots handeln.

    gibts da eine einfachere lösung? (zB dass definierte bots nicht mitgezählt werden … so wie es momentan bereits bei admin-hits ist)

    wie auch immer, danke nochmals für all die arbeit,

  28. Kleiner Tip,

    die deutsche Sparchendatei wurde bei mir nicht geladen, ich musste den Pfad angeben :

    Zeile 956 : load_plugin_textdomain(‚wp-shortstat‘,’wp-content/plugins/wp-shortstat‘);

  29. First of all, thanks for your mods, i can have shortstat working again on a v2 blog.

    Second, i have to say i had trouble finding this updated version, can you arrange with the previous authors to have them point to your site ?


  30. Daniel: Im Sourcecode gibt es verschiedene Möglichkeiten, die Bots zu erkennen. Diese sollten im Bereich Browsers auch angezeigt werden. Sollten bei Dir Bots auftauchen, die nicht als solche erkannt werden, kannst du sie gern ergänzen und mir den Code schicken. Evtl. könnte man die Statistik mal teilen und die Bots markieren und herausfiltern.

  31. danke für die antwort
    diese 2 fehlten bei mir: „Crawler/Search Engine“ und „Technoratibot“
    werd mich vor dem einbauen noch bischen weiter einlernen in den code

    aber eigentlich ist es genau umgekehrt wie du gerade geschrieben hast?!
    nur im bereich „browsers“ werden die bots ausgeschlossen. bei zB „last week“ die unique+hits zählen alle bots mit

  32. I’m getting an error code I’ve never seen before in the keywords column after upgrading to the most recent version:

    „Warning: parse_url(http://XXXX:++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++): Unable to parse url in /public_html/blog/wp-content/plugins/wp-shortstat.php on line 673″

    Any fixes for this that I missed?


  33. Leanne, it is just a warning, you may ignore it.

  34. thank you – will it drop off the screen after some time then?


  1. […] Anarchy Media Player 在线MP3 WMV播放器,是个Flash的。 Adhesive 简??好用置顶?件 下载地? Multi-Topic Icon ??分类设定??的头? Spam Karma 2 比预装的那个好用的??垃圾留言的工具。 WP-ShortStatblog访问统计系统 我今天的页?访问?是3300。 WP-PostViews 统计?篇文章被阅读的次数,有预防?IP刷新的功能,比较准确,需?修改个别模??微??一点。 GetDEF ?自Google的???解释,当然?是?个?都能被解释,?能被解释的就?显示了。 […]

  2. […] You can download the updated version of the ShortStat plugin here. […]

  3. […] WP-ShortStat :内建??统计?件,?以统计?览次数,点击次数,?览器,?览页?,?索引擎,国家,语言等等。原文件我?知?为什么用起?很乱,???到一个写中文的马?西亚朋?修改过的,还?错(?下载该修改过的?此)。 […]

  4. Hamskifte sagt:

    […] Men er det nok å sjå statistikken slik då? Det finst jo litt ulike plugins til WordPress for å visa statistikk, og ein eg likar svært godt der er wp-shortstat. Masse gøyal informasjon tilgjengeleg med eit museklikk eller to, inkludert kva folk hadde søkt etter på dei ulike søkemotorane for å finna meg. Vel, kanskje ikkje spesifikt for å finna meg, men eg dukkar no opp i enkelte søk. Det var berre eitt lite problem: Sjølv om Google er mykje brukt, så finst det jo norske søkemotorar òg, og desse er ikkje med i pluginscriptet. Det medfører at søkeorda frå desse ikkje vert registrert. […]

  5. […] Ja vaig comentar fa un temps que posaria un plugin per les estadístiques de WordPress, però ho vaig intentar i no funcionava. Vaig estar rebuscant per la pàgina de suport d’aquest Plugin sense massa èxit aparent, però prestant més atenció avui he trobat algú (HappyArts) que ha modificat la versió (fent-ne una de nova) i sembla que ja va. El problema sembla que venia de la mescla de Plugins… normal… quan en tens tants de posats… […]

  6. […] Ich hab mir heut mal die Zeit genommen etwas am Blog zu feilen. Schon vor kurzem ist das Archiv ist dazugekommen, welches dank fArc etwas schicker ist als das Standardding. Heute dazugekommen ist das Kontaktformular von Ryan Duff, falls mir mal jemand von euch schreiben will Sehr zu empfehlen sind auch die Plugins von Lester Chan, dessen UserOnline und PageNavi Plugins ich bei mir integriert habe. Super Arbeit! Last but not least hab ich mir auch noch das ShortStat-Plugin gegönnt, welches sehr aufschlussreiche Statistiken liefert. Sehr schön. Ganz nebenbei hab ich natürlich auch gleich noch auf die neuste WP Version 2.0.5 geupdated. […]

  7. […] Als Statistiktools verwende ich übrigens (nur noch) Google Analytics und blogcounter.de, beide zählen “pessimistisch”, also weniger als das zwischenzeitlich eingesetzte “ShortStat”-Plugin für WordPress, mit dem ich in einem Jahr auf 13000 Besucher gekommen bin, und welches ich jetzt aufgrund einer Datenbankgröße von 36MB deaktiviert habe. […]

  8. […] This shortstat plugin is coming in handy. […]

  9. […] WP ShortStats to monitor my statistics, i.e. referers, visits, crawl etc. […]

  10. […] Before finding SlimStat, I had previous experience with the WP-ShortStat plugin for WordPress, but I gave up on it when it broke on a WordPress upgrade. I was pleased to find there is now a wp-slimstat plugin for WordPress and plugged it in to this and my home blog this evening. […]

  11. […] Kelis mėnesius naudojau wordpress statistikai sekti WP-ShortStat pluginą, kuris mane daugmaž tenkino. Papildomai buvo įdiegtas WP-reports pluginas (traukiantis duomenis iš google analytics bei feedburner. […]

  12. […] It’s not that I’m not satisfied with my WP-ShortStats plug-in, it’s more like asking for a second opinion on how this Ituloy AngSulong Blog is performing. I happen to see Google Analytics on my Google Adsense and signed-in for an account. It looks promising though: Google Analytics tells you everything you want to know about how your visitors found you and how they interact with your site. You’ll be able to focus your marketing resources on campaigns and initiatives that deliver ROI, and improve your site to convert more visitors. […]

  13. […] Das Plugin WP-ShortStat fügt deinem Blog einen unsichtbaren Counter (Besucherzähler) hinzu. Einmal aktiviert können sämtliche Statistiken im Admincenter unter “ShortStat”eingesehen werden. […]

  14. […] This figure is being reported by a WordPress plugin called ShortStat, so I don’t expect them to be terribly accurate, but it seems about right… […]

  15. […] WP-ShortStat (1.11) Proste statystyki. Proste, ale całkowicie zaspokajają moją ciekawość. […]

Speak Your Mind