ACHTUNG!! DIESES PLUGIN WIRD NICHT MEHR WEITERENTWICKELT. KEINE AHNUNG OB ES ÜBERHAUPT NOCH FUNKTIONIERT MIT DER DERZEITIGEN WORDPRESS VERSION!!
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.
Johnny meint
Hallo! ?
Ich benutze seit Jahren dieses Plugin. Jetzt hab ich aber ein Cache Plugin eingefügt, das den Cache dauernd leert und die Zugriffe werden jetzt auf der Hauptseite und in den Artikeln nur noch so zu 5% angezeigt. Sieht jetzt irgendwie voll armselig aus, so als würde niemand mehr in dem Blog lesen. :-/ Kann man das Plugin wp-post-counter irgendwie umschreiben, dass es vom Cache unberührt bleibt? Oder kann man die irgendwie in ein anderes Plugin importieren? ?
Liebe Grüße
Florian Fritsch meint
Hallo Johnny,
es gibt in PHP durchaus diverse Möglichkeiten, eine Seite ohne Cache laden zu lassen. Jedoch kommt dies auf das jeweilige Cache System an.
Ich supporte das Plugin nicht mehr, da ich der Meinung bin dass es mittlerweile einige bessere Counter gibt (oder geben sollte) 🙂
Tut mir leid, dass ich dir hier nicht weiterhelfen kann.
Viele Grüße
Florian
Dragon meint
Vorab vielen Dank für ein so tolles Plugin. Aber: Es ist sicher gut gemeint. Aber dies Beschreibung für den Einbau dieses Plugins dürfte ruhig etwas ausführlicher sein. Ich meine, wer kennt sich schon in sämtlichen Theme aus und weiß, in welche Datei und wo es dort eingesetzt wird. Ich z.B. nutze das Theme RAINDROPS. Und darin finde ich mich überhaupt nicht zurecht und wüsste nun wirklich nicht, wo man das dort einbaut. AUsserdem kommen alle Nasen lang neue Updates für die Themes raus und man muss solch eine Funktion ständig wieder einfügen. Ein Plugin, das sich quasi selbst einfügt, wäre da sicher leichter zu handhaben. Vor allem für Dummies wie mich 😉
LG; Dragon
Bettina Mertinkat meint
Tolles Plugin danke dafür. Was mich stört: Da wird nur eine Zahl ausgegeben. Ich würde es besser finden: „Dieser Beitrag wurde …. aufgerufen.“
Sieht nach meinem empfinden besser aus.
Florian meint
Das geht doch 🙂 Du brauchst ja nur davor und danach einen Text hinschreiben. So kann jeder schreiben was er will.
z.B.
Der Beitrag wurde <?php echo wpp_show_counter(); ?> mal gelesen
Andreas meint
Hallo Florian,
vielen Dank für dieses tolle Plugin. Sowas suche ich schon lange.
Gruß
Olaf Uecker meint
Hallo Florian,
danke für das Plugins. Habe lange nach was einfachem gesucht, und dann bin ich auf dieses Plugins für Worpress gestoßen. Endlich mal etwas einfach erklärt und promt eingebaut. Ich habe es so realisiert:
index.php
Gelesen
MfG
Olaf Uecker
Christoph meint
Vielen Dank für die Bereitstellung des Plugins. Habe es gleich auf meiner Seite eingebaut.
Bernd meint
Hallo, das plugin funktioniert toll, aber was mir auffällt ist, das der Counter bei jeder Post-Revision zurückgesetzt wird, mir ist das aufgefallen nachdem ich einen Rechtschreibfehler korrigiert habe. Ist es nicht möglich es an den Titel der Seite zu binden, die ändert sich anders als die Revisionen nicht.
Florian meint
Servus, das wäre bestimmt irgendwie möglich, aber ich entwickle es nicht mehr weiter.
Julian meint
Super Plugin! Ich nutze es schon länger für meine Web Projekte.
Nun habe ich jedoch die Frage ob man auch alle Views zusammen sehen kann.
Sprich einmal mit den einzelnen Titeln und Views und einmal die Gesamtanzahl der Views.
LG,
Julian
Florian meint
Hallo und Danke. Die Funktionen die du haben willst gibt es nicht im Plugin, müssten also programmiert werden. Gruß
Marcel meint
achso sorry, das war die letzte Version die ich probiert hatte … hier der Code der bei mir auch net funzt:
<a href="“ „title=“”Der Beitrag wurde gelesen”>
ist da evtl. ein semikolon zu wenig? bitte mach ein Happy End für mich aus der Geschichte 🙂
Florian meint
Marcel meint
sorry wenns jetzt nervt … aber aus dem Original eingefügtem Code in meinem Post zuvor wird hier nun der Counter versucht anzuzeigen … bei mir nicht ?
ich versteh nicht weshalb bei mir der Counter an anderer Stelle funkioniert und im Titel nicht …
(und der Tag hat sogut angefangen 🙁
Florian meint
Kann nur raten, aber ich vermute dass du einen Fehler machst bzw. der Tag ausserhalb der Loop eingefügt wird. Müsste ich sehen damit ich was dazu sagen kann.
Marcel meint
Danke Dir … dann komme ich doch lieber gleich zur nächsten Frage: der Counter im Titel funktioniert leider mit dem Code nicht:
<a href="” title=”Der Beitrag wurde gelesen”>
wenn ich nun in den Original-Zeilen den wichtigsten Teil einfüge wird nur „“ angezeigt ,
<a href="“ title=““ rel=“bookmark“>
gemeint sind die Original Zeilen im Template twenty.eleven > content.php > ca. Zeile 20
kannst du mir / uns an dieser Stelle weiterhelfen :-/
grüße, Marcel
Florian meint
Du musst natürlich bei „Der beitrag wurde…“ den Tag
einbauen 😉
Marcel meint
ich nochmal (bitte den ersten Beitrag editieren oder löschen) = es funktioniert genauso einfach: einfach die Spalte manuell am besten über mysqldumper anlegen
gruß
Florian meint
Gerade wollte ich dir schreiben. Schön dass es nun klappt. Ich lasse den Beitrag stehen, vielleicht haben andere ja das selbe „Problem“. Danke fürs Feedback.
Marcel meint
Hallo, ersteinmal vielen herzlichen Dank für das Plugin. Mein Problem: im Plugin „multilingual-press“ wird in der Datenbank in den Tabellen z.Bsp. für Deutsch wp_2_posts und für Englisch wp_3_posts keine neue Spalte „wpp_count“ angelegt … in der Tabelle wp_posts läuft es natürlich wie beschreiben … kannst Du mir / uns weiterhelfen wie es händisch angelegt werden kann oder reicht es aus einfach die Spalte in der Tabelle zu erstellen ??
gruß, Marcel
Unerfahren meint
Hallo,
die Anleitung scheint nichts für Anfänger zu sein, schade? denn:
(Der Artikelcounter kann dann im Template eingebaut werden und wird automatisch angezeigt:
)
????? WO SOLL DAS SEIN? Wie heist diese datei und in welchem Ordner ist er dirn?
oder es wird ein Tag für den Counter direkt in den Artikel gesetzt:
[ wpp_count ]
???? Welcher Tag? Ich dachte damit sind die Schlagwörter gemeint die man benutzen kann, wenn man will?
tolle idee, aber für mich bis jetzt nicht einsetzbar, installiert/aktiviert ist es, aber optisch ist alles wie bisher ich kann keinen Zähler finden.
LG
Florian meint
Es ist eigentlich soweit alles erklärt. Du musst entweder den Tag [ wpp_count ] direkt in den Artikel setzen oder die andere Funktion in der Templatedatei z.B. unter Design > Editor > „Dein Theme“ > index.php beim Titel des Artikels bzw. wo du ben willst, eintragen.
z.B.
< h1 >< a href="“ title=“Der Beitrag wurde gelesen“>< /a >< /h1 >
Das ganze natürlich ohne die Leerzeichen bei h1 und a
Mathias meint
Super vielen Dank! Jetzt funktioniert es!
Florian meint
Gerne. Schönes Wochenende
Mathias meint
Hallo und viele Dank für das nützliche Plugin. Genau das was ich gesucht habe. Leider stürzt das Plugin bei mir immer ab sobald ich den „Hack“ bzgl. Zählung der eingeloggten User anwenden will.
Ich mache es so wie oben beschrieben. Die Zeile finden und durch die beiden unteren Zeilen (wie oben beschrieben) ersetzen. Das klappt leider nicht. :/
Haben Sie einen Rat wodran es liegen könnte?
Vielen Dank
Florian meint
Kann ich leider so nicht nachvollziehen. Hast du evtl zum Schluss das } vergessen?
Es muss folgendermaßen heissen:
if ( is_user_logged_in() ) { } else {
$wpdb->query("UPDATE $wpdb->posts SET `wpp_count` = '$newvalue' WHERE `ID` = '$id'");
}
Alex meint
Habe selbst das Problem gelöst danke. Nur löst es bei mir Probleme und die ganze Seite stürzt ab wenn ich Plugin deinstalliere 😉
Habe das Problem durch einen kleinen CSS Trick gelöst.
Grüße,
Alex (Funzt alles)
Florian meint
Würde mich interessieren wie das aussieht/gehen soll. Man gibt hier was aus und formatiert nichts. Ich benutze es z.B. im Title Tag des Titels.
Alex meint
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
Florian meint
Ich hab das Plugin nie validieren lassen, da es eigentlich total simpel ist und funktioniert. Was hast du für Fehler?
Andy meint
Super Plugin !
Funktioniert ohne Probleme und ist in wenigen Minuten eingerichtet. Danke und frohes Neues! 🙂
Florian meint
Danke fürs Feedback und ebenfalls noch ein gutes Neues
Alex meint
Alles hat geklappt, habe es bei mir eingebaut, Danke…
Florian meint
Danke fürs Feedback und viel Spass damit.
Schönes Wochenende
Kevin Thrams meint
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
Florian meint
z.B. unter comments_template wobei mir die Datei komisch vorkommt.
Kevin Thrams meint
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
Florian meint
Hallo Kevin,
vielen Dank. Du brauchst eigentlich nur folgende Zeile unter deinem Gefällt-mir Button schreiben:
Der Beitrag wurde gelesen
So 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
Daniel meint
Wow, super Plugin. Vielen Dank dafür 😀 Super gemacht.
Marcus meint
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??
arlivre meint
Sehr gutes Plugin: einfach und wirkungsvoll! Vielen Dank.
Movie meint
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 ?
Florian meint
Du hast das Plugin falsch in das Template eingebaut und musst es „später“ einbinden.
Dominik meint
Super, jetzt klappts. Vielen Dank! 🙂
Dominik meint
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!
Florian meint
Du schreibst in die entsprechende Templatedatei (z.B. Single) das was du haben willst. Also z.B.
Der Beitrag wurde mal gelesen
Gruß
MaBoXer meint
Tolles Plugin! Habs gleich in meinen neuen Blog eingebaut und es funktioniert perfekt.
Vielen Dank!
Florian meint
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 gelesen
Gruß Florian