Hallo zusammen!
Weiß jemand, da ich das als zusätzliche Funktion einbauen möchte, wie ich den letzten Kommentar eines in der Liste auftauchenden Kommentators aus der Datenbakn hole?
Mit comment_content und so weiß ich schon. Aber er zeigt mir dann den ersten und nicht den letzten Kommentar an.
Danke im voraus!
Marcus
Beiträge von Marcuss
-
-
Hallo zusammen!
Ich habe es jetzt zwar soweit, das die Kommentatoren korrekt angezeigt werden, nur bei der Top-Kommentatorin zeigt er eine um 1 zu hohe Anzahl an.
Woran kann das jetzt wieder liegen?
Code
Alles anzeigenfunction top_commentators_jahr() { global $wpdb; $topcommentator_query="SELECT comment_author, comment_type, SUBSTRING_INDEX(comment_author_url, '/', 3) as top_commentator, COUNT(*) as top_num FROM $wpdb->comments WHERE comment_approved='1' AND comment_author_url NOT LIKE 'http://themenfreund.de%' AND comment_type NOT LIKE 'pingback' OR 'trackback' AND comment_date >= CURDATE() - INTERVAL 365 DAY GROUP BY top_commentator Order by top_num DESC, comment_date ASC LIMIT 3"; $topcommentator_result = $wpdb->get_results($topcommentator_query); if ( !empty($topcommentator_result) ) { echo '<ul>'; foreach ($topcommentator_result as $comment) : $co_aut = $comment->top_commentator; $co_aut = str_ireplace("http://", "", $co_aut); echo '<li><a href="'.$comment->top_commentator.'/" target="_blank">'.$comment->comment_author.'</a> ('.$comment->top_num.') </li>'; endforeach; echo '</ul>'; } } -
Keiner eine mögliche Idee?
Würde mich freuen, wenn man das irgendwie hinbekommen könnte! -
Das Thema hat sich erledigt!
In der Functions.php befinden sich - sind jetzt auskommentiert - die folgenden drei Code-Zeilen:
PHPfunction check_referrer() { if (!isset($_SERVER['HTTP_REFERER']) || $_SERVER['HTTP_REFERER'] == “”) { wp_die( __('Please enable referrers in your browser, or, if you\'re a spammer, bugger off!') ); } }
Wann und warum ich die da jetzt reingesetzt habe, kann ich leider nicht mehr nachvollziehen. Aber jetzt kommen die Pings wenigstens an. -
Hallo zusammen!
Vielleicht kann mir ja jemand helfen:
Bei mir im Blog habe ich das Problem, das eingehende Pings anscheinend nicht angezeigt werden.
Ich habe diese Funktion bei mir eingebaut / eingeschaltet. Und das Log zeigt auch an, das in einem anderen Blog von mir ein Artikel verlinkt wurde.
Nur im Backend und im Artikel sehe ich davon nichts...
Das Log:
ZitatAlles anzeigen
2011-04-23 20:49:23 Input: <?xml version="1.0"?>
<methodCall>
<methodName>pingback.ping</methodName>
<params>
<param><value><string>http://blog.....eu/and-again</string></value></param>
<param><value><string>http://themenfreund.de/die-lieben-ping-und-trackbacks</string></value></param>
</params></methodCall>
2011-04-23 20:49:23 Output: (PB) URL='http://themenfreund.de/die-lieben-ping-und-trackbacks' ID='2691' Found='url_to_postid()'
Es ist auch nichts im Spam gelandet. Und selbst das ausschalten aller Plugins ändert nichts.
Ich habe nach der Deaktivierung sämtlicher Plugins auf dem empfangenden Blog den Artikel auf dem sendenden Blog aktualisiert. Wieder gabs die obige Meldung im Log, aber nichts im Kommentatoren-Bereich.
Jemand eine Idee??
Gruß
Marcus
PS: Die Lösung mit Änderung des Timelimits in der Cron auf 1 und ähnliches habe ich auch schon alles durchgekaut.
EDIT: Frage mal anders gestellt: Woran kann es liegen - ausser an der comments.php, das dieses Verhalten gezeigt wird. Beim Wechsel des Themes klappt es nämlich perfekt. Aber auch die Nutzung von zwei Monate alten comments.php des aktuellen Themes bringen keine Besserung. -
Hallo zusammen!
Ich habe bei mir jetzt eine Funktion eingebaut, die die Top-Kommentatoren anzeigt.
Leider scheint da aber irgendwo ein Zählfehler zu stecken. Denn mein Top-Kommentator, bzw. in diesem Falle Kommentatorin hat keine 23 Kommentare abgegeben, sondern 'nur' 20.
Der Code sieht wie folgt aus:
PHP
Alles anzeigenfunction top_commentators_jahr() { global $wpdb; $topcommentator_query="SELECT comment_author, SUBSTRING_INDEX(comment_author_url, '/', 3) as top_commentator, COUNT(*) as top_num FROM $wpdb->comments WHERE comment_approved='1' AND comment_date >= CURDATE() - INTERVAL 365 DAY AND comment_author_url NOT LIKE 'http://themenfreund.de%' GROUP BY top_commentator Order by top_num DESC, comment_date ASC LIMIT 3"; $topcommentator_result = $wpdb->get_results($topcommentator_query); if ( !empty($topcommentator_result) ) { echo '<ul>'; foreach ($topcommentator_result as $comment) : $co_nam = $comment->comment_author; $co_aut = $comment->top_commentator; $co_aut = str_ireplace("http://", "", $co_aut); echo '<li><a href="'.$comment->top_commentator.'/" target="_blank">'.$co_nam.'</a> ('.$comment->top_num.') </li>'; endforeach; echo '</ul>'; } }
Und statt des richtigen Namens wird ein Pingback-Name angezeigt.
Wie kann ich das korrigieren?
Danke im voraus!
Marcus -
Hallo zusammen!
Ich lasse bei mir auf der Startseite einen zufälligen Artikel anzeigen, der bereits älter als 2 Monate ist.
Nun würde ich den gerne nicht als obersten Artikel anzeigen lassen, sondern etwas tiefer nach unten verschieben, so das er vielleicht unter dem 3. Artikel erscheint.
Gibts da ne Möglichkeit?? -
Hallo!
Um das mal zu verdeutlichen:
Wenn ich den folgenden Code anwende, verschwindet die div-Box wie gewünscht. Aber gibt es eine aktive Umfrage, fehlt der Hintergrund:
PHP
Alles anzeigen<?php if ( get_poll() ) : while ( get_poll() ) : the_poll(); ?> <?php if (function_exists('vote_poll') && !in_pollarchive()): ?> <li> <div class="widget"> <h3>Umfrage</h3> <ul> <li><?php get_poll();?></li> </ul> <?php display_polls_archive_link(); ?> </div><!--/widget--> </li> <?php endif; ?> <?php endwhile; else: ?> <?php endif; ?>
Zu sehen ist das - da das Hochladen der Fotos irgendwie nicht funktioniert - hier. Rechts wird mit deaktivierter Umfrage ordnungsgemäß nichts angezeigt. Links mit aktivierter Umfrage ist der Hintergrund grau. -
Hallo!
Ich meine folgendes:
Wenn eine Umfrage aktiv ist, soll sie ganz normal im FE zu sehen sein.
Ist keine Umfrage aktiv, soll der div-Container - der die WP-Polls-Geschichte enthält - nicht sichtbar sein.
Also sprich das übliche 'Zur Zeit keine Umfrage aktiv' soll ausgeblendet werden.
Aber die Idee mit der Widget-Class sollte ich mal probieren. -
Hallo zusammen!
Ich habe bei mir wp-polls installiert.
Nun möchte ich den div-Container, in dem ich die Umfragen anzeigen lasse, nur einblenden, wenn auch wirklich eine Umfrage aktiv ist.
Soweit habe ich es hinbekommen!
Der Code:
PHP
Alles anzeigen<?php if (function_exists('vote_poll') && !in_pollarchive()): ?> <div class="box2"> <li> <h3>Umfrage</h3> <ul> <li><?php get_poll();?></li> </ul> <?php display_polls_archive_link(); ?> </li> </div> <?php endif; ?>
Leider wird, wenn eine Umfrage aktiv ist, diese ohne Hintergrund (also dem div) angezeigt.
Wenn ich die div-Angaben versetze, verhunzt es mir die Ansicht.
Weiß jemand einen Rat?? -
Hallo zusammen!
Das Problem hat sich tatsächlich noch erledigt. Wie, das könnt ihr hier nachlesen.
Mich würde jetzt noch interessieren, ob und wie es möglich ist, den Post jetzt nicht als erstes anzuzeigen, sondern zwischen den 4 und 5 Artikel. Oder auch irgendwo anders zwischen den neueren Artikeln.
Hat da jemand eine Lösung?
Vielen Dank im voraus,
Marcus -
Hallo zusammen!
Was ich mit der ganzen Geschichte erreichen möchte, wird hier geschildert. Das ist die Entwicklerin des ganzen.
Und ich möchte halt die Trackbacks vom 1.1. bis zum aktuellen Datum zählen. Kann man natürlich auch das Datum 31.12.2011 angeben -
Nein, leider nicht wirklich!
-
Hallo paul-sims!
Die ganze Funktion sieht so aus (zählt die Trackbacks):
Codefunction anzahl_trackbacks2011() { global $wpdb; $t_count="SELECT COUNT(*) as comments FROM $wpdb->comments WHERE comment_approved='1' AND comment_type IN('trackback', 'pingback') AND comment_date BETWEEN '2011-01-01 00:00:00' AND 'date(Y-m-d h:i:s)'"; $tb_count = $wpdb->get_var($t_count); echo $tb_count; -
-
Das Problem hat sich soeben erledigt.
Im Popular-Posts-Plugin die Ausgabe in RSS-Feeds deaktiviert und es ist wieder alles Eitel Sonnenschein.
Gruß
Marcus -
Ich habe es jetzt soweit herausgefunden, das ein Plugin Schuld daran ist, das die Formatierung aufgehoben wird.
Da ich das Popular Posts und Similar Posts einsetze, empfiehlt der Plugin-Autor auch, das Post-Plugin Library einzusetzen.
Und das Teil versaut die Feed-Ausgabe.
Weiß da jemand, wie man das - ohne die Plugins zu entfernen - geradebiegen kann?
Danke im voraus!
Marcus -
Hallo zusammen!
Ich habe mit meinem Feed, der über Feedburner läuft, das Problem, das keine Absätze vorhanden sind. Er schreibt alles in einem Rutsch durch. Und das sowohl im Browser wie auch in verschickten Mails.
Bei Feeburner unter 'Optimieren' --> 'XML-Quelle' sind die Absätze aber vorhanden.
Ich habe schon ein Feed-Styler Plugin installiert und dort folgende Angaben eingesetzt:
Hat jemand einen Rat, wo ich evtl. Schrauben muss?
Danke im voraus!
Marcus -
Hallo nochmals!
Es sieht so aus, als ob ich mein Problem gelöst hätte.
Mein Code in der Function.php schaut nun so aus:
Codefunction filter_where( $where = '' ) { // only older (<) as 5 days $where .= " AND post_date < '" . date('Y-m-d', strtotime('-60 days')) . "'"; return $where; } add_filter( 'posts_where', 'filter_where' );
Der in der index.php so:
PHP
Alles anzeigen<?php if (function_exists('filter_where')) { filter_where(); } ?> <?php query_posts(array('orderby' => 'rand', 'showposts' => 1)); if (have_posts()) : while (have_posts()) : the_post(); ?> <h3> <a href="<?php the_permalink() ?>"><?php the_title(); ?></a> </h3> <div class="date-comments"> <p class="fl"><span class="comments"><?php comments_popup_link('Kommentar schreiben', '1 Kommentar', '% Kommentare'); ?></span><?php edit_post_link('Artikel bearbeiten!', ' | ', ''); ?></p> <p class="fr"><?php the_category(', ') ?></p> </div> <?php the_excerpt(); ?><span class="continue"><a title="<?php the_title(); ?>" href="<?php the_permalink() ?>">den vollständigen Artikel lesen…</a></span> geschrieben am <?php the_time('l'); ?>, den <?php the_time('d.m.Y'); ?> um <?php the_time('H:i'); ?> h <?php endwhile; ?> <?php endif; ?> <?php remove_filter('posts_where', 'filter_where'); ?>
EDIT: Man sollte sich wohl nie zu früh freuen.
Denn nun ist das Problem, das, klickt man die neuesten Artikel an, diese auf eine Fehlerseite laufen.
Und ich habe plötzlich statt 15 Seiten weit über 100 *grübel*
Wo läuft hier jetzt der Hase falsch? Kann mir das jemand erklären?
Vielen Dank -
Hallo zusammen!
Ich habe es mit Eurer Hilfe ja anscheinend tatsächlich hinbekommen, das der Code soweit zu funktionieren schein.
Er sieht jetzt wie folgt aus:
PHP
Alles anzeigen<?php if (function_exists('filter_where')) { filter_where(); } ?> <?php query_posts(array('orderby' => 'rand', 'showposts' => 1)); if (have_posts()) : while (have_posts()) : the_post(); ?> <h3> <a href="<?php the_permalink() ?>"><?php the_title(); ?></a> </h3> <div class="date-comments"> <p class="fl"><span class="comments"><?php comments_popup_link('Kommentar schreiben', '1 Kommentar', '% Kommentare'); ?></span><?php edit_post_link('Artikel bearbeiten!', ' | ', ''); ?></p> <p class="fr"><?php the_category(', ') ?></p> </div> <?php the_excerpt(); ?><span class="continue"><a title="<?php the_title(); ?>" href="<?php the_permalink() ?>">den vollständigen Artikel lesen…</a></span> geschrieben am <?php the_time('l'); ?>, den <?php the_time('d.m.Y'); ?> um <?php the_time('H:i'); ?> h <?php endwhile; ?> <?php endif; ?> <?php wp_reset_query(); ?>
Leider werden jetzt aber auch auf dem Rest der Seite nur Posts angezeigt, die älter als der in der Funktion angegebene Wert sind.
Wie kriege ich das jetzt wieder hingebogen, das auch die restlichen Artikel wieder angezeigt werden?
Danke für Eure Hilfe nochmals und im voraus.
Marcus