Plugin
Da ich solch ein einfaches Plugin nirgendwo finden konnte, habe ich mich entschlossen eines zu programmieren:
Das Plugin gibt aus, wie oft ein Beitrag gelesen wurde. Es setzt dazu eine extra Spalte in die wp_posts Datenbank und kann daher natürlich nur die Beiträge zählen, die nach der Installation des Plugins geklickt werden.
Das Plugin braucht nicht konfiguriert zu werden sondern wird einfach in den Ordner wp-content/plugins kopiert und aktiviert.
Sobald ein Artikel, eine Seite oder ein Archivartikel angeklickt werden, zählt das Plugin die Klicks.
Durch sessionbasierte Sperren wird ein Besucher pro Artikel nur einmal gezählt, auch wenn er den selben Artikel mehrmals anklickt.
Der Artikelcounter kann dann im Template eingebaut werden und wird automatisch angezeigt:
<?php echo wpp_show_counter(); ?>
oder es wird ein Tag für den Counter direkt in den Artikel gesetzt:
[ wpp_count ]
Ich übernehme keine Haftung oder Garantie für das Plugin. Benutzung auf eigene Gefahr. Das Plugin wurde von mir mehrfach getestet und wird auch hier eingesetzt.
Download
Hack
Falls ihr nicht wollt, dass eingeloggte User ebenfalls gezählt werden (wenn ihr z.B. Statistiken auswertet und euch öfter durch Beiträge klicken müsst), könnt ihr dies mit wenigen Handgriffen erledigen:
Öffnet des Plugins im Plugineditor. Findet
$wpdb->query("UPDATE $wpdb->posts SET `wpp_count` = '$newvalue' WHERE `ID` = '$id'");
und ersetzt es mit
if ( is_user_logged_in() ) { } else {
$wpdb->query("UPDATE $wpdb->posts SET `wpp_count` = '$newvalue' WHERE `ID` = '$id'"); }
Es werden ab jetzt nur Gäste gezählt.
Tags: Counter, Plugin, Post, View, Worpress
TinyURL für diesen Artikel: http://tinyurl.com/yaygdbp
Ich hab das Plugin nie validieren lassen, da es eigentlich total simpel ist und funktioniert. Was hast du für Fehler?
Hallo, wenn ich das Plugin nach Fehlern prüfe, verursacht es bei mir einige die vom Validator angezeigt werden. Kannst du mir behilflich sein? Wie kann ich es in fügen? | Aufrufe
Danke fürs Feedback und ebenfalls noch ein gutes Neues
Super Plugin !
Funktioniert ohne Probleme und ist in wenigen Minuten eingerichtet. Danke und frohes Neues!
Danke fürs Feedback und viel Spass damit.
Schönes Wochenende
Alles hat geklappt, habe es bei mir eingebaut, Danke…
z.B. unter comments_template wobei mir die Datei komisch vorkommt.
Ich möchte allerdings, von jedem Artikel, der gepostet wird, die Views gezählt werden, das heißt ich möchte nicht immer unter jedem geschriebenen Artikel eine bestimmte Zeile einfügen, sondern einmal eine Einstellung vornehmen und die erzeugt dann ein automatisches (einmaliges) Erscheinen des Satzes “Der Artikel wurde XY Mal gelesen.” auf jeder Seite.
Das ist der Code der single.php Seite bei WordPress:
< ? php
get_header();
if (have_posts())
{
while (have_posts())
{
art_page_navi();
art_post();
comments_template();
}
art_page_navi();
} else {
art_post_box(
__('Not Found', 'kubrick'),
'’ . __(‘Sorry, but you are looking for something that isn’t here.’, ‘kubrick’) . ”
. “\r\n” . art_get_search());
}
get_footer();
Wo muss da die Zeile eingefügt werden?
Gruß Kevin
Hallo Kevin,
vielen Dank. Du brauchst eigentlich nur folgende Zeile unter deinem Gefällt-mir Button schreiben:
Der Beitrag wurde gelesenSo wie es im Artikel beschrieben ist.
@Marcus: Leider kann ich dir hier nicht genau sagen was los ist, aber ich denke es ist keine Spalte für den Zähler angelegt in der Datenbank. Sorry
Hi Florian,
ich war richtig begeistert von deiner App, das war genau das, was ich gesucht habe. Ich weiß allerdings nicht genau, wo ich diese Zeile einfügen soll:
Dieser Artikel wurde Mal gelesen
Oben steht was was von WordPress > Design > Editor > Einzelner Artikel (single.php). Ich habe es an allen Stellen probiert einzufügen, funktioniert hat es jedoch nicht. Dazu soll gesagt sein: Der Satz “Dieser Artikel wurde schon XY Mal gelesen” soll nur ein einziges Mal ganz unten am Ende des Artikels (unter dem “Gefällt mir”-Button) erscheinen, nicht mehrmals auf der gleichen Seite.
Gruß Kevin
Wow, super Plugin. Vielen Dank dafür
Super gemacht.
Ich erhalte leider die folgende Fehlermeldungen:
Warning: in_array() expects parameter 2 to be array, null given in /wp-post-counter/wp-post-counter.php on line 37
Warning: array_push() expects parameter 1 to be array, null given in /wp-post-counter/wp-post-counter.php on line 39
Was kann die Ursache sein??
Sehr gutes Plugin: einfach und wirkungsvoll! Vielen Dank.
Du hast das Plugin falsch in das Template eingebaut und musst es “später” einbinden.
Warning: session_start() [function.session-start]: Cannot send session cache limiter – headers already sent (output started at /home/ddlyouor/public_html/blog/wp-content/plugins/wp-post-counter/wp-post-counter.php:1) in /home/ddlyouor/public_html/blog/wp-content/plugins/wp-post-counter/wp-post-counter.php on line 2
was bedeutet das ?
Super, jetzt klappts. Vielen Dank!
Du schreibst in die entsprechende Templatedatei (z.B. Single) das was du haben willst. Also z.B.
Der Beitrag wurde mal gelesen
Gruß
Hallo!
Danke für das tolle Plugin. Ich habe jedoch noch ein kleines Problem.
Nachdem ich es hochgeladen habe und aktiviert habe. Was muss ich danach machen?
Wohin muss ich ” ” kopieren, also in welche Datei?
Ich hatte Sie in die Single.php getan, dann stand aber lediglich eine “1″ über dem Post ohne z.b. “x Views” o.ä.
Besten Dank und weiter so!
Hallo und Danke für das Lob,
du hast einen kleinen grammatikalischen Fehler bei der Ausgabe, weil du folgendes bei den Artikeln stehen hast
Dieser Artikel wurde seit bereits: 3 gelesenGruß Florian
Tolles Plugin! Habs gleich in meinen neuen Blog eingebaut und es funktioniert perfekt.
Vielen Dank!