Toms Welt

/wp-plugins/count-per-day

Count per Day

3.532 Kommentare | Kommentar schreiben

"Count per Day" ist ein Besucherzähler für WordPress.

Die Seitenaufrufe werden pro Artikel gespeichert. Dabei wird als "Reload-Sperre" nur ein Aufruf pro IP-Adresse und Tag berücksichtigt.

Beispiel: Wenn ein Leser 5 Artikel ansieht, sind alle "1 mal gelesen", aber der Gesamtzähler erkennt, dass es nur ein Besucher war.
Die Aufrufe können pro Artikel angezeigt werden. Im Admin-Bereich gibt es weitere Statistiken.

Download

If you get PHP inet_pton errors, use this patched geoip.inc file.
Copy the unzipped file to wp-content/count-per-day-geoip.

Count per Day 3.5.7

Contributors: Tom Braider
Tags: counter, count, posts, visits, reads, dashboard, widget, shortcode
Requires at least: 3.0
Tested up to: 4.8
Stable tag: 3.5.7
License: GPLv2
Donate link: www.tomsdimension.de/postcards

Visit Counter, shows reads and visitors per page, visitors today, yesterday, last week, last months and other statistics.

Description

"Count per Day" counts 1 visit per IP per day. So any reload of the page do not increment the counter.

Languages, Translators


Installation

  1. unzip plugin directory into the /wp-content/plugins/ directory
  2. activate the plugin through the Plugins menu in WordPress

The activation will create or update a table wp_cpd_counter.

The Visitors-per-Day function use 7 days as default. So don't surprise about a wrong value in the first week.

Configuration

See the Options Page and check the default values.



Frequently Asked Questions


Need Help? Find Bug?


read and write comments on www.tomsdimension.de/wp-plugins/count-per-day



Screenshots


  1. 1. Statistics on Count-per-Day Dashboard

  2. 2. Options

  3. 3. Widget sample

Arbitrary section


Shortcodes

You can use these shortcodes in the content of your posts to show a number or list
or in your theme files while adding e.g. <?php echo do_shortcode("[THE_SHORTCODE]"); ?>.
To use the shortcodes within a text widget you have to add add_filter("widget_text", "do_shortcode"); to the functions.php of your theme.

[CPD_READS_THIS]
[CPD_READS_TOTAL]
[CPD_READS_TODAY]
[CPD_READS_YESTERDAY]
[CPD_READS_LAST_WEEK]
[CPD_READS_THIS_MONTH]
[CPD_READS_PER_MONTH]
[CPD_VISITORS_TOTAL]
[CPD_VISITORS_ONLINE]
[CPD_VISITORS_TODAY]
[CPD_VISITORS_YESTERDAY]
[CPD_VISITORS_LAST_WEEK]
[CPD_VISITORS_THIS_MONTH]
[CPD_VISITORS_PER_MONTH]
[CPD_VISITORS_PER_DAY]
[CPD_VISITORS_PER_POST]
[CPD_FIRST_COUNT]
[CPD_POSTS_ON_DAY]
[CPD_CLIENTS]
[CPD_COUNTRIES]
[CPD_COUNTRIES_USERS]
[CPD_REFERERS]
[CPD_FLOTCHART]
[CPD_MOST_VISITED_POSTS limit="5" days="30" postsonly="1" posttypes="posts,pages"]
  • limit (optional): max records to show, default = all
  • days (optional), show last x days
  • postsonly (optional), 1 = don't show index pages
  • posttypes (optional), show this posttypes only, sets postsonly to 1
[CPD_POSTS_ON_DAY date="2010-10-06" limit="3"]
  • date (optional), format: year-month-day, default = today
  • limit (optional): max records to show, default = all
[CPD_MAP width="500" height="340" what="reads"]
  • width and height: size, default 500x340 px
  • what: map content - reads|visitors|online, default reads
[CPD_SEARCHES days="14" limit="20"]
  • days (optional), show last x days
  • limit (optional): show x most searched strings
Functions

You can place these functions in your template.
Use
<?php
global $count_per_day;
if(method_exists($count_per_day,"show")) echo $count_per_day->getReadsAll(true);
?>

to check if plugin is activated.

show( $before, $after, $show, $count, $page )'
  • $before = text before number e.g. <p> (default "")
  • $after = text after number e.g. reads</p> (default " reads")
  • $show = true/false, "echo" complete string or "return" number only (default true)
  • $count = true/false, false will not count the reads (default true)
  • $page (optional) PostID
count()
  • only count reads, without any output
  • show call it
getFirstCount( $return )
  • shows date of first count
  • $return: 0 echo, 1 return output
getUserPerDay( $days, $return )
  • shows average number of visitors per day of the last $days days
  • default on dashboard (see it with mouse over number) = "Latest Counts - Days" in options
  • $return: 0 echo, 1 return output
getReadsAll( $return )
  • shows number of total reads
  • $return: 0 echo, 1 return output
getReadsToday( $return )
  • shows number of reads today
  • $return: 0 echo, 1 return output
getReadsYesterday( $return )
  • shows number of reads yesterday
  • $return: 0 echo, 1 return output
getReadsLastWeek( $return )
  • shows number of reads last week (7 days)
  • $return: 0 echo, 1 return output
getReadsThisMonth( $return )
  • shows number of reads current month
  • $return: 0 echo, 1 return output
getReadsPerMonth( $return )
  • lists number of reads per month
  • $return: 0 echo, 1 return output
getUserAll( $return )
  • shows number of total visitors
  • $return: 0 echo, 1 return output
getUserOnline( $frontend, $country, $return )
  • shows number of visitors just online
  • $frontend: 1 no link to map
  • $country: 0 number, 1 country list
  • $return: 0 echo, 1 return output
getUserToday( $return )
  • shows number of visitors today
  • $return: 0 echo, 1 return output
getUserYesterday( $return )
  • shows number of visitors yesterday
  • $return: 0 echo, 1 return output
getUserLastWeek( $return )
  • shows number of visitors last week (7 days)
  • $return: 0 echo, 1 return output
getUserThisMonth( $return )
  • shows number of visitors current month
  • $return: 0 echo, 1 return output
getUserPerMonth( $frontend, $return )
  • lists number of visitors per month
  • $frontend: 1 no links
  • $return: 0 echo, 1 return output
getUserPerPost( $limit, $frontend, $return )
  • lists $limit number of posts, -1: all, 0: get option from DB, x: number
  • $frontend: 1 no links
  • $return: 0 echo, 1 return output
getMostVisitedPosts( $days, $limits, $frontend, $postsonly, $return, $posttypes )
  • shows a list with the most visited posts in the last days
  • $days = days to calc (last days), 0: get option from DB
  • $limit = count of posts (last posts), 0: get option from DB
  • $frontend: 1 no links
  • $postsonly: 0 show, 1 don't show categories and taxonomies
  • $return: 0 echo, 1 return output
  • $posttypes: comma separated list of post types, default: empty to show all
getVisitedPostsOnDay( $date, $limit, $show_form, $show_notes, $frontend, $return )
  • shows visited pages at given day
  • $date day in MySQL date format yyyy-mm-dd, 0 today
  • $limit count of posts
  • $show_form show form for date selection, default on, in frontend set it to 0
  • $show_notes show button to add notes in form, default on, in frontend set it to 0
  • $frontend: 1 no links
  • $return: 0 echo, 1 return output
getClients( $return )
  • shows visits per client/browser in percent
  • $return: 0 echo, 1 return output
getReferers( $limit, $return, $days )
  • lists top $limit referrers of the last $days days, 0: get option from DB, x: number
  • $return: 0 echo, 1 return output
getMostVisitedPostIDs( $days, $limit, $cats, $return_array )
  • $days last x days, default = 365
  • $limit return max. x posts, default = 10
  • $cats IDs of categories to filter, array or number
  • $return_array true returns an array with Post-ID, title and count, false returns comma separated list of Post-IDs
function getMap( $what, $width, $height, $min )
  • gets a world map
  • $what visitors|reads|online
  • $width size in px
  • $height size in px
  • $min : 1 disable title, legend and zoombar
getDayWithMostReads( $return )
  • shows day with most Reads
  • $return: 0 echo, 1 return output
getDayWithMostVisitors( $return )
  • shows day with most Visitors
  • $return: 0 echo, 1 return output
GeoIP
  • With GeoIP you can associate your visitors to an country using the IP address.
  • On options page you can update you current visits. This take a while! The Script checks 100 IP addresses at once an reload itself until less then 100 addresses left. Click the update button to check the rest.
  • If the rest remains greater than 0 the IP address is not in GeoIP database (accuracy 99.5%).
  • You can update the GeoIP database from time to time to get new IP data. This necessitates write permissions to wp-content/count-per-day-geoip directory.
  • If the automatically update don't work download GeoIPv6.dat.gz, extract and rename it to GeoIP.dat and load it to the count-per-day-geoip directory.
  • More information about GeoIP on http://www.maxmind.com


Changelog


3.5.7

  • Bugfix: security fixes in notes, options

3.5.6

  • Bugfix: check/block stored bad referrers

3.5.5

  • Bugfix: security fixes in export, referrer and mass bot functions

3.5.4

  • Bugfix: check for IPv6 compatibility on settings page

3.5.3

  • Bugfix: undefined function cpd_inet_pton (once again)

3.5.2

  • Bugfix: undefined function cpd_inet_pton

3.5.1

  • back in WordPress plugin repository
  • Bugfix: Worldmap shortcode

3.5

  • New: PHP 7 compatibility (mysqli)
  • New: GeoIP part is now available as addon (installation with 1 click, see the settings page), because WordPress hates non GPL code in its plugin repository (after several years...)
  • Bugfix: possible daylight saving time problem in chart (hopefully)
  • Bugfix: reset function now deletes also collections

3.4.1

  • Bugfix: Security fix backup download

3.4

  • New: limit the length of client and referer to reduce database size and eliminate MySql strict mode errors
  • New: exclude countries you not want to count
  • New: Flash free World map
  • New: Flag of Malawi
  • Bugfix: language support without WPLANG constant
  • Bugfix: get temp directory

3.3

  • New: List of most industrious Visitors
  • New: Export data as CSV file
  • New: count given post types only
  • New: Shortcode CPD_FLOTCHART to show the big chart
  • New: Popular Posts Widget, thanks to Maurits van der Schee www.leaseweblabs.com/2014/01/popular-posts-count-per-day-wordpress-plugin
  • New: Part of IP adresses in Bot List, 192.168 will block all visitors from 192.168.x.x
  • New language: Chinese, thanks to Siyuan Tang
  • Bugfix: counting of cached pages
  • Bugfix: cleaning database, delete entries per IP in bot list
  • some little fixes

3.2.10

  • Bugfix: Plugin dir path fixed
  • Bugfix: CSS path fixed
  • Bugfix: search word now case insensitive
  • Bugfix: Translation of widget titles
  • New: world map of current visitors
  • New: check referer agains bot list
  • New: delete clients and referers of older entries

3.2.9

  • Bugfix: PHP without IPv6 support
  • New Language: Persian, thanks to Mahmoud Zooroofchi
  • Hint: use "update old counter data" to repair the unknown countries

3.2.8

  • Bugfix: inet_pton for windows php < 5.3
  • Bugfix: GeoIP support for online world map

3.2.7

  • Bugfix: GeoIP functionality

3.2.6

  • New: posts only parameters for [CPD_MOST_VISITED_POSTS]
  • New: don't count password protected posts without password
  • New: translate widget titles if possible
  • New: flags of Cambodia, Nigeria and Sudan
  • Bugfix: massbot post list has not show all post
  • Bugfix: security fix, XSS
  • Bugfix: problems while adding widgets
  • Bugfix: start session only in backend
  • Bugfix: empty database query

3.2.5

  • Bugfix: compatibility fix for WordPress 3.5

3.2.4

  • Bugfix: security fix, check user permissions

3.2.3

3.2.2

  • New: counter column in custom post lists
  • Bugfix: errors in search words
  • Bugfix: wrong counts in posts lists

3.2.1

  • Bugfix: massbot delete error
  • Bugfix: search words array sometimes corrupt
  • Bugfix: add collected data to reads per post, thanks to Suzakura Karin yumeneko.pmfan.jp / is.gd/VWNyLq
  • Language update: Japanese, thanks to Juno Hayami
  • Language update: Portuguese, thanks to Beto Ribeiro
  • Language update: Russian, thanks to Ilya Pshenichny
  • Language update: Bulgarian, thanks to joro

3.2

  • New: save search words
  • New shortcode: CPD_COUNTRIES_USERS
  • New: flags for Bahamas, Mongolia, Cameroon and Kazakhstan
  • Bugfix: can't move widgets
  • Bugfix: visitors per post list
  • Bugfix: "Clean Database" deleted collection too
  • Bugfix: browser summary Chrome/Safari fixed
  • Bugfix: get real remote IP address, not local server
  • Bugfix: security fixes
  • Change: create collection functions optimized
  • New language: Romanian, thanks to Alexander Ovsov
  • New language: Hindi, thanks to Love Chandel
  • New language: Finnish, thanks to Jani Alha
  • Language update: Ukrainain, thanks to Iflexion design

3.1.1

  • Bugfix: important fixes in map.php and download.php, thanks to 6scan.com

3.1

  • New: memory check before backup to avoid "out of memory" error
  • New: create temporary backup files for download only
  • New: delete backup files in wp-content on settings page
  • Bugfix: all posts shows 1 read in posts list
  • Bugfix: clean database shows 0 entries deleted

3.0

  • New: use now default WordPress database functions to be compatible to e.g. multi-db plugins
  • New: backup your counter data
  • New: collect entries of counter table per month and per post to reduce the database and speed up the statistics
  • New: functions and shortcodes [CPD_DAY_MOST_READS] [CPD_DAY_MOST_USERS] to shows days with most reads/visitors
  • New: option to cut referrer on "?" to not store query strings
  • New: parameter $postsonly for getMostVisitedPosts function to list single posts and pages only
  • New: flags for Moldavia and Nepal
  • New language: Norwegian, thanks to Stein Ivar Johnsen and Tore Johnny Bråtveit
  • New language: Azerbaijani, thanks to Bohdan Zograf
  • New language: Japanese, thanks to Juno Hayami
  • Bugfix: visitors per month list
  • Change: some function parameters
  • Change: little memory optimizing
  • Change: visitors currently online and notes will now managed per option, without seperate tables in database
  • Change: design updated
  • Change: old bar charts deleted
created by Readme Parser

RSS-Feed 3.532 Kommentare

Seiten: « 1 2 3 ... 7 8 9 10 11 12 13 ... 144 145 146 »
  1. Tobi Tobi sagt:

    Hi Tom!

    Endlich ist das Widget da, auf welches ich schon lange gewartet habe :). Super Sache, doch leider funktioniert die Formatierung bei mir nicht richtig... Die Zahlen sind um eine Zeile nach unten verschoben. Mein Fehler?! :).

    Kannst du mir weiterhelfen?

    Grüße Tobi

  2. fahirsch fahirsch sagt:

    Hi Tom:
    I just installed CPD 2.2 wih geoip. I get the following errors:

    Warning: gzopen(): URL file-access is disabled in the server configuration in [suppresed]/wp-content/plugins/count-per-day/geoip/geoip.php on line 84
    Warning: gzopen(http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz): failed to open stream: no suitable wrapper could be found in [suppresed]/wp-content/plugins/count-per-day/geoip/geoip.php on line 84
    Warning: gzread(): supplied argument is not a valid stream resource in [suppresed]/wp-content/plugins/count-per-day/geoip/geoip.php on line 85
    Warning: fclose(): supplied argument is not a valid stream resource in [suppresed]/wp-content/plugins/count-per-day/geoip/geoip.php on line 86

    I am using another plugin that uses geoip data:
    comment info detector (http://hieudt.info/wp-plugins/comment-info-detector),
    without any problem. It may be because that plugin has included the ip table with the plugin.
    Regards,
    Francisco

    • Tom Tom sagt:

      Hello Francisco,
      i think you don't have enabled php fopen function in php.ini. I only check gzopen an show an error. The plugin works without this extension. Only the installation of a new GeoIP.dat file on options page need it. You can download an install the file. The version in addon download is of 08/2009.

      • fahirsch fahirsch sagt:

        Tom:
        Unfortunately I'm not in control of the server, so either I forgo the use of GeoIP or you change it to use the base locally (as in the above plugin) ;)
        More seriously, wouldn't it be better if the geoip base was local, instead of distant?
        I hope you take up my suggestion.
        Francisco

        • Tom Tom sagt:

          The addon download includes the database GeoIP.dat. So it works locally. I have disabled "allow_url_fopen" in php.ini and see the errors you wrote if i try to update the GeoIP.dat file. But the addon works fine, it get the country data and updates the CpD table.
          So addon works, update don't without fopen.
          If you want update the file, download and install it per ftp on you server. Once a month or fewer.
          Download the Development Version and post the "DEBUG" infos from options page. So we will see which functions are on/off.
          The comment-info-detector also used a binary file and fopen like my addon.

  3. Michele Michele sagt:

    Getting odd numbers: Visitors today on the graph is listed as 70, but Visitors today above is listed at 17. Which is correct?

  4. Mandy Mandy sagt:

    Hallo Tom, ich möchte die Anzeige der Funktion getMostVisitedPosts() gern in meiner Sidebar haben. Leider kommt es beim Eintrag in die sidebar.php nicht zur Anzeige, sonder nur wenn ich den Code in single.php oder aber in index.php einsetze, da nur dort die post-loop ist. Wie kann ohne widget-Nutzung die Anzeige dennoch in der Sidebar unterbringen?
    Vielen Dank.

  5. chris chris sagt:

    Hallo,

    irgendwie zaehlt der Counter per Day bei mir nicht. Kann dies irgendwie daran liegen, dass ich Teile des Designs auskommentiert habe die ich nicht sehen will. Ich habe leider absolut keine Ahnung war es nicht geht. Es ist alles auf dem neuesten Stand, WordPress und der Counter von dir. Hoffe du kannst mir helfen oder einen Tip geben was ich testen soll.

    Danke

  6. Zebra242 Zebra242 sagt:

    Hi there, thank you for a great plugin.

    1) I'ld like to use the 'getMostVisitedPosts()' function in my template, but it seems only to get to work with $cpdneu = new CountPerDay(); $cpdneu->getMostVisitedPosts();. Which is not so bad after all ;-)

    2) I would like to limit the amount of displayed results of this function up to maximum 5 results; where can I change this?

  7. Zebra242 Zebra242 sagt:

    --> Maybe I didn't explain myself totally clear: can I provide a different amount of numbers to be displayed on the frontend (5) and keep the amount of 20 post in the dashboard (backend)?

  8. MaNIaC MaNIaC sagt:

    Hallo Tom,

    ich hab grade dein Plugin entdeckt und es installiert. Leider zählt er bei mir nicht...Autocounter und angemeldete benutzer sind eingeschalten. Benutze den Atahualpa theme aber es will einfach nicht! (Leider)
    Siehe auf meiner Seite rechts is die Statistik...leider immer alles 0... :cry:
    Hab was gelesen von integrieren in single.php
    Wo und wie wäre das?

    Hoffe du kannst helfen!

    greetz
    MaNIaC

    • MaNIaC MaNIaC sagt:

      Hallo Nochmal Tom,

      grade selber gefunden wo ich den Befehl einfügen muss (mein Theme hat keine single.php, dort heisst sie einfach index.php).
      Andere frage:
      Ist es so gedacht das der Zähler nur zählt wenn ein einzelner Artikel aufgerufen wird und nicht wenn jmd. z.B. nur die Hauptseite aufruft? Gibt es die möglichkeit die möglichkeit einzubauen?

      greetz
      MaNIaC

      • Tom Tom sagt:

        Hallo Maniac,
        ja, nur einzelne Artikelaufrufe werden gezählt. Aber da schon öfter Anfragen danach kamen, muss ich es mir wohl wieder mal ansehen. Hatte da Probleme, das richtig zu filtern. Die Indexseiten wurden zu oft gezählt. Aber schaun wir mal. ;)
        Eine single.php gehört laut WP-Codex eigentlich in jedes Theme. Aber man kann natürlich alle Seite über die index.php laufen lassen und dort filtern. Weniger Template-dateien, dafür unübersichtlicher im Inhalt.

  9. Tom Tom sagt:

    Hallo Simo,
    CpD zählt momentan NUR einzelne Artikel, keine Indexseiten. Vielleicht zukünftig, wenn ich eine Lösung finde. Dazu musst du nichts einfügen, sondern nur den Autocounter aktivieren.

  10. Alisher Alisher sagt:

    Good day!

    I translated "Count per day" into the uzbek language.
    Could you give me the e-mail where to send its .po files?

    Thanks.

Seiten: « 1 2 3 ... 7 8 9 10 11 12 13 ... 144 145 146 »

Kommentar schreiben

Deine E-Mail-Adresse wird nicht veröffentlicht.

:mrgreen:  :D  :)  ;)  8-)  :O  :cry:  :(  :liebhab:  :-x  :-?  :P  :roll:  :arrow:  :schwitz:  :thumbsup:  :thumbup:  :thumbdown:  :facepalm:  :?:  :!:  :eis: